70 Manual
70 Manual
Installer
Kris Debolt
TABLE OF CONTENTS
Chapter 1: Introduction
About the Manual . . . . . . . . . . . . . . . . . . . . . . . .1.1
LightWave Overview . . . . . . . . . . . . . . . . . . . . . .1.1
Hardware Lock Installation . . . . . . . . . . . . . . . . .1.2
Parallel Port Lock (PC) . . . . . . . . . . . . . . . . . .1.2
Upgrading From a Prior Version . . . . . . . . . . . . . .1.2
Software Installation . . . . . . . . . . . . . . . . . . . . . .1.2
Registering Your Software . . . . . . . . . . . . . . . . . .1.3
Contact Information for Registration . . . . . . . .1.3
Licensing Your Software . . . . . . . . . . . . . . . . . .1.3
Running the Program . . . . . . . . . . . . . . . . . . . . . .1.4
Optimizing RAM Usage . . . . . . . . . . . . . . . . . . . .1.4
LightWave 3D Resources . . . . . . . . . . . . . . . . . . .1.4
Internet Resources . . . . . . . . . . . . . . . . . . . . . .1.4
NewTek Web and FTP Sites . . . . . . . . . . . . . . .1.4
Community . . . . . . . . . . . . . . . . . . . . . . . . . . .1.5
Technical Support . . . . . . . . . . . . . . . . . . . . . .1.5
Chapter 2: Conventions
Typographic Conventions . . . . . . . . . . . . . . . . . .2.1
Directory Structure . . . . . . . . . . . . . . . . . . . . .2.1
Typefaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.1
Keystroke Combinations . . . . . . . . . . . . . . . . . .2.1
Mouse Operations . . . . . . . . . . . . . . . . . . . . . .2.1
Attenti-cons . . . . . . . . . . . . . . . . . . . . . . . . . . .2.2
Key LightWave Terms & Concepts . . . . . . . . . . . .2.2
Working with the Interface . . . . . . . . . . . . . . . . .2.8
Chapter 4: Plug-ins
Add Plug-ins Command . . . . . . . . . . . . . . . . . . . .4.1
Edit Plug-ins Command (Modeler) . . . . . . . . . . .4.3
File Grouping Method . . . . . . . . . . . . . . . . . . .4.4
Plug-ins Configuration File . . . . . . . . . . . . . . . . .4.4
Legacy Plug-ins . . . . . . . . . . . . . . . . . . . . . . . . . .4.4
Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6.58
LightWave VRML Implementation . . . . . . . . .6.59
Performance Notes . . . . . . . . . . . . . . . . . . . .6.60
Scene Tags . . . . . . . . . . . . . . . . . . . . . . . . . . .6.60
Spreadsheet Scene Manager . . . . . . . . . . . . . . .6.62
Workspaces . . . . . . . . . . . . . . . . . . . . . . . . . .6.62
Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6.63
Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6.64
Mouse Functions . . . . . . . . . . . . . . . . . . . . . .6.65
The Item List . . . . . . . . . . . . . . . . . . . . . . . . .6.65
The Property Cells . . . . . . . . . . . . . . . . . . . . .6.67
Editing Cells . . . . . . . . . . . . . . . . . . . . . . . . . .6.67
Envelopes . . . . . . . . . . . . . . . . . . . . . . . . . . . .6.69
Timeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6.69
Column Sorting . . . . . . . . . . . . . . . . . . . . . . .6.70
Chapter 8: Keyframing
The Frame Slider . . . . . . . . . . . . . . . . . . . . . . . . .8.2
Navigating the Scene . . . . . . . . . . . . . . . . . . . . .8.2
Keyboard Shortcuts . . . . . . . . . . . . . . . . . . . . .8.2
Going to a Specific Frame . . . . . . . . . . . . . . . .8.2
Playing the Scene . . . . . . . . . . . . . . . . . . . . . . . .8.3
Creating Keyframes . . . . . . . . . . . . . . . . . . . . . . .8.3
Creating and Modifying Keys Automatically . . .8.4
Editing Motion Paths Directly in a Viewport . .8.5
Deleting Keyframes . . . . . . . . . . . . . . . . . . . . . . .8.5
Delete Motion Key Generic Plug-in . . . . . . . . .8.5
Delete Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . .8.7
Threshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8.7
Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8.8
Saving and Loading Motion Files . . . . . . . . . . . . .8.8
Creating a Preview Animation . . . . . . . . . . . . . . .8.8
Preview Options . . . . . . . . . . . . . . . . . . . . . . . .8.9
Undo/Redo Changes . . . . . . . . . . . . . . . . . . . . .8.10
The Graph Editor . . . . . . . . . . . . . . . . . . . . . . .8.10
Frame Range . . . . . . . . . . . . . . . . . . . . . . . . .8.12
The Time Slider . . . . . . . . . . . . . . . . . . . . . . .8.13
Panel Layout Adjustments . . . . . . . . . . . . . . .8.14
Using the Channel Bin . . . . . . . . . . . . . . . . . .8.14
The Channels Pop-up . . . . . . . . . . . . . . . . . . .8.15
Editing Curves . . . . . . . . . . . . . . . . . . . . . . . .8.16
Edit Mode Selection . . . . . . . . . . . . . . . . . . . .8.17
Copying Keys . . . . . . . . . . . . . . . . . . . . . . . . .8.20
Editing Color Channels . . . . . . . . . . . . . . . . . .8.21
Adjusting the Curve Edit Window . . . . . . . . . .8.22
12 TA B L E OF CONTENTS
Posterize . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14.46
Palette Reduce . . . . . . . . . . . . . . . . . . . . . . . .14.46
Film Grain . . . . . . . . . . . . . . . . . . . . . . . . . . . .14.46
Flip Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . .14.46
Color Filters . . . . . . . . . . . . . . . . . . . . . . . . .14.47
Contrast . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14.47
MidPoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14.47
Gamma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14.47
Luminance . . . . . . . . . . . . . . . . . . . . . . . . . . . .14.48
Brightness . . . . . . . . . . . . . . . . . . . . . . . . . . . .14.48
Adjust Color . . . . . . . . . . . . . . . . . . . . . . . . . .14.48
Matte Filters . . . . . . . . . . . . . . . . . . . . . . . .14.48
The Affect Tab . . . . . . . . . . . . . . . . . . . . . . .14.49
Affected Areas . . . . . . . . . . . . . . . . . . . . . . . . .14.49
Preset Shelf . . . . . . . . . . . . . . . . . . . . . . . . . . .14.49
Enable/Disable . . . . . . . . . . . . . . . . . . . . . . . . .14.49
Preview Window . . . . . . . . . . . . . . . . . . . . . .14.50
Glossiness . . . . . . . . . . . . . . . . . . . . . . . . . . .31.11
Reflection . . . . . . . . . . . . . . . . . . . . . . . . . . .31.11
Transparency . . . . . . . . . . . . . . . . . . . . . . . .31.11
Refraction Chart Index . . . . . . . . . . . . . . . . . .31.12
Translucency . . . . . . . . . . . . . . . . . . . . . . . . .31.13
Bump Map . . . . . . . . . . . . . . . . . . . . . . . . . .31.13
Surface Smoothing . . . . . . . . . . . . . . . . . . . .31.14
Smooth Threshold . . . . . . . . . . . . . . . . . . . . . .31.14
Sharing Points . . . . . . . . . . . . . . . . . . . . . . . . .31.15
Using Separation . . . . . . . . . . . . . . . . . . . . . . .31.15
Double Sided . . . . . . . . . . . . . . . . . . . . . . . .31.16
Comment . . . . . . . . . . . . . . . . . . . . . . . . . . .31.16
Numerical Settings . . . . . . . . . . . . . . . . . . . . .31.16
Envelopes and Textures . . . . . . . . . . . . . . . . . .31.17
Texture Editor . . . . . . . . . . . . . . . . . . . . . . . . .31.17
Texture Layers . . . . . . . . . . . . . . . . . . . . . . .31.19
Copy and Paste . . . . . . . . . . . . . . . . . . . . . .31.19
Layer Order . . . . . . . . . . . . . . . . . . . . . . . . .31.19
Blending Layers . . . . . . . . . . . . . . . . . . . . . .31.20
Layer Type: Image Mapping . . . . . . . . . . . . . . .31.22
Image Map Projection . . . . . . . . . . . . . . . . .31.22
Planar Projection . . . . . . . . . . . . . . . . . . . . . . .31.23
Cylindrical Projection . . . . . . . . . . . . . . . . . . .31.23
Spherical Projection . . . . . . . . . . . . . . . . . . . .31.24
Cubic Projection . . . . . . . . . . . . . . . . . . . . . . .31.24
Front Projection . . . . . . . . . . . . . . . . . . . . . .31.25
Fixed Projection . . . . . . . . . . . . . . . . . . . . . . .31.28
Image Properties . . . . . . . . . . . . . . . . . . . . .31.30
Texture Placement . . . . . . . . . . . . . . . . . . . .31.33
Surface Size, Position, and Rotation . . . . . . . . .31.33
Falloff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31.34
Using the Reference Object . . . . . . . . . . . . . .31.35
Freezing Reference Object/Camera . . . . . . . . .31.35
World Coordinates . . . . . . . . . . . . . . . . . . . . .31.35
Texture Guide Tool . . . . . . . . . . . . . . . . . . . . . .31.36
Layer Type: Procedural Texture . . . . . . . . . . . . .31.37
Texture Color and Texture Value . . . . . . . . . .31.38
Texture Scale . . . . . . . . . . . . . . . . . . . . . . . .31.38
L I G H T WAV E 3 D 7 39
Appendix
Macintosh Information . . . . . . . . . . . . . . . . . .App.1
Right Mouse Button Action . . . . . . . . . . . . .App.1
Memory Allocation . . . . . . . . . . . . . . . . . . .App.1
Command Line Files . . . . . . . . . . . . . . . . . .App.1
Your Display . . . . . . . . . . . . . . . . . . . . . . . . . .App.1
Filenames and Extensions . . . . . . . . . . . . . . . .App.2
Foreign Object Support . . . . . . . . . . . . . . . . .App.2
Imported Formats . . . . . . . . . . . . . . . . . . . .App.2
Exported Formats . . . . . . . . . . . . . . . . . . . .App.3
Image and Animation Types . . . . . . . . . . . . . . .App.4
Images and Memory . . . . . . . . . . . . . . . . . .App.4
High Dynamic Range Images (HDRI) . . . . . .App.5
Import/Export . . . . . . . . . . . . . . . . . . . . . . . .App.6
Internal Compositing . . . . . . . . . . . . . . . . . . .App.7
Preview Compression Codec . . . . . . . . . . . . . .App.7
Configuration Files . . . . . . . . . . . . . . . . . . . . .App.7
Custom Configuration Files . . . . . . . . . . . . .App.7
Layout Startup Command . . . . . . . . . . . . . .App.8
Customizing Layout Viewport Navigation . .App.8
Customizing Camera Presets . . . . . . . . . . . .App.8
LightWave Limits . . . . . . . . . . . . . . . . . . . . . . .App.8
Measurement Units . . . . . . . . . . . . . . . . . . . .App.9
Do the Math . . . . . . . . . . . . . . . . . . . . . . . . . .App.9
Math Functions . . . . . . . . . . . . . . . . . . . . .App.10
Functions . . . . . . . . . . . . . . . . . . . . . . . . . .App.10
Constants . . . . . . . . . . . . . . . . . . . . . . . . .App.10
Other . . . . . . . . . . . . . . . . . . . . . . . . . . . . .App.12
Index
chapter1
Introduction
L I G H T WAV E 3 D 7 1.1
C hapter 1:
Introduction
Congratulations on your acquisition of LightWave 3D, a truly powerful
piece of software. This program represents over 12 years of research and
development from a team of insanely dedicated programmers, artists
and visionaries.
LIGHTWAVE OVERVIEW
With LightWave, you are the producer, art director, cinematographer
and director, all rolled into one. Your actors consist of objects that you
build in Modeler or import from another program. You place lights to
illuminate them, assign surface colors and values to clothe them, and
1.2 CHAPTER ONE: INTRODUCTION
then choreograph their movement to animate them. Once you have your
actors in place, a camera records all of their movements, creating images
of their movements that you can compile into animations.
LightWave can create animations and still images for virtually any
use, from tiny 16 x 16 pixel Web graphics, all the way up to a resolution
of 16,000 x 16,000 pixels, and anywhere in between. A multitude of preset
resolutions are also provided, including industry standard D1 and D2
(NTSC and PAL) video resolutions.
You create animations by generating a single frame at a time, then
recording each frame to some type of playback device, like videotape or
a hard-disk playback device, or even film. Frames can also be saved in
computer animation format, like AVI.
WARNING
We strongly recommend you backup your system before you install
LightWave 3D.
SOFTWARE INSTALLATION
To install LightWave 3D on your system, insert the LightWave 3D CD-
ROM in the appropriate drive. On the PC, run SETUP.EXE and on the Mac,
run the LightWave installer program.
L I G H T WAV E 3 D 7 1.3
Mail:
NewTek Inc.
Attn: Customer Service
5131 Beckwith Blvd.
San Antonio, TX 78249
NOTE
Make sure you save LICENSE.KEY as a plain text file, not RTF or other file
format.
LIGHTWAVE 3D RESOURCES
Internet Resources
A LightWave-specific newsgroup and mailing list are maintained on
the Internet. Here you can find new users asking questions about using
LightWave and experts answering them. Also, many topics related to
computer animation are discussed in these groups, such as the
performance of various accelerators, CPU speeds, animation recording
devices, and many more. The newsgroup’s Internet address is:
comp.graphics.apps.lightwave.
Internet mailing list information can be found at www.tv3d.com.
Community
A unique attribute of LightWave 3D is the LightWave community. It is
rare to find such a fun-loving bunch of hooligans that are so talented and
yet so willing to share their secrets, ideas, and creations. Make certain
you also take a look into the available resources such as local users
groups, training videos (www.DesktopImages.com), and NewTek specific
magazines (www.keyframemag.com and www.newtekpro.com).
Technical Support
The best source for help with installing or configuring software or
hardware is the retailer from whom you purchased your NewTek
product. While we have made every effort to keep your software and
hardware trouble-free and easy to use, you may occasionally need help
right from the source. If you have problems with NewTek supplied
hardware or LightWave doesn’t seem to be functioning as it should,
please contact technical support in one of the following ways:
• By email: [email protected]
• By fax: (210) 370-8030
• By telephone: (210) 341-8444. Technicians are available to answer
questions from 8:00 a.m. to 8:00 p.m. Central Time, Monday through
Thursday, and Friday from 8:00 a.m. to 5:30 p.m. Central Time.
Please supply in your communication or have the following
information handy when calling:
• Your computer’s operating system and version
• The version of LightWave you are using
• The amount of RAM in your computer
• Any relevant specifics about your system (display card type, memory
managers, accelerator type, etc.)
• Your product serial number
NOTE
Your product must be registered before you can receive support.
1.6 CHAPTER ONE: INTRODUCTION
chapter2
Conventions
L I G H T WAV E 3 D 7 2.1
C hapter 2:
Conventions
TYPOGRAPHIC CONVENTIONS
The following conventions will be used throughout this manual.
Directory Structure
Except for a few system files, all of the software will be installed in a
single subdirectory on the drive you specified during the installation
process. Therefore, subdirectories referred to in this documentation are
located in this main subdirectory. (For example, if the discussion refers
to the Images drawer, the actual path might be C:\LIGHTWAVE\IMAGES.)
Typefaces
ALL CAPS Computer keys, directories, device names (e.g., ENTER,
C:\LIGHTWAVE\OBJECTS, CTRL+P, etc.).
Bold Names of interface menus, fields, buttons, etc. are set in
bold type.
Keystroke Combinations
KEY1 + KEY2 Simultaneous keystrokes. Hold the first key and press the
second key.
Mouse Operations
LMB Left mouse button
MMB Middle mouse button (if applicable)
RMB Right mouse button
Selecting Single-clicking an element with the LMB so that it
becomes active or selected.
Deselecting Single-clicking an element with the LMB so that it
becomes inactive or unselected.
Activating Selecting an option by clicking on its toggle button.
2.2 CHAPTER TWO: CONVENTIONS
Attenti-cons
The warning symbol will highlight a discussion that
warns the user about something. You should pay special
attention to text marked with this symbol.
C hapter 3:
Common Interface Items
This chapter covers common interface items as well as panels and
dialogs that are shared between modules, panels, plug-ins, and so on.
THE HUB
The Hub is essentially a message board that LightWave modules use
to synchronize information. It contains entries like synced object
filenames and configuration memory blocks. When the same object is
loaded into both Layout and Modeler, changes made to the object are
automatically synchronized. If the object appears in Layout, but not
Modeler, you can quickly load it into Modeler by selecting it from the
object pop-up menu—initially, the name will be ghosted.
NOTE
If you have modified an object in Modeler (without saving) and then
load the object file into Layout, the modified version will appear—since
it is synced—not the data from the object file.
NOTE
The Launch Processes menu will be empty initially. However, once you
run Layout or Modeler, entries will be added.
Under Windows, the Hub icon will appear in the System tray. You can
right-click on it to access a small menu:
Open Open Hub window
Close Close Hub window
Launch Launch applications that the Hub knows about
Properties Set options to quit the Hub after you exit LightWave
Exit Close the Hub program
Properties
You can set the Automatic Shutdown to various time intervals, after
which the Hub will shutdown when there is no activity. Note that even
when Layout and Modeler are idle, there is still some minimal
communication activity which will keep the Hub from shutting down.
When Layout or Modeler are running, the Hub will periodically
request that the applications write their recent changes to temporary
files. The frequency of this Automatic Save is set by the Hub option. The
temporary files are located in a LWHUB directory inside your normal
L I G H T WAV E 3 D 7 3.3
system temporary directory. The files have names that include the base
name of the object with a numeric prefix. So, if you are editing an object
called MYOBJECT.LWO and you crash after an editing session, you can still
find an auto-saved version of your edits in the temporary directory with
a name like 0012.MYOBJECT.LWO.
NOTE
If you would like to run Layout and/or Modeler independently, append
-0 to the command (e.g., Lightwav.exe -0.That’s a zero, by the way.) You
will have to load and save objects manually.
If you drag your mouse pointer over the image, information about the
pixel beneath the pointer will appear in the titlebar. The first set of
values is the X and Y position. This is followed by RGBA color
information where 100% equals 255 for non-floating-point images. For
floating-point images, 100% equals 1.
You can adjust the size of the window by dragging the lower-right
corner. Anytime the entire image is not fully visible in the viewer
window, hold the ALT key to scroll around.
Image Controls
L I G H T WAV E 3 D 7 3.5
NOTE
The Blend slider will have no effect when using the Alpha blend
mode.
If you are displaying a high dynamic range image, you can access
special parameters if you activate the Exposure option. This allows you
to adjust HDR data much like the HDRExpose image filter, but in real-
time.
The White Point is the input intensity considered to be the hottest
white. Anything above this will be the same white in the output. The
Black Point, expressed as a percentage of the nominal black point
(1/255), is the darkest non-black pixel level in the input image that will
be preserved. Anything darker will come out black. This control is
overridden by the Auto option, which uses the image data to compute a
black point.
NOTE
When the Image Viewer is the active window, pressing the P key will
display/hide the Control panel.
3.6 C H A P T E R T H R E E : C O M M O N I N T E R FA C E I T E M S
File Saving
If you are viewing a high-dynamic-range image, and you use the
previously described exposure controls to adjust the appearance of the
24-bit display, choosing a file format from the Save Exposed sub-menu
saves the adjusted image as a 24/32-bit image. The normal saveRGBA
sub-menu preserves all the color information without any adjustments.
The full precision of the image (i.e., 24/32-bit, floating-point) is saved (up
to the capabilities of the file format).
The Save Resampled submenu allows you to save a 24/32-bit scaled
version of the image. You can set the Width and Height independently or
if Lock Aspect is checked, changing either setting automatically adjusts
the other to maintain the same image aspect ratio.
Magnified image
VIPER
The Draft Mode option will use a lower resolution for faster updates.
Click the Render button to force a refresh. You can press the ESC key to
abort the render. Use the Preview Options pop-up menu to access
display options—these will vary depending on what feature is used in
the window. You can select from various window sizes using the Preview
Size pop-up menu.
For certain features, like surfaces, volumetric lights and HyperVoxels,
clicking Add Preset (or double-clicking the image) will add it to the
Preset Shelf, discussed next.
The Preview pop-up menu operates in a manner similar to its cousin
on the main interface. You can use this function to preview things like
animated procedural textures, volumetric light textures, HyperVoxels,
and so on. Note that objects will not move like they would with a
standard preview animation and pressing the ESC key will abort the
preview creation process. (See Chapter 8 for more information on
making preview animations.) The playback controls will appear when a
preview animation is available. Choose Free Preview from the Preview
pop-up menu and the controls will disappear.
3.10 C H A P T E R T H R E E : C O M M O N I N T E R FA C E I T E M S
Surface Previews
When LightWave renders an image, it generates much more
information than the red, green, and blue components of the pixels you
see in your images. The color components represent only a small
fraction of the data that is generated during a render. LightWave also
generates, alpha (transparency), z-buffer (depth), luminosity, diffuse,
specular, mirror, shading, shadow, geometry, object, diffuse shading,
specular shading, and even custom surface buffers.
As a result, VIPER can determine not only what color a pixel is, but
also how far back on the z axis a pixel is, what surface it relates to, and
so on. By manipulating this extra data, VIPER can change a surface color
or specularity setting and show the result amongst the rest of the scene
without requiring another full frame render. This will even show the
appropriate shading, scene lighting changes, as well as backdrop color
changes.
NOTE
Because VIPER requires rendering data, it is available for surface
samples only when the Surface Editor is launched from Layout.
VIPER uses information from the last rendered image when displaying
certain things. This includes surface previews and when Use Z-Buffer in
Preview is active on the HyperVoxels panel. However, this information is
normally dumped after a render. To preserve it, the Enable VIPER option
(Render Options) needs to be activated before you render a frame.
L I G H T WAV E 3 D 7 3.11
NOTE
If needed, you will be asked if you want LightWave to activate the
Enable VIPER option for you. However, when rendering, you should
disable this option, since it increases rendering time and memory
consumption.
Right-click menu
Choose Set Name to open a dialog box where you can set a Name to
be used for the sample, it appears underneath the sample image. You
can add a longer string of text in the Description field, which appears at
the bottom of the panel when your mousepointer is over a preview.
LSCRIPT
LScript is a high-level wrapper for the LightWave plug-in Application
Programming Interface (API). It encapsulates the complex underpinnings
of the API away from the plug- in developer, allowing them to
concentrate more fully on the task to be accomplished. LScript also
provides added features not available in the plug-in API, making plug-in
development faster.
Because LScript has its roots in the C language, the transition
between scripting and native-language (binary) plug-in development is
eased a great deal. Scripts written in LScript can often be ported into C
with far less effort. This makes it possible to use LScript as a rapid
prototyping tool for plug-in development.
Nearly all of the LightWave plug-in architectures have scripting
capabilities through LScript.
LScripts can be installed in the same way plug-ins are. The LScripts
then become commands that can be added to menus or assigned to
keyboard shortcuts.
LScript also provides a run-time system, allowing scripts to be
compiled into an encrypted binary form that prevents modification or
reverse engineering. Facilities for timed or counted execution are also
provided by the run-time system.
Most important, LScript is a virtual machine system. Scripts written
on one platform should work directly and immediately on any other
platform supported by LightWave. This differs from traditional plug-in
development in that each platform must have its own compiler, and each
plug-in must be compiled and maintained on that platform. LScripts are
platform independent.
See the on-line documentation for more information.
Yes and No
Whenever a requester asks you a Yes or No question, pressing the
ENTER key is the same as selecting Yes, while pressing the ESC key is the
same as selecting No. Likewise, an Error, Warning or Reminder requester
with a choice of Continue or Cancel can use ESC for Cancel and ENTER for
Continue. For those requesters with only a Continue, pressing either ESC
or ENTER will close the panel.
Color Selection
Where you must select a certain color (e.g., surface color), there will
be a three-number color component display and a color swatch box. You
can also drag your mouse on each color component to change its value.
By default, the standard RGB color space is displayed; however, if you
right-click on the display, you may also use the Hue, Saturation, and
Value (HSV) color space, if that is more familiar to you. HSV is based on
the artist concepts of tint, shade, and tone. There are 16.7 million
possible color combinations.
NOTE
Unlike RGB, HSV color components are not independent. For
example, if Value is 0 (i.e., brightness is 0), you will not be able to
change Hue (color) nor Saturation. Similarly, if Saturation is 0, you will
not be able to change Hue. Moreover, reducing one component may
cause another component to decrease.
NOTE
LightWave will attempt to display the selected color to the best of
your display’s capabilities.This will generally result in an approximation
of the color if you are using less than a 24-bit display mode.
L I G H T WAV E 3 D 7 3.15
Color Pickers
Clicking the color swatch box will open a color selection requester
that is standard for your specific platform or the built-in color picker.
Left: List is collapsed for both entries. Right: Light entry is uncollapsed
Reorganizing Lists
In some list windows (e.g., menu configuration), you can reorganize
entries by just dragging them in the window. Place your pointer over the
entry and drag it up or down. You will see a thin line appear as you drag.
This is the insert point. Releasing the mouse button will drop the entry
here.
Now, if your pointer is at a position where the dropped item could be,
say, a sub-item of an entry, the same level as the entry, or even the same
level as the next entry, you will see the line change its length as you
drag. The position of the left end of the line determines the level of the
drop.
C hapter 4:
Plug-ins
Plug-ins can greatly increase the available features in LightWave 3D. A
single plug-in file can contain multiple commands. Some plug-in
commands are tools, and as such, they can be active or inactive just like
a standard built-in tool. All of the plug-ins that come with LightWave
should already be installed and available. However, you may sometimes
need to re-add one because of an update or just to add a new third-party
plug-in.
Generally, plug-in files are stored in various subdirectories in the
LIGHTWAVE6_5\PROGRAMS\PLUGINS subdirectory. Some plug-ins work only in
Layout or Modeler, while others work in both. You can even install an
LScript as a plug-in! It becomes a command that can be used like any
other command and assigned to a menu or keyboard shortcut.
NOTE
Re-adding a plug-in that is already added will not do any harm.
NOTE
A single plug-in file can have many functions, some internal and not
directly accessible by the user.Thus, when you add one, it may report
back that it has added more than one plug-in.This is normal.
NOTE
You can get immediate access to the Scan Directory feature on the
Edit Plug-ins panel, discussed next.
L I G H T WAV E 3 D 7 4.3
NOTE
You can also add plug-ins on this panel.The Add Plug-ins and Scan
Directory buttons operate the same as they do for the Add Plug-ins
panel, discussed earlier.
4.4 CHAPTER FOUR: PLUG-INS
LEGACY PLUG-INS
Some plug-ins are included in the LEGACY_PLUGINS folder for
transitional purposes. These should be used only when needed for the
support of older scene files. Generally, the functionality of these tools
has been integrated into the new system and, as such, the LightWave
native tools should be used for any new content creation.
chapter5
Customizing Your Interface
L I G H T WAV E 3 D 7 5.1
C hapter 5:
Customizing Your
Interface
WARNING
We strongly suggest that you keep the default menu organization
intact. Otherwise, technical support and using the documentation may
become difficult. A better solution is to create a new menu tab and/or
groups and place your frequently used tools in them.
NOTE
Some custom menu configurations have been included on the CD.Try
them.You might like ‘em!
LightWave menus are customizable. You can add, remove, group, and
reorganize commands.
Choose Layout > Interface > Edit Menu Layout or Modeler >
Interface > Edit Menu Layout to open the Configure Menus panel. In the
(left) Command window, a list of available commands will appear. These
will be grouped by type.
In the (right) Menus window, several main sections have sub-items,
which are indented to show the hierarchical relationships. Top Menu
Group contains the items that are always visible no matter which tab is
selected. Main Menu items are the main tabs and related buttons for the
main interface toolbar. Bottom Edge is for Modeler only and relates to
the controls along the bottom edge of the screen. Left, Middle, and Right
Mouse Button Menu (when available) are the menus that appear when
the SHIFT + CTRL keys are held down along with the corresponding mouse
button. There may be other menu sections defined.
5.2 C H A P T E R F I V E : C U S T O M I Z I N G Y O U R I N T E R FA C E
DIVIDER LINE
Clicking the New Divider button will add a dashed line below the
selected menu item. This is displayed as a dividing line between menu
items when it appears in a pop-up menu group.
Left: Divider line added. Right: Divider line visible in pop-up menu
5.4 C H A P T E R F I V E : C U S T O M I Z I N G Y O U R I N T E R FA C E
NOTE
The command name is not always what is displayed on a button. If the
command uses a shorter name, the button may use the exact or a
similar name. However, the button name can be very different in some
cases. Of course, you can always rename the displayed name.
ADDING COMMANDS
To add a command, select it in the (left) Command window and select
the target position in the (right) Menus window. Then click the Add
button. The command will be added under the selected target—inside
the group if a group was selected. Alternatively, you may drag the
command to the Menus window.
REORGANIZING MENUS
See Chapter 3, “Reorganizing Lists” for information on how to
reorganize entries.
HINT
To place the group/command at a specific point in a group, make sure
the group is uncollapsed before you begin dragging.
HINT
If you know the keyboard shortcut, but want to find the
corresponding menu location, use the Find function on the Configure
Keys panel to determine the command name.Then, use the Find
function on the Configure Menus panel to see where it is assigned.
WINDOW POP-UP
The Window pop-up menu lets you select different menus to edit
(e.g., Graph Editor), if available.
Menu presets
L I G H T WAV E 3 D 7 5.7
NOTE
In Modeler, you can use Modeler > Preferences > Revert to
Startup Preferences to restore your initial settings; however, any
changes since you first ran the application will not be reflected.
KEYBOARD SHORTCUTS
Keyboard shortcuts are displayed on the right side of buttons, if
applicable. Keystrokes that need the SHIFT key are displayed in uppercase
if they are letters. (e.g., A) Unshifted keystrokes are displayed in
lowercase. (e.g., a) For example, M is SHIFT + M and & would be SHIFT + 7.
This manual, however, always explicitly indicates when the SHIFT key
should be used.
WARNING
You need to be aware of the state of your CAPS LOCK. If this is active,
it can affect upper and lowercase keyboard shortcuts.
Panel-Specific Shortcuts
Some panels have their own special keyboard shortcuts. To use them,
you must have that panel active. (Click on it, if it isn’t already active.) If
the panel is not active and that shortcut has another meaning for
LightWave in general, the general function will be run. Moreover, if the
panel is active, but doesn’t use the keyboard shortcut, it will be passed
to the main interface.
NOTE
Keyboard shortcuts can be assigned to only one command. Assigning a
command that is already assigned to a different key will assign it to the
new key, but remove it from the old one.
NOTE
In Modeler, you can use Modeler > Preferences > Revert to
Startup Preferences to restore your initial settings; however, any
changes since you first ran the application will not be reflected.
Any available preset key mapping sets can be chosen from the
Presets pop-up menu. The Window pop-up menu lets you select different
menus to edit (e.g., Graph Editor), if available.
GENERIC PLUG-INS
Generic Layout plug-ins (Scene > Utilities: Generics) will appear in
the Plug-in commands group. Thus, they can be added to menus or
mapped to keyboard shortcuts.
C hapter 6:
Layout: General
Functions
LightWave’s Layout has been designed to provide the most efficient
interface possible for your 3-D animation work. By default, there is a
single large viewport, but you can display multiple viewports if you
desire. A viewport provides you with visual feedback about the virtual
world you are creating. How well this corresponds to what the final
output will look like is completely configurable by the user. This can
range from bounding box stand-ins to wireframe representations, all the
way to textured and solid-shaded displays. How you view your creations
will vary depending on their complexity, your machine’s capabilities, and
other factors.
NOTE
An option on the Preference panel’s General Options tab (Display >
Options: General Options) lets you place the vertical menu on the
right or left side of the interface, or hide it altogether.
NOTE
You have absolute control over these menus. See Chapter 5 for
information on how to customize your menus.
L I G H T WAV E 3 D 7 6.3
MODELER ACCESS
If the Hub is running (and connected), a Modeler button will appear
in the upper-right corner of the Layout interface.
It is common to see objects that have a front and back (e.g., vehicles,
spaceships and animals) facing in the positive Z direction. As you will
understand later, this orientation works best with LightWave’s motion
features.
The center of the world, called the Origin, is defined by the XYZ
coordinates 0, 0, 0 and represents the intersection of all three axes. Any
position in LightWave’s virtual world can be defined by positive and
negative XYZ values. The cow is standing right over the Origin. (The Size
and Stretch tools also use XYZ (scaling) values along those axes.)
However, once you move or rotate the object, this is no longer the case.
LightWave provides functions that let you move and rotate items using
global or local axes. Now, most of the time you’ll use World, but
sometimes using local will be invaluable.
To illustrate the difference, let’s say you are standing in the middle of
a one-room house facing the front door. If you held your right arm
straight out, it would point to the right side of the house, and your left
arm would point to the left side of the house.
Now, let’s say you turned 90 degrees clockwise. (You’d be facing the
right side of the house.) If I told you to point your right arm towards the
house’s right side (global axes), you’d move it straight out in front of
you. However, if I told you to point your right arm to your right (local
axes), you would point to the back of the house. Get it? Now sit down at
your PC before someone sees you.
NOTE
The orthogonal and the Perspective views are dependent on each
other. Changing the position of one will affect the other.
NOTE
Since you are changing your POV, the scene items will appear to move
in the opposite direction of your mouse movements.
NOTE
ALT is the same as SHIFT + ALT (i.e., Move) when used in an orthogonal
view.
Zoom All views: Zooms in and out when you drag left and right.
(You can also use the < and > keys.)
Keyboard shortcut: CTRL + ALT
Taking Aim
Both the orthogonal and perspective views are based on a single
aimpoint. In other words, you are always looking at the same point in 3D
space no matter which of the views you use (except Light and Camera
view, of course.) It is also the center of the view rotation. That’s why, if
you move around in the Back view, it also affects the other views, like
Perspective.
L I G H T WAV E 3 D 7 6.9
NOTE
If you are using multiple viewports, each has its own independent set
of position, rotation, and zoom values.
Resetting Views
Also on the pop-up menu, above, are options to reset a view’s
position (Move), rotation, and zoom to default values.
NOTE
Also see the display options and Schematic View Tool generic plug-in,
discussed later.
THE GRID
A grid of squares—cleverly known as the grid—is visible in any of the
orthogonal views, as well as the Perspective view. The grid serves as a
visual reference when you move items around, but it will never render in
a final image (no matter how much you wish it to). The grid lines are
darker every tenth square for visual reference. The Origin is located at
the center of the grid.
You can find the current size of the grid squares in the information
field at the very lower-left corner of the screen. The size of each grid
square is adjustable as is its overall size on the Display Options tab of
the Preferences panel (Display > Options: Display Options).
NOTE
The size of the lights/cameras do not affect their functionality.
5m grid
6.14 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
500m grid
Once you manually set the Grid Square Size or save and reload a
scene, the automatic sizing adjustment is deactivated. As such, you may
want to load the smaller objects first and then manually change the Grid
Square Size to the same value. Then, load the larger objects.
CONTENT DIRECTORY
Before we get into how you create a LightWave scene, you need to
understand an important concept called the Content Directory. LightWave
defaults to looking in certain directories under the Content Directory
when you load scenes, objects, surfaces, images, envelopes, motions,
previews, etc. This is usually the directory you installed the LightWave
software into. The Content Directory is LightWave’s master directory;
LightWave expects to find all of the appropriate subdirectories within
this master directory.
The Content Directory allows you to create a truly portable
LightWave scene, including all object and image files. It essentially acts
as a pseudo root directory. By saving all your object and image files in
subdirectories below the Content Directory, your LightWave scene and
related files can be moved from drive to drive, from system to system,
and even platform to platform, and still load properly.
Portability is important because LightWave scenes are often rendered
on multiple machines or shared for education or fun.
WARNING
If you use LightWave in a network environment, it is imperative that
you use the Content Directory correctly.
Relative Links
When you save a scene, LightWave tries to save only a relative link to
image and object files. So an object stored on your hard drive as
C:\MYPROJECTS\STRETCHPRINCESS\OBJECTS\JO.LWO where the Content
Directory was C:\MYPROJECTS\STRETCHPRINCESS, would be saved in the
scene file as only OBJECTS\STRETCHPRINCESS.LWO.
L I G H T WAV E 3 D 7 6.15
NOTE
If you load a scene where an object/image file cannot be found, a file
dialog will appear, letting you manually locate the file.
NOTE
The generic plug-in Content Manager, discussed later in the chapter,
can be used to collect a scene’s supporting files and ensure correct
compliance with your content directory.
To save a scene:
1 Make sure your Content Directory is properly set.
2 Choose File > Save > Save Scene to save a scene. Save Scene As lets
you save the current scene using a different name.
NOTE
Remember that this operation does not save any loaded object files.
That must be done as a separate step.
Saving a Copy
Choosing File > Save > Save Scene Copy will let you save a copy of
the current scene using a different name, without affecting the current
scene.
Scene Statistics
Pressing the w key will display the Scene Statistics panel, which
provides various information about the current scene.
Scene Stats
6.18 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
To select an item:
There are several ways to select an item in Layout:
• Click on the item in a viewport;
• Click on the item’s name in the Scene Editor panel (Scene Editor); or
• Manually select the edit mode and then select the item from the
Current Item pop-up menu. Note that you cannot select a locked item
(a little lock icon appears next to name). (See Chapter 12 for
information on locking items.)
• Use the ItemPicker master plug-in, discussed later.
NOTE
You can use your UP and DOWN ARROWKEYS to cycle through the
Current Item list.
Cow is selected
L I G H T WAV E 3 D 7 6.19
NOTE
You can select a bone by clicking near its midpoint, rather than its
pivot point, making it possible to pick different bones that branch from
the same point in a hierarchy.
Of course, these aren’t the fingers that were bent when this was shown to me.
6.20 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
Selecting by Name
Pressing the apostrophe (‘) key launches a special selector dialog.
Simply type-in a few characters that uniquely identify the desired item
and click OK. You can select any type of item.
Unselecting Items
In Layout, one item is always selected. It becomes unselected when
you select a different object.
GENERAL OPTIONS
Choose Display > General Options to bring up the General Options
tab on the Preferences panel.
Alert Level
The Alert Level setting controls how error, warning and informational
messages are displayed. When set to Beginner, these messages are
displayed as dialog boxes, which the user needs to manually dismiss.
The Intermediate level moves warning and information messages to an
information line near the bottom of the interface and Expert moves all
messages.
NOTE
Modeler has its own Alert Level setting on the Interface tab of the
Display Options panel.
6.22 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
Content Directory
Use the Content Directory button to set this previously discussed
and very important setting.
Toolbar
The Left or Right settings determine on which side of the interface
the toolbar appears. (If you are left-handed, select Right.) If you are a
keyboard shortcut god, you can activate the Hide Toolbar option, which
makes the toolbar invisible.
NOTE
To redisplay the toolbar, press the letter O key to bring up the General
Options tab of the Preferences panel.
Input Device
The Input Device pop-up menu lets you select either a Mouse or
Tablet as the primary input device. When you choose the input device,
the default system drivers for the appropriate device are used.
Parent in Place
When Parent in Place is active, an item will maintain a constant
position, size, and orientation when it is parented or unparented. (See
Chapter 11, “Parent in Place.”)
want to set this value to 24 so that the repeating nature of the pattern
repeated properly. Change this frame rate if you are working on film or
another medium that has a frame rate different than video (30 fps).
NOTE
Keyframes are based on time so they're always allowed to lie on
fractional frames.
NOTE
We strongly suggest that you use SI or Metric since that measurement
type is generally assumed for exercises and tutorials.
WARNING
We strongly suggest that you use the SI or Metric Unit System and
meters as the default unit. Use other settings only for special
situations. Both systems are based on 10, which will make your
modeling and animation life easier.The Default Unit of meters is
assumed for exercises.
GENERIC PLUG-INS
Generic plug-ins are miscellaneous type plug-ins that more or less
stand on their own. These can range from small utility modules to full-
blown applications. They are selected on the Scene > Utilities: Generics
menu.
Generic plug-ins have the unique ability (among Layout plug-in
commands) to be added to menus and keyboard shortcuts (they appear
in the Plug-in command group when configuring menus and keyboard
shortcuts). See Chapter 5 for more information.
Comments
The Comments panel lets you add several lines of comments to an
item in the Scene. The comment text is saved with the scene file.
6.26 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
Comments panel
Content Manager
Content Manager lets you collect a scene and its support files (i.e.,
object and images) and copy them to another location. It also has an
option to just pull support files into the Content Directory (for those rare
occasions, right?).
Export Scene Mode
When the Mode pop-up menu is set to Export Scene, Content
Manager will copy the scene and support files to the New Content Dir.
You may edit the scene name in the Scene Name field if you want to
change the name. You may reload the exported scene when the
processing is finished by activating the Load Exported Scene option.
Otherwise, the current scene will remain untouched.
When you close the initial Options panel, the main interface will
appear. The list window will show all of the objects and images in your
scene. The Status column will show Local (the exported file will be
within the content directory) or External (the exported file will be
outside the content directory).
L I G H T WAV E 3 D 7 6.27
The Source column shows the location of the objects and images. If
the files are local, only the path relative to the content directory (e.g.,
OBJECT\JOEY.LWO) is shown. If the files are external, the full path (e.g.,
C:\PICS\DC\PACEY.JPG) is shown.
The Destination column shows where those files will be copied. The
destination and source are the same for local files. The destination will
be blank for external files and needs to be specified by the user. You can
change the destination of local files, if you desire.
FX_...
See Chapter 17 for information on the FX_Browser, FX_Linker, and
FX_Property commands.
ImageLister
ImageLister outputs a text file with a list of the currently loaded
images.
MD_Controller
See Chapter 18 for information on MD_Controller.
Snap Selection to Grid will snap the selected items to the specified
Grid Size. Snap Hierarchy to Grid is similar, but only works on the
hierarchy from the selected root item. Snap All Items to Grid snaps
everything.
Before (left) and after (right) using Snap All Items to Grid
SelectGroup
SelectGroup selects all child items of currently selected scene items.
Skelegons To Nulls
Skelegons2Nulls converts skelegons from the object selected on the
Object to Convert pop-up menu into null objects. It can optionally
generate a hierarchy based on the skelegon relationships if Apply
Skelegon Hierarchy is active. If Apply Skelegon Hierarchy is inactive,
the nulls will be positioned relative to the Origin.
If you activate Place near object (Apply Skelegon Hierarchy must be
inactive), the nulls are created in place. That is, wherever the object is
6.30 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
located in 3D space. The object should also be positioned off the Origin
and un-rotated for this option to make a difference.
Other Generics
Sasquatch Lite, Shockwave3D Export, Spreadsheet, and Export Scene
as VRML97 are discussed at the end of this chapter.
Master Plug-ins panel.The ProxyPick plug-in’s options are visible on the lower portion of the panel
NOTE
In some cases, plug-ins will be listed on the pop-up menu that are not
meant for direct use, but are used internally.
ItemPicker
ItemPicker displays the Quick Pick panel. You can instantly select
frequently used items in your scene by just clicking on the item’s name
in the list.
L I G H T WAV E 3 D 7 6.31
ItemPicker interface
Use the Add Item pop-up menu to add an item from the scene to the
list. To delete an entry, select it and click Remove.
NOTE
The Scene Editor can also be used as an item picker. See Chapter 12.
MasterChannel
The MasterChannel lets you create a user-defined channel, which will
appear in the Scene list of the Graph editor under the entry MC. You can
keyframe the channel and use it as you would any channel.
MasterChannel dialog
To create the master channel, add the plug-in and enter a name into
the Channel Name field of its options dialog. The Type setting
determines the units of measure for the channel. You can add the plug-in
more than once to create multiple master channels.
6.32 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
ProxyPick
ProxyPick translates the selection of one object, known as the
“proxy”, into the selection of another, known as the “target.” This is
useful for picking small but crucial items out of complex, crowded
scenes.
The Apply Label button uses the selected Proxy Object and Target
Item to apply the ItemShape custom object to the proxy. The name of
the target is used in ItemShape’s Label setting and its Draw Line To
option is set to the target. If a previous proxy was used, this button will
clean up the settings. This is an optional step.
Remember to disable this plug-in when you want to actually select
the proxy rather than the target, as it is not yet telepathic.
ProxyPick
L I G H T WAV E 3 D 7 6.33
NOTE
The display always uses OpenGL; it is not an option. Also, many of the
display options are approximations and your actual rendered results
may be different.
Viewport Layouts
You can display more than one viewport by changing the Viewport
Layout pop-up menu. All of the normal viewport options can be set
independently and all viewports will update simultaneously.
Click the Save as Default button to use the selected Viewport Layout
for future sessions. Otherwise, it will affect only the current session.
You can customize the relative sizes of multiple viewports by
dragging the borders between them.
Grid Settings
Use the Grid Type pop-up menu to set the size of the overall grid or
turn it off. Adjust the Grid Square Size to change the size of each
square. The Grid Antialiasing option will smooth out jaggies when
active.
NOTE
The near clipping distance only affects your OpenGL display and has
no impact on your rendered images.
NOTE
There is also a far clipping distance that is always set to 10,000 times
the near clipping distance. Normally you never see its effects unless
you zoom out extremely far or have very distant objects, like stars.
Dynamic Update
The Dynamic Update pop-up menu affects how the Layout window is
updated with respect to changes on various panels. Interactive will
continuously update the Layout window while changes are made.
Delayed will update the Layout window when you release the mouse
button. Off will update the window only when you close the panel.
Which setting you use will depend on many factors, like your
processor speed, available processing resources, scene complexity, and
so on. You may want to try Interactive and then back off to a lower
setting, if updates become too sluggish.
Motion path
When you want to see the extent of your fog’s Max Distance and Min
Distance on the Volumetrics tab of the Effects panel (Scene > Effects:
Volumetrics), activate the Show Fog Circles option and use one of the
orthogonal views. You will see circles representing the two fog radiuses,
a result of the minimum and maximum fog values. Just as the backdrop
gradient sphere is centered about the camera, so is fog.
Fog circles
If you activate fog and the Show Fog Circles option, but do not see
the indicator, check for the following factors:
• Verify that Fog Type on the Volumetrics tab of the Effects panel is not
set to Off.
• Verify that you are using an orthogonal view.
• Verify that you should be able to see the fog circles. Are you too close
or too far from the camera for the circles to be visible? Use the grid
as a guide.
When using SubPatch objects, you may want to see the SubPatch
cage. Activate Show SubPatch Cages, if this is the case.
L I G H T WAV E 3 D 7 6.37
SubPatch cages
The Show Handles option will display reference handles for the
current item when you are moving, rotating, or stretching. These are
based on the item’s local axes at its pivot point. (See Chapter 7 for more
information.)
Rotation handles
The Show IK Chains option will display a solid line for the IK chain
and a dotted line for the direction of the item reaching for the goal
object.
IK chains
The Show Target Lines option turns on/off the line that connects to
targeted items.
6.38 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
Overlay Color
The color of the overlays for the field chart, limited region, fog
circles, and so on, can be set to any of the standard wireframe colors
using the Overlay Color pop-up menu.
OpenGL light
Usually the first Color or Diffuse image map layer is shown in the
Texture mode viewports. Enable Show Current Texture Editor Layer to
show the Texture Editor's current layer instead, if applicable.
The OpenGL Pixel Blending option will activate a smoothing display
function.
L I G H T WAV E 3 D 7 6.39
The OpenGL Reflections option lets you see the effects of image-
mapped reflections (not ray-traced) in a Layout window.
OpenGL reflection
NOTE
The reflection mapping will be visible only when the surface Reflection
value is greater than 50 percent.
NOTE
This setting is independent of how the background will appear in a
rendered image.That is, if the Backdrop Color is orange and there is
a Background Image set, the viewport background will still appear
orange if this option is set to Backdrop Color.
Background Image lets you see the image set as the Background
Image on the Compositing tab of the Effects panel (Scene > Effects:
Compositing) in the Camera view. You can use it to help you align
objects that need to be positioned properly with respect to the
background image. It will also show when you make preview animations
using the Camera view.
Background image
L I G H T WAV E 3 D 7 6.41
NOTE
Creating and loading a preview animation is discussed in Chapter 8.
Safe areas
NOTE
These are reference guidelines and are not absolute positions.
OpenGL Fog
If you have the OpenGL Fog option active, you can see an
approximation of your fog settings from the Camera View as well.
OpenGL fog
Field chart
Here, Cyclist has been added to Talk on Corner.The Cycle Controller for the plug-in is ControllerNull.Thus,Talk on Corner’s
motion is dependent on ControllerNull.
LAYOUT COMMANDS
The Layout interface is built on a command system. Buttons, keyboard
shortcuts, plug-ins, etc., essentially submit commands to the underlying
Layout engine, which performs the actual operation. You can view a list
of the last commands that were executed by choosing Layout >
Commands > Command History.
Alternatively, you can choose Layout > Commands > Command Input
and enter a command into the dialog that appears.
LScript Commander
LScript Commander can be used to create a command sequence or an
actual LScript for Layout. A command sequence is merely a list of
6.46 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
The top black area is the session window and can contain either a
command sequence or an LScript. You can type directly into this window
or copy commands from either of the bottom two tabs.
The Events tab contains a list of commands from operations that
have occurred in Layout. The Command Sequence tab contains a list of
all available commands. You can copy commands from either list by
selecting them (multiple selection is supported) and then right clicking
on the list. Once copied to the session window, you can edit the lines as
needed.
You can execute single commands by entering them in the Command
field.
You can define and use multiple sessions. The left Session pop-up
menu contains controls to start a new session, load an existing one, save
the current session to file, and close the current session. The Clear
Session option erases all of the commands in the current session. Also
on this menu are options to convert a command sequence into an
LScript and convert an LScript into a command sequence.
The pop-up menu to the right is used to choose the current session, if
there are more than one.
Click the Execute button to run the current command sequence or
LScript.
L I G H T WAV E 3 D 7 6.47
Clicking the Install button will add the script to the Macros group on
the LScript menu tab.
Select Hierarchy
This LScript will select the entire hierarchy that the currently
selected item belongs to.
Select Children
This LScript will select all of the children (and their children) of the
currently selected item.
SHOCKWAVE3D EXPORTER
The Shockwave3D Exporter (Scene menu tab) allows the user to
export Layout's current scene as a Macromedia® Shockwave® file (.W3D).
This encapsulated file contains all of the information needed to recreate
objects, surfaces, and animation, as well as the image files used in the
scene. The exported file can then be integrated into Macromedia®
Director® as a Cast Member. With this exporter, the user can combine
the content creation toolset of LightWave with the interactive
functionality of Macromedia Director, creating an integrated solution for
distributing multimedia content.
NOTE
Although the exported file can be previewed in LightWave, you must
have Macromedia Director in order to create files for distribution.
More information on Shockwave and Director can be found at
Macromedia's website: http://www.macromedia.com/software/director/.
Also, be sure to check out NewTek's Shockwave3D discussion in the
NewTek discussion forum at http://www.newtek.com/discuss.
6.48 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
The top portion of the panel contains controls for the export
selections, quality controls and preview options for the exported file.
The options for these items can be found on the tabs located on the
lower portion of the panel labeled Objects, Animation, Textures, and
Cameras. The file location is determined when the Ok button is pressed
and the file dialog appears.
Some things should be considered when modeling and animating a
scene that will be exported with Shockwave3D. Because this media is
meant for distributing large multimedia files, many of the exporter's
features and options keep performance issues in mind. Please take a
moment to read through this section and familiarize yourself on how
LightWave and Shockwave3D are compatible with each other. It could
save you a considerable amount of time on your next Shockwave3D
project.
Export Selection
This list of items determines which portion of the scene will be
exported into the .w3d file. The Scene Structure option preserves the
parenting hierarchy of your scene, while Cameras, Lights, Surfaces,
Objects, Animations, and Texture Maps all control which elements of
the scene will actually be exported. Simply activating these checkboxes
will include these items in the file.
L I G H T WAV E 3 D 7 6.49
Quality Controls
For three of the item export parameters, Objects, Animations, and
Texture Maps, there are additional controls to adjust the quality of the
assets used in the .W3D file. Since the .W3D file is encapsulated, these
adjustments will have no effect on the items or settings within your
LightWave scene. Only the data within the exported file will be affected.
If you are concerned about download times, or performance issues,
modify these parameters to create smaller or faster playing files.
Preview Options
On the Microsoft Windows platform, the Shockwave3D Exporter has
the option of playing a Shockwave-enabled preview window. You can
simply choose the resolution of the preview window, and on export, a
separate window will open displaying the exported file. This
representation of the exported scene is how it will appear as a Cast
Member in Macromedia Director.
Objects
The Shockwave3D Exporter exports polygonal models and frozen
SubPatch objects from the scene into a .W3D file. To increase
performance, Shockwave3D also creates multiple Level Of Detail (LOD's)
objects. These features are automatically enabled and their parameters
can be controlled in Macromedia Director. Unfortunately, object
morphing is not supported in Shockwave3D.
6.50 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
By activating the Enable Toons and SDS (cel shading and subdivision
surfaces) feature, the objects are exported with the neighboring mesh
information needed by these features in Director. Since this option
increases the size of the exported file, deactivate Enable Toons and SDS
if these features won't be utilized in Director. (Note that the SDS modifier
must be added in Lingo.)
The Crease Angle determines how much of an angle is allowed
between neighboring normals before polygons are joined together. This
parameter is used as a geometric smoothing angle when objects are
being optimized. Normal Deviation sets a limit that normals can deviate
from when the exporter creates any LOD's. The smaller the number, the
less likely the reduced model's normals will be drastically different than
the original object.
The Shockwave3D Exporter will remove very small triangles from
your models and does not support 1 or 2 point polygons. Base vertices
are points that will be removed last during any compression or polygon
reduction during the export. To use the base vertices feature, create a
Point Selection Set in Modeler named base verts. Any points included
within this set will be given priority when the exporter does any of its
optimization functions, and will be reduced last.
Animating Objects
All items (lights, cameras, objects, and surfaces) should have unique
names. Also, only two of LightWave's scene items are capable of being
animated with Shockwave3D, objects and bones. Thus, you cannot
directly animate cameras or lights. However, you can animate a null
object and parent the camera or light to the null object and achieve the
same effect. Hierarchy controls exported from LightWave include both
item parenting and pivot point manipulation.
default, these initial values will match the start time and end time of the
current scene. These options are not available if Force Sampling is not
activated.
In LightWave, animation is created using keyframes. The exporter
takes the motion defined by these keyframes and all the motion's
modifiers from a single frame and creates what is called a Sample. This is
much like freezing the motion curves of an item, but for that single
frame.
These samples are then used in Shockwave as the keyframes of the
animation. By adjusting the sample Interval, you control how often the
exporter samples the animation. For example, a value of five will export
a sample every fifth frame. This is very similar to LightWave's Frame
Step parameter.
The smaller the Interval is, the more samples the exporter will
create. In order to store this information, a larger file is created and will
take longer to download and store in memory. Having the sample
Interval set as high as possible will reduce the overhead needed to play
the animation. However, having an incredibly high value won't solve all
your problems either.
The Shockwave3D Exporter will rotate an item based on the fastest
route from angle A to angle B. Obviously this is not how LightWave
works. For this reason, it may be necessary to export a scene using a
much smaller sample Interval. This will give the Shockwave player more
keyframes to rotate an item with and will match the LightWave scene
more accurately.
Animating Bones
Animating bones is one of the more advanced features of the
Shockwave3D Exporter. However, one thing to keep in mind is that
Shockwave uses a different bones system than LightWave. The major
difference between the two systems is how points get bone influences
assigned to them. The animator should make all influence adjustments in
weight maps as opposed to LightWave's bone setup options. For this
reason, all bones must have a weight map assigned to them. Any point
not assigned to a weight map is assigned to a null bone located at the
root of the hierarchy. Also, unlike LightWave, a Bone's rest position is
determined on frame 0.
Cameras
The Camera pop-up menu lets the user decide which camera should
be exported. If All cameras is selected, the camera data for all the
cameras will be embedded within the exported file. Switching between
cameras is handled within Macromedia Director.
The Fog pop-up menu lets the user choose which camera will have
the fog settings attached to them. Fog settings exported include, Fog
Type, Fog Color, and Fog Falloff.
The Backdrop drop-down menu lets you determine which camera will
have the scene's backdrop color setting attached to them.
NOTE
Take note of the aforementioned animation limitation when animating
Cameras.
Lighting
Shockwave3D supports many of LightWave's internal Light types,
Distant, Spot, and Point, as well as ambient light. The lighting parameters
supported by Shockwave3D include Light Color, Light Intensity, and Spot
Angle.
NOTE
Take note of the aforementioned animation limitation when animating
lights.
VRML97 EXPORTER
The VRML97 Exporter plug-in (File > Export > Export Scene as
VRML97) creates a VRML97 World based on the current scene. The VRML
output complies with the ISO-VRML97 specification. The objects in the
scene may be saved as separate files into the Content Directory or an
alternate path. The following list shows some highlights:
Accurate Translation
• Keyframed hierarchical animation
• Light intensity envelopes, including ambient
• Non-linear fog
• Color image texture mapping using projection or UV maps
• Solid, non-linear gradient and image backgrounds
• Support for SkyTracer warp image environments
• Particle animation with single-point-polygon object to PointSet node
conversion
• Two-point-polygon object to IndexedLineSet node conversion
6.54 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
High-Performance Output
• 3-D Sounds
• Level-of-detail object replacement animation
• Object instancing
• Vertex color and lighting support
• Multiple custom viewpoints
• Custom VRML nodes
• Touch activated behaviors
• Viewer proximity activated behaviors
• Object visibility activated behaviors
• Objects output as prototypes (PROTO) definitions (optional)
• Scene object ignore
• Standard object viewpoints (optional)
• Optional embedded objects for single file scene output!
• Optional lowercase conversion for embedded object/image filenames
• Direct avatar navigation speed control
• Improved compliance for export to VRML97 editors, including
conversion of illegal VRML97 names (like 2LEGS or MY LIGHT), and
reflection of illegal negative scaling
Text entered into the Texture URN field will be pre-pended to texture
map image filenames, as an alternate texture location. This should
facilitate work with libraries like the Universal Media textures. This
information, when specified, will appear in addition to the regular URL
elements.
On the Scene Item pop-up menu, select a scene element to which you
want to apply the settings on this tab.
The Sensor Type is the sensor used to start the item's animation.
For some sensor types, like Proximity, a distance range is required.
When the viewer approaches the item within the Range, the animation is
triggered.
6.56 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
Use the Navigation Mode pop-up menu to set the initial navigation
mode for Web browsers.
Enable Headlight for good defaults in dark places.
Standard Viewpoints creates extra ViewPoint nodes (top, left, etc.)
for scene and external objects.
Avatar Size lets the browser set appropriate movement for the
dimensions of your world.
Global Light Scale globally scales all light intensities.
Environment Images are warp images generated by SkyTracer. These
map nicely to VRML's idea of environment mapping. Enter only the
basename portion of the image files. (For example, if you had
SKYWARP__BACK.JPG, SKYWARP__FRONT.JPG, etc., you would enter SKYWARP.)
Note that any panoramic images should be compatible, provided they
are renamed to match the SkyTracer filenaming convention.
The text in the Image URN field will be pre-pended to the image
filename and added to the list of URLs for the environment image.
So What is VRML?
VRML, also known as ISO-VRML97 (ISO/IEC 14772-1:1997), stands for
Virtual Reality Modeling Language. It is a standard for describing 3D
objects and scenes via the Internet.
Like HTML-based web pages, VRML worlds can contain links to
remote files. However, rather than using text or images for links, VRML
uses 3D objects. As a result, the Web browser for VRML resembles a 3D
animation program or video game more than a word processing
program.
VRML worlds can be embedded in HTML pages and vice versa. VRML
models are based on either primitives, like spheres, cubes, and cones, or,
more likely, sets of points and polygons. Since the latter is basically the
approach used by LightWave 3D's polygonal models, there is a pretty
good match between LightWave scenes and VRML worlds.
Before you can view any of your VRML creations, you'll need to get a
VRML 97 Browser. The VRML files produced by LightWave are text files
6.58 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
that follow LightWave's style of separate object and scene files. This is
not a requirement of VRML, but a powerful feature that lets a VRML
scene include objects from different files, even from some remote library.
These external objects in the scene file consist of a file URL, a
bounding box, and a set of position, rotation and scaling
transformations. The bounding box information is used by browsers to
render stand-ins while the objects are loaded.
VRML scenes also include multiple point lights, directional lights, and
spot lights with adjustable cones. The VRML equivalent of the LightWave
camera is a viewpoint. The exporter will add a named viewpoint for each
camera in the LightWave scene, which browsers can use to jump
between points of interest or standard views. In addition, VRML objects
created by LightWave may include a set of standard viewpoints for the
object.
Animation
Objects in your LightWave scene that have keyframes in any motion
channels will be given linear motion keys in the VRML file, through
PositionInterpolator and OrientationInterpolator nodes.
The Pre Behavior and Post Behavior set for the channels in the
LightWave motion has a critical influence on the VRML behavior of an
object. If the Pre behavior is set to Repeat, the motion will begin when
the world is loaded and keep on playing. Otherwise the motion will begin
when the item is triggered. If the Post behavior is set to Repeat, the
animation will loop until re-triggered, otherwise it will stop after playing.
The default triggering is a click (TouchSensor) on the object that
causes the animation to run from the beginning. Currently, the
TouchSensor switch is placed on the highest-level animated object in a
hierarchy, and triggers the animation of all the children simultaneously
(as one would expect).
Morphing in VRML uses a CoordinateInterpolator node. The node is
part of the Proto in the object file, if morph data has been captured. For
this reason, Prototypes should be enabled and embedded objects
disabled for morphing worlds.
Surfaces
Currently, double-sided surfaces are not supported in VRML97. Thus
LightWave 3D objects with polygons whose surfaces are double-sided are
translated as if they weren't double-sided. VRML objects that seem to be
missing polygons may actually have double-sided surfaces that need to
be either flipped or aligned in Modeler. If the surface is truly meant to be
double-sided, you will need to model the geometry with double-sided
polygons.
If your model has a texture map image associated with it (color only,
not diffuse, specular, etc.), there are a few tricks that can minimize the
L I G H T WAV E 3 D 7 6.59
Performance Notes
Although the VRML format is capable of describing complex scenes,
current 3-D browsers are limited by the real-time rendering capabilities
of their underlying computers. Thus, exquisitely crafted models with
painstaking detail, suitable for those print-res close-ups, may fail
painfully when they enter the realm of VRML renderers. To avoid the
twin perils of long download times and slow rendering, remember: the
first key to VRML success is efficient, low-polygon count modeling.
Similarly, elaborate layers of diffuse, specular, and luminosity
textures, whether images or algorithmic, will not survive any conversion
to VRML. Don't even ask about bump maps, displacement maps, or
surface shaders. Love it or leave it, VRML supports a single image map
for a color texture, as well as diffuse color, specular, and transparency
values. Since that texture image may very well have to fly through a
modem, you'll probably want to keep it small.
Elaborate textures and lighting can be baked into a model's 'image
map however, and lighting effects and coloring can also be baked into
vertex color maps.
PointSet objects are stored most efficiently if there is only one surface
per object. Otherwise, duplicate references to the vertices are required.
For large scenes, this could be significant.
Scene Tags
Many of the VRML attributes set in the exporter UI are stored in the
Lightwave scene file as comments. These comments can be viewed and
edited on an item-by-item basis with the Comments (Layout Generic)
plug-in. These Comments should be formatted as <Tag>=<value> where
the Tag is one of the following:
L I G H T WAV E 3 D 7 6.61
Workspaces
You can use the Spreadsheet to customize settings and options that
are displayed in the Manager’s panel.
Whether creating a workspace makes editing easier for you or saves
you time, you can configure almost every aspect of the display with this
plug-in.
Creating a workspace:
1 Customize the Workspace to fit your display needs.
2 Apply a Name to the Workspace by entering text in the Workspace
name field.
3 Select the Create Workspace command in the drop-list menu.
Once a Workspace is created, the name of the Workspace appears in
the top portion of this drop-list menu. To revert to the settings saved in
this Workspace, simply select its name from the drop-list. This will load
the settings for the selected Workspace and reconfigure the interface to
match the saved parameters.
To remove the current Workspace from the drop-list, select the Delete
Workspace command from the drop-list. A confirmation dialog will ask
whether you want to delete the Workspace from the scene file. Once you
delete it, the Workspace name is also removed from the drop-list.
NOTE
Workspaces are saved with the scene file.
Options
The Spreadsheet Scene Manager has options for customizing how the
Spreadsheet tools function and how information is displayed. A check-
list contains a list of General, Display, and Workspace options for the
Spreadsheet.
You can use this check-list (shown above), or you can access the
tabbed interface by selecting the first item in the list, labeled Options.
6.64 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
Filters
A complex animation might have dozens, if not hundreds, of items
within the scene. Searching through this almost endless list to find a
particular group of items can often be frustrating.
Using the Spreadsheet’s filtering options, you can narrow the list
down to make it easier to navigate, so you can get to your items faster.
You activate the Spreadsheet’s filtering tools with the Filter check
box. Then you enter the characters for your search in a text field so that
you can search through the item names in your scene. The filter
parameters determine how the search is conducted.
To use a Filter:
1 Create a scene with three nulls named leftLeg, leftArm, and rightArm.
2 Select Scene > Generics > Spreadsheet.
3 Activate the Filter option.
4 Enter the word “Left” in the text field.
5 Select the Containing filter parameter.
The Manager then searches through the items listed in your scene,
looking for names with the word “Left.” The resulting list of items reads,
leftLeg and leftArm. Because the item rightArm doesn’t contain the word
“Left,” it is omitted from the filtered list.
Activate the Case option to refine the search parameters; Case
includes the upper or lowercase characters of your entry in the search.
In the example above, activating the Case option results in no items in
the filtered list because the search characters contain an uppercase “L”
in the word “Left.” The item names use a lowercase “l” and since they
don’t match, they are omitted from the filtered list.
NOTE
The filtering tools are not available in the Hierarchy listing mode.
After you create a working filter, you can add it to a favorites list by
selecting the Create Favorite… command in the Favorites drop-list.
L I G H T WAV E 3 D 7 6.65
NOTE
The section of the Spreadsheet Scene Manager that contains the filter
controls can be minimized by using the expand and collapse button.
Mouse Functions
The mouse has several different functions in the Spreadsheet Scene
Manager.
LMB: Selects and highlights a field.
SHIFT + LMB: Range selection.
CTRL + LMB: Non-continuous selection.
RMB: Opens the cell’s Options menu.
In the Items List:
Double-click: Selects the object in Layout
Items in this list are determined by any active filters and by the
current Display Mode. Use the plus (+) and minus (-) icons to open and
close an item’s channel lists.
The Natural and Reverse Natural modes list the items in either the
order or the reverse order that they were loaded or created in the scene.
Alphabetical and Reverse Alphabetical will display the items in a
fashion that is easy to locate individual items.
In the Selected Items display mode, you have two additional sorting
modes: Selected and Reverse Selected. These modes refer to how the
items were selected in Layout.
Listed in the columns, left to right, are the item properties supported
by the Spreadsheet Scene Manager. These properties are organized in
lists of related attributes called Banks. You can select which banks are
currently displayed by selecting them from the Banks drop-list.
You can view more than one Bank at a time. You can add and delete
different Banks from the Property Cells by using the plus (+) and minus
(-) button located by the Banks drop-list. Use the slider-bar at the
bottom of the Property Cells to adjust which bank(s) are currently
displayed in the viewing area.
Editing Cells
The Property cells contain the values for each of the properties, for
all items. The values range from numerical values to file names,
depending on which property you are editing. Because the Spreadsheet
6.68 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
The Edit controls allow you to edit the property cell’s values in
absolute or relative mode. You enter a value in the Change Value To field
and choose an edit effect from the Effect drop-list. The effect selects how
the cell’s value will be altered when the edit is applied.
The Replace edit mode lets you make absolute changes to the cell’s
values. That is, when you apply the edit to the selected cells, the new
value will replace the current values. For example, you select ten cells
with various values in each cell, and in the Change Value To field you
enter a value of 2.0. When the edit is Previewed or Applied, the cells will
now all read 2.0.
The Add, Subtract, Multiply, and Divide functions are all relative
editing modes. They adjust the cell’s values relative to their original
values. In the example above, if you select the Add edit mode, all cells
will add the value 2.0 to their original values when you apply the effect.
L I G H T WAV E 3 D 7 6.69
By pressing the Apply button, you commit to the edit. You cannot
undo these edits. For that reason, you can use the Preview and Reset
buttons to view the effect of the edit without actually applying the edit. If
you like the results of the previewed changes, simply press the Apply
button and the changes are made to the item’s properties.
NOTE
The Spreadsheet Scene Manager will notify you when you are editing
in Preview mode by highlighting the Items, Property Cells, and Timeline
panels.
The Use Step field lets you increase the values in the selected cells by
an exact increment. Simply put the increment in the field, select an edit
mode, and Preview or Apply the changes.
Envelopes
The Spreadsheet Scene Manager also lets you edit any parameters
that can support envelopes. Like in Layout, these parameters are
indicated by a small E button in the cell itself.
You can add envelopes by group selecting the cells and pressing the E
button. You can also use the SHIFT+E combination to remove envelopes
from properties.
If the cell has envelope information stored in the channel, a keyframe
divot appears on the left edge. If a keyframe is located at the current
frame, the divot turns yellow, and the value becomes editable. Otherwise
this value is ghosted.
Clicking this divot will create a key, and SHIFt+clicking will remove a
key.
Timeline
The Spreadsheet’s timeline has much of the same functionality as
LightWave’s Scene Editor. You can edit an object’s motions by simply
adjusting an animation bar located on the timeline.
6.70 C H A P T E R S I X : L AY O U T : G E N E R A L F U N C T I O N S
The long bars let you adjust the first and last frame for both the
Render and Preview ranges. The fifth bar in the image above shows the
position of the current frame. By sliding these bars around, the
Spreadsheet updates the settings in Layout dynamically.
You can adjust the Start Time and End Time by dragging the black
arrows beneath the frame hash marks.
The different colored bars display the frame range of the item’s
motion. Small plus signs (+) within the bars represent the keyframes for
motion. To change the start and end time of the motion, you must select
the middle of the bar; you can then slide the bar to the left and right. To
scale the motion, you drag the left or right handles of the bar.
The slider located at the bottom of the Timeline both zooms and
scrolls the viewable area.
Column Sorting
You can change a column’s sort order by selecting the area under the
column’s header name.
As you select columns, numbered flags appear that reflect the sorting
order. By defining this order, you can sort the item list according to its
properties. For example, you can sort by an object’s Subpatch level,
which will put all the items at level three at the top, and everything at
level one at the bottom.
chapter7
Objects in Layout
L I G H T WAV E 3 D 7 7.1
C hapter 7:
Objects in Layout
LOADING AN OBJECT INTO LAYOUT
When you set up a new scene, you will need to load the appropriate
objects into the scene. There are several ways to load objects into a
scene.
HINT
Alternatively, you can press the + (plus) key on your numeric keypad,
which adds the appropriate item based on the active edit mode
selected at the bottom of the screen (i.e., Object, Bones, Lights or
Cameras).
When you move an object, you are repositioning its local Origin
relative to the world Origin. The local Origin provides a single point of
reference for an object’s position in 3-D space. The object’s geometry is
then applied relatively to the local Origin’s new position.
NOTE
Actually, an object’s (numerical) position is first determined by its pivot
point, discussed later, which can provide an offset amount to the local
Origin’s position. However, the pivot point is usually located at the
local Origin, by default.
A null object
NOTE
When there are multiple items of the same type with the same name,
a numerical suffix is added automatically (e.g., Null (1), Null (2), etc.).
SAVING AN OBJECT
You should always save objects after you have altered their surface
settings.
To save an object:
1 Make sure your Content Directory is properly set.
2 Select the object you want to save.
3 Select File > Save > Save Current Object to save...you guessed it...the
current object.
You can also use the File > Save > Save All Objects function to save
all objects in the current scene.
WARNING
Use Save All Objects with caution. Be sure it is what you really
want to do!
Saving a Copy
Choosing File > Save > Save Object Copy will allow you to save a
copy of an object using a new name, without affecting the object used by
the scene.
L I G H T WAV E 3 D 7 7.5
WARNING
Understanding object and scene files is fundamental to understanding
LightWave.
For example, say we had a flag object that was really just a flat-
subdivided rectangle. In Layout, we could make the flag wave using
something called a displacement map—essentially this animates the
points in the object. The displacement map settings are saved in the
scene file. The underlying flag geometry and surface settings are stored
in the flag object file.
NOTE
There is a unique quality to an object that uses displacement mapping
with an image (planar, cylindrical, or spherical) as well as surface color
mapped with an image.With the displacement map altering the object’s
shape, the color map is also bent to follow the contours of the
transformed object. However, if you save this reshaped object with
Save Transformed Object, it will now be permanently reshaped and
the surface color mapping will no longer match.
7.6 CHAPTER SEVEN: OBJECTS IN L AY O U T
CLONING ITEMS
If you want to use an item that is already in your scene, you can just
choose Items > Add > Clone Current Item. The new item will inherit all
of the source items properties and motion. As such, this can be a real
time saver.
NOTE
You can see a list of tools in the Tool group when setting up shortcuts
and menus.
MOVING AN ITEM
When you move an (unparented and unrotated) item in Layout,
generally your mouse movements have the following effects:
L I G H T WAV E 3 D 7 7.7
Movement Move
Left/Right LMB Left/Right
Up/Down LMB Fwd/Back(3D*); Up/Dn(orthogonal)
Left/Right RMB Up/Down
*3D=Perspective, Light, and Camera views
NOTE
For parented and rotated items, see also the subsequent discussion on
Coordinate System.
ROTATING AN ITEM
When you adjust rotation, in contrast to adjusting position, the action
is relative to the global axes around the item’s pivot point (discussed
later). By default, the pivot point is at the item’s local Origin.
Rotation uses a similar three-coordinate system: Heading, Pitch, and
Bank. (These are rotations around each of the axes: Y, X, and Z,
respectively.) You can think of heading as the movement in shaking your
head “no.” Pitch is like the movement in shaking your head “yes.” Bank
is like the movement of tilting your head left and right (and sticking your
tongue out. Nyaa nyaa!).
NOTE
Parenting (see Chapter 11) can dramatically impact the results of
rotation.
When you rotate an item, your mouse movements have the following
effects:
Movement Rotate
Left/Right LMB Heading
Up/Down LMB Pitch
Left/Right RMB Bank
To rotate an item in a scene:
1 Select the item.
2 Click Items > Tools: Rotate.
3 Drag your mouse as described previously.
L I G H T WAV E 3 D 7 7.9
COORDINATE SYSTEM
The Coordinate System setting (Items > Motions: Coord System)
affects the Move, Rotate, and Move Pivot Pt tools. World allows easy
movement based on the world axes, even for items deep within a
hierarchy that contains rotated parents. Parent is for movement based
on the axes of an item's parent(s). If an item has no parent then this
setting is equivalent to World. Local is for movement based on an item's
own axes (such as dollying a rotated camera along its view direction).
For unrotated items it is equivalent to Parent. Local, which can still be
temporarily activated by holding CTRL, as discussed previously.
Below, we have rotated a null and then parented a spotlight to it. The
Show Handles option, discussed later, is also active for illustration
purposes. The handles will line up with the movement axes that would
be used if you dragged your mouse.
Local
Note how with World, the handles line up with the lines on the grid.
With Parent, the handles line up with the rotated (parented) null. Finally,
with Local, the handles line up with the spotlight’s rotation.
NOTE
The position and rotation coordinate system settings are independent.
To change the system, select either the Move or Rotate tool first.
7.10 CHAPTER SEVEN: OBJECTS IN L AY O U T
NOTE
One thing to remember about Local and World rotation is that they
are only for interactive manipulation. Internally, the Parent system is
always used since it's the only one that can encode absolute rotation
values.This will affect how an item's orientation is interpolated
between two keyframes. As such, rotating the pivot point might still be
useful in some situations.
SCALING OBJECTS
You can scale an object (but not lights or cameras) using the Size and
Stretch functions. The difference between the two is that Size scales your
object proportionately along all axes, while Stretch lets you scale each
axis independently. Both operations happen around its pivot point
(discussed later).
When you Size an object, it is scaled equally along all axes. Dragging
left will make it smaller and dragging right will make it bigger. When you
Stretch an object, your mouse movements affect the following axes:
Movement Stretch
Left/Right LMB X axis
Up/Down LMB Z axis
Left/Right RMB Y axis
L I G H T WAV E 3 D 7 7.11
SQUASHING OBJECTS
The Squash tool is similar to the Stretch tool; however, when one of
the scale channels is modified, the other two channels are automatically
adjusted to preserve the object's volume.
ADDITIVE CHANGES
You can numerically add to Position, Rotation, and Scale values by
using the functions in the Items > Tools: Additive menu group. They
work like editing the input fields in the lower-left corner of Layout, but
add to the existing values instead of replacing them.
ITEM HANDLES
If you have Show Handles active on the Display Options tab of the
Preferences panel (Display > Options: Display Options), special handles
will be available when the Move, Rotate, or Stretch tool is active. The
handles can be dragged (anywhere along their axis lines) to edit items
along the chosen axis. This can be a quicker alternative to using
standard mouse dragging; moreover, movement along all three axes can
be performed with just one mouse button and no qualifier keys.
7.12 CHAPTER SEVEN: OBJECTS IN L AY O U T
NOTE
Handles are drawn at a constant size relative to the viewports they
appear in, regardless of the item's scale or distance, the viewport's
zoom factor, or the grid square size.
When moving, three arrows will appear that point toward the positive
side of the X (red), Y (green), and Z (blue) axes.
Move handles
Stretch handles (for objects) are similar but appear as cubes instead
of arrowheads.
Stretch handles
When you rotate an item, heading (red), pitch (green), and bank
(blue) rings will appear. You can manipulate the rotation discs by
dragging anywhere on their circumference. The arrowheads—only
visible using the Parent coordinate system—provide a reference for the
related rotation value.
Rotate handles
L I G H T WAV E 3 D 7 7.13
Below, you can see how the rotation limit values on the Motion
Options panel (Items > Motions: Motion Options), if any, are also visible
on the discs (like a piece of pie) in the Parent coordinate system.
Love handles
NOTE
If Show Handles is active on the Display Options tab of the
Preferences panel and you click on an item to move it, you may have
to move your pointer away from the object, before you start dragging.
NUMERICAL ADJUSTMENTS
You can also change position and rotation settings numerically by
entering the desired values in the XYZ or HPB fields, located in the lower
left corner. The function of these fields change depending on the editing
being done.
NOTE
You can also confine changes by using any of the orthogonal views (i.e.,
Front,Top, and Side). In these views, you can generally make changes
only along the display’s horizontal and vertical axes using your mouse.
PIVOT POINT
WARNING
Understanding pivot points is fundamental to understanding
LightWave.
The pivot point is a point of reference used for all objects and does
not correspond to any point used in an object’s geometry. The pivot
point is the center of position, rotation, and scaling. By default, it is
located at the object’s local Origin. The pivot point, a small yellow star,
becomes visible when you select an object.
NOTE
You cannot animate the pivot point.
Rotation with pivot point moved behind the cow. Note the difference in the center of rotation.
NOTE
We strongly suggest that you leave an object at its default rotation and
scale before you move its pivot point in Layout or you may get
unpredictable results.
Layout or Modeler
Setting the pivot point in Modeler saves its position in the object file.
Setting it in Layout only saves the data in the scene file. As such, it is
usually best to set your pivot point position in Modeler.
Why Move the Pivot Point?
You might be wondering why you might want to move the pivot point.
Why not just model all objects so that the Origin is the desired center of
rotation? Well, you certainly could do this and should probably try to do
this as much as possible. However, there are often circumstances when
multiple objects are just parts of a larger element. You want the
individual parts to be positioned in their respective locations by default.
But you may want to rotate them individually, around their own center
point.
Let’s take puzzle pieces for example, where all of the pieces fly in to
form the complete puzzle. If you modeled each piece centered around
the Origin, it would be a real pain to move each piece perfectly into its
final resting place. It would be much easier to load each piece by default
L I G H T WAV E 3 D 7 7.17
at its resting position and then set arbitrary starting positions and
rotations. To do the latter, you need to move the pivot points to the
center of each piece.
A robot is another good example. The arms, legs, feet, torso, etc., are
all separate objects, each modeled in their natural resting position in
Modeler. However, all parts must be rotatable around a unique axis. This
is possible only by moving the pivot points of each object.
Left: Left ankle object. Right: Pivot point moved so rotation is at the knee
HINT
Pivot rotation is most useful when used with bones, as discussed later.
You may want to stick with normal item rotation for other rotational
needs.
NOTE
Unlike the Move Pivot tool, which changes the position values, when
you use the Rotate Pivot tool, it does not compensate with changes to
rotation values.
NOTE
If you plan to move a pivot point, you should reset the item’s position
and rotation first.
NOTE
If you have Position or Rotation axes deactivated, Reset will have no
effect on those settings.
chapter8
Keyframing
L I G H T WAV E 3 D 7 8.1
C hapter 8:
Keyframing
In order for the items (cameras, objects, lights and bones) to move
about, you must tell them where they must be located at any given frame
during the course of an animation. You do this by creating key poses,
known as keyframes (or simply keys), at strategic points in time
throughout an animation. Once keyframes are created, LightWave
automatically calculates the in-between (tweens) frames in smooth (or
abrupt) movements.
For instance, you could create an animation where a coffee cup jumps
up and down and spins around. This could be done easily by creating
one keyframe at the point where the coffee cup begins to jump up;
moving and/or rotating the coffee cup to the top of its leap and creating
another key; then, creating a third key after you move it back to where it
lands.
If you hold the ALT key while you drag, you can pan the current range
of frames. The first and last frames will change, but the total number of
frames between the first and last will remain constant.
NOTE
For additional information on frame slider options, see Chapter 6.
Keyboard Shortcuts
There are also some keyboard shortcuts that can be used:
• Previous frame (LEFT ARROW key)
• Next frame (RIGHT ARROW key)
• Previous keyframe (SHIFT + LEFT ARROW key)
• Next keyframe (SHIFT + RIGHT ARROW key)
NOTE
Also see the Play at Exact Rate option on the General Options tab
of the Preferences panel discussed in Chapter 6.
NOTE
Your playback speed will vary depending on the complexity of your
scene, object display mode, system capabilities and so on. Reducing the
size of your Layout window can dramatically increase playback speed.
HINT
To take advantage of Play, you can modify an object in Modeler while it
is animated in Layout (Note that the HUB must be activate.) How
cool is that?!
CREATING KEYFRAMES
As we’ve already learned, objects are always loaded at the Origin.
This is the center of Layout’s grid, 0, 0, 0, and every new item will have a
default keyframe for frame 0 here. If you never create another keyframe
for an item, it will stay at this default location throughout the animation
(if you want to call it that).
NOTE
Frame 0 is the default starting point, but you can create keys at frames
at less than 0, if you need to.
To create a keyframe:
1 Select the item(s) and pose (move, rotate, size, etc.) it.
2 Click the Create Key button or press the ENTER key.
3 The Create Motion Key dialog will appear.
8.4 CHAPTER EIGHT: KEYFRAMING
By default the Create Key At field will contain the current frame. You
can change the frame number to create the key—using the animation
channel values for the current frame—at a different frame by entering a
different frame number here. This is a good way to copy a keyframe. You
can also re-pose your item and create a new key over an old one.
The For pop-up menu has several options. You can create keys for:
Selected Items All items that are selected, which will always
include the current item. Generally, this will be
the one you use the most.
Current Item Only Only the current item, even if others are selected.
Current Item and Descendants
The current item and any child items.
All Items All items in the scene. Beware that this is not
limited to just items of the same type. A key will
be created using the current animation channel
settings for all objects, bones, lights, and
cameras.
The dialogs for creating motion keyframes for scene items have three
rows of toggle buttons. This lets you create animation channel keys
independently. The Position, Rotation and Scale buttons allow a row to
be turned on or off with one click. All channels are enabled by default
and their state is remembered.
NOTE
Keys created using the Create Motion Key dialog use the Graph
Editor's Default Incoming Curve type, discussed later. Generally, we
suggest you use TCB Splines and not Bezier splines. Bezier tangents are
determined at the moment of creation and don't automatically adjust
as new keys are created.This can cause awkward movement through
keys.
Auto Key is a time-saving feature for advanced users and can be very
useful for quickly roughing out a motion path; however, beginners may
want to stick with creating keys manually. Most of the exercises in the
manuals assume that Auto Key is not active.
Make sure you are always aware of the status of Auto Key and Auto
Key Create. These options can result in an animation with extraneous
keyframes.
HINT
A good way to get familiar with this feature is to set Auto Key
Create to Off and leave Auto Key active.This will affect only
existing keys.You can use the Undo function if you make a mistake, but
remember that it is only a single-level undo.
DELETING KEYFRAMES
You delete keyframes in much the same way your create them.
To delete a keyframe:
1 Select the item. Normally, you will also go to the keyframe you wish
to delete.
2 Click the Delete Key button or press the DEL key.
3 The Delete Motion Key dialog will appear. It uses all of the same
controls previously described for the Create Motion Key dialog.
Protection
The Protection pop-up menu can be used to ensure that certain
important keyframes are not deleted. This is especially useful when
using the Delete Keys Outside Range or Clear Motion modes, where
deleting all keyframes could ruin your scene or destroy your character's
bone setup and IK poses. Yikes!
No Protection means that no keyframes will be protected from
deletion. This allows you to delete any keyframe.
Protect Frame 0 will ensure that no keys at frame 0 are deleted.
Similarly, Protect Neg & 0 will protect frame 0 and all negative
keyframes.
Protect First Key and Protect Last Key will keep you from deleting
the first or last key in the channel, respectively.
NOTE
Modeler’s Path Extrude and Path Clone commands use these files to
execute their operations.
NOTE
You can press the ESC key to stop creating the preview animation.The
animation will still be playable up to the point of termination.
HINT
To save time creating a preview animation for a complex scene, do the
Texas Two Step: use a Step of 2 and playback using a frame rate one-
half the desired rate.
Preview Options
Also from the the Preview pop-up menu, you can replay the preview
currently in memory, free it from memory, and load/save a preview
animation file. Selecting Preview Options from the Preview pop-up
menu will display a dialog.
Setting Screen Size to Stretch to Fit causes the image to fit the
window, even if its a different size than what was used when the preview
was made.
UNDO/REDO CHANGES
The undo function will undo the last motion change (Move, Rotate,
Size, or Stretch tool). The button description will change, letting you
know what will be undone (e.g., Undo Move) or redone (e.g., Redo
Rotate).
HINT
If you are not using the Auto Key feature, you can quickly reset all
aspects of a frame (i.e., position, rotation, etc.) if you haven’t created
the key yet. Just press the RIGHT ARROW key and then the LEFT ARROW
key.This advances the current frame and then goes back to the
original frame.The frame will return to the last keyframed state, or if
the frame is not a keyframe, to its in-between state.
NOTE
Undo is not the same as using Reset, discussed previously.
NOTE
The Graph Editor also controls all envelopes for options like light
intensity, color, camera zoom, etc.
The Graph Editor has four major interface areas: the Channel (Curve)
bin, the Curve Edit Window, the Curve/Expressions controls, and the
Scene/Expressions list.
You can click the Collapse buttons to hide the left side and bottom
areas of the panel. This will increase the screen real estate used by the
Curve Edit window. When the left side is collapsed, the primary selected
curve is shown in the information field.
Frame Range
If frames outside the range of frames in your scene (i.e., less than your
first frame or greater than your last frame) are visible in the Curve Edit
Window, those areas will be slightly darkened. There will also be a small
handle at the very bottom of each border. You can drag these to
interactively adjust your scene’s first and last frame.
L I G H T WAV E 3 D 7 8.13
First and last frame handles and corresponding fields on the main Layout interface
Draggable borders
Once you add channels to the bin, you can rearrange the order by
dragging and dropping.
Choose Create Favorite Set to manage curve sets. It lets you create
sets of editable curves so that you can easily switch between different
combinations of curves to manipulate during a session.
To create a favorites entry:
1 Make sure the desired curves appear in the Channel Bin.
2 Select Create Set from the Channels pop-up menu.
8.16 CHAPTER EIGHT: KEYFRAMING
3 Enter an appropriate Name in the input field that appears and click
OK.
You can revert to any saved favorite set of curves by selecting it from
the bottom of the Channels pop-up menu.
Choosing Replace favorite set lets you replace an existing favorite set
with the curves currently in the bin. Choosing Delete favorite set lets
you remove an existing favorite set from the Channels pop-up menu.
Editing Curves
With the Graph Editor, you can easily edit multiple curves
simultaneously or use curves from different items as references. Since
you can mix curves of different types in the bin, you can do wacky things
like compare the curve of light intensity with the X position of an
object—any curve in LightWave can be compared or edited together!
You can interactively cut and paste key frames from one curve to
another as well as simply replace an entire curve. This is also a good
way to lock areas of curves together. By selecting multiple curves when
you create keys the curves can be identical at those segments of the
animation.
If you put your cursor over a key you will see a data label pop up to
inform you of that point’s Curve, Value, and Frame.
L I G H T WAV E 3 D 7 8.17
Mode buttons
Selecting curves
3 Drag your LMB to roll the keys—as keys go past the end of the range,
they reappear at the other end of the range.
Copying Keys
You may copy keys using your mouse or keyboard.
NOTE
Existing keys will be shifted over if you paste in more than one key
(unless the Insert Overwrites Keys option is enabled).
See also the Copy Time Slice command (Keys > Copy Time Slice),
discussed later.
L I G H T WAV E 3 D 7 8.21
When a color channel is selected in the Channel Bin, a color bar will
appear at the bottom of the graph. The bar shows you the color for the
combined red, green, and blue values at any particular point in time—
even if you don’t have all three color components in the bin.
8.22 CHAPTER EIGHT: KEYFRAMING
NOTE
You can adjust any color channel beyond the normal maximum and
minimum—creating a high dynamic range color.This may have no
visible effect on the color bar, but could affect how the color is
interpreted by other factors.
You can use a color requester to set the key values by right-clicking
on a key and selecting Open Color Picker. Note that the selected color
will only set the color component for the selected channel(s). If other
channels are selected, keys will be created as needed.
You can get a 2X zoom out by clicking your RMB with the Zoom Box
tool selected. The zoom out will be centered at the point you click.
If you have a mouse wheel, scrolling it over the Curve Edit window
will affect the zoom. Hold the CTRL key to pan horizontally and use
CTRL+ALT to pan vertically.
Filter Curves
Use this command to filter out channels from the Channel Bin that do
not match a pattern. The pattern is case sensitive. *.POSITION.* would
remove any channel that wasn’t a Position channel. You could use *.Y to
show only Y channels.
Create Key
This allows you to create a key, Layout-style. A dialog will appear
where you can enter the Frame and Value.
Numeric Move
With this command you can shift the selected keys. Frame Offset is
the number of frames to use for the shift. Value Offset is a number to
add to or subtract from the value for each keyframe.
Numeric Scale
This command lets you scale the key times and values for selected
keys. A Time Scale Factor of 1 means no change. A value of 2 would
double the time and .5 would halve it. The Time Scale Origin is the
center of the scaling. Thus, if you place this at one selected key, the
scaling will happen around it and not affect that particular key. This
setting uses the units displayed on the graph. Value Scale Factor and
Value Scale Origin work similarly except they affect the selected key
values.
Reduce Keys
The Reduce functions let you remove consecutive keys that are
within a certain threshold value of one another. The threshold is set by
selecting Set Key Reduction Threshold.
There are two modes: Reduce Keys and Reduce Keys ( Recursive). As
an example, assume consecutive keys A B C D E all have values within
the threshold. Choosing Reduce Keys would remove keys leaving A C E.
Selecting Reduce Keys again would leave A E and a final Reduce Keys
would leave only A. Reduce Keys (Recursive) would go directly from A B
C D E to A in one step.
If you set the threshold to a negative number, Reduce Keys will
eliminate every other key. Reduce Keys (Recursive) will remove all but
the first key.
8.28 CHAPTER EIGHT: KEYFRAMING
Autofit
You can automatically scale the graph display to show all of the
selected curves with this command.
Autofit Selected
You can automatically scale the graph display to show all of the
selected keys with this command.
Autofit By Type
Autofit By Type will scale the graph to fit the values for the primary
selected curve’s type (i.e. position, rotation, scale, and so on).
Numeric Limits
This will display a small dialog. The Min Frame and Max Frame
values set the range of frames you want to see on the graph. The Min
Value determines the value of the bottom boundary of the graph and the
Max Value sets the upper boundary.
L I G H T WAV E 3 D 7 8.29
Go To Frame
This action sets the current frame to the entered value. It also centers
the Curve Edit Window around that frame.
Reset Graph
This simply resets the graph to default frame and value ranges.
With all motion channels selected, you can see that keys were added to all of the siblings, locking them in place
Show Modifiers
Activate this to always make the modified curve (i.e., after the effects
of motion Modifier plug-ins) visible as a dotted line.
Show Tangents
This command will activate or deactivate tangent handle display.
AntiAlias Curves
This command will activate or deactivate the feature that smooths
the display of curves.
HINT
If you are working with a lot of curves and keys, turning off the
AntiAlias Curves and Show Tangents options can help speed up display
refreshing.
Collapse/Show All
This collapses or shows the Tabs and Trees areas of the Graph Editor.
Collapse/Show Tabs
This is the same as clicking the Collapse Tabs button.
Collapse/Show Trees
This is the same as clicking the Collapse Trees button.
Other Commands
Graph Editor Options
This brings up the Graph Editor Options panel. Note that most of
these options can be set from the Display menu.
Undo Last Action
Use this command for a single level undo/redo of the last edit.
HINT
Also see the discussion on the Footprints feature.
Cancel Changes
This command restores all envelopes to their state at the time the
Graph Editor panel was last activated (i.e., making it the top window).
NOTE
Other customizable menus will appear when you Ctrl+Shift+RMB and
Ctrl+Shift+MMB.
Curve Controls
The Curves tab in the Curve Controls area contains specific values
for a selected key(s). The Frame field contains the frame number and the
Value field holds the related value.
Curves tab
Multiple Values
If you select multiple keys, input fields will show (mixed) if the keys
have different settings. You can still edit the fields, which will change all
8.38 CHAPTER EIGHT: KEYFRAMING
selected keys to match the entered value. You can use this method to
flatten a portion of a curve(s) or to match key times across multiple
curves.
Mixed values
With Constant, the values beyond the ends are constant, that is,
equal to the first or last keyframe value.
With Repeat, the motion repeats from the first to last keyframe.
L I G H T WAV E 3 D 7 8.39
With Linear, the curve receives a linear angle consistent with the
angle at the start or end points.
Incoming Curves
The type of curve that precedes a key can be set using the Incoming
Curve pop-up menu.
TCB Spline
TCB Spline (tension, continuity, and bias) curves have three controls
that determine the shape of a curve as it passes through a key.
8.40 CHAPTER EIGHT: KEYFRAMING
A high Tension value (1.0) is often used at the end of a flying logo
move in order to make the logo come to a gradual stop. High Tension at
the beginning of this move would have the logo start slowly, while a
negative value would have the logo start quickly.
NOTE
If you right-click on a key, choosing Ease In/Out from the pop-up
menu will set the Tension to 1 for all selected keys using TCB Spline.
in the spline path to one side or the other of a keyframe. This serves to
accentuate motion—the incoming motion by undershooting the
keyframe and creating a feeling of anticipation, or the outgoing motion
by overshooting the keyframe. For example, a race car moving through a
turn could use either a negative or a positive Bias setting to
a) anticipate the turn with a negative Bias, or b) overshoot the turn with
a positive Bias.
Negative Bias values place the slack before the keyframe while
positive Bias values place it after the keyframe.
Hermite Spline
If you use Hermite Spline, a tangent control handle will appear,
emanating left from the key. This type of curve is an extension of the
8.42 CHAPTER EIGHT: KEYFRAMING
standard TCB Spline, but allows a wider range of results. Drag the
handle (at the end) up or down to change the angle of the tangent and
thus the shape of the curve.
NOTE
Note that TCB Splines generally limit you to more realistic results.
Bezier Spline
Splines using Bezier Spline operate like bezier curves do in many
industry-standard paint and illustration packages. When you create a
key, you must drag before releasing your mouse button to edit the
handles. (See note below.) Otherwise, bezier keys have handles that
coincide with the key. For an existing key, select it and then click-drag on
it to pull out the handles.
Drag the handles to change the angle of the tangent and thus the
shape of the curve. If you are curious, Bezier splines are indeed a variant
of Hermite splines, and thus the results will be very similar.
FUN FACTS
Bezier curves were developed by Pierre Bezier for designing Renault
automobile bodies.
Linear
Linear removes the gradual, smooth nature of a spline curve change
and replaces it with more direct, sudden change. Linear affects the
changes between the current keyframe to the previous keyframe only. By
turning Linear on or off at different keyframes, graphs may contain both
gradual and sudden changes.
Stepped Transition
Stepped transition holds the preceding keyframe value and then
abruptly jumps to the next keyframe value at that frame.
Unified tangents
You can break the tangents, that is, make them operate separately by
holding the ALT key and then dragging either side.
Broken tangents
Integrated Expressions
Expressions are built right into the Expressions tab on the Graph Editor.
This implementation has several advantages over the channel expression
modifier. First, expressions are not an attribute for a single channel. Instead,
the expressions stand alone and channels are attached to them. This allows
you to attach multiple channels to a single expression! Moreover, you can
save and load libraries of expressions you create.
NOTE
To get interactive updates in Layout for expressions, make sure you
have Auto Key active.
To create an expression:
1 Click the New expression button. No channels need to exist in the
Channel Bin nor does any channel need to be selected—expressions
stand alone.
2 Enter a name for your expression in the Name field.
3 Enter your expression in the Value field.
You may also copy the selected expression by clicking the Clone
button. This creates an independent copy that you can alter.
Additive Expression
You can use the Value variable to make an additive expression. Value
is equal to the (base) keyframed value. For example, if the camera’s
keyframed X position was 2m and the Light’s keyframed X position was
3m, the expression VALUE + [LIGHT.POSITION.X], placed on the camera’s X
position, would move it to 5m.
Note that editing an item in Layout with an additive expression
attached (e.g., VALUE + [NULL.POSITION.X]) can cause recursive updates,
since you’re changing the Value. There are a few work-arounds:
1 Do the edit in the Graph Editor;
2 Turn off the expression in the Graph Editor. Perform the edit and then
turn it back on; or
3 Add a null and animate it the same way as the item itself (except
without the expression). Then, replace Value in the expression with
the null's corresponding channel (e.g., if Value was the item's
Y position, then use the null's Y position instead).
To rename an expression:
1 Make sure the expression is selected. Its name will appear in the
Name field. To select a different expression, choose it from the
Expressions... pop-up menu.
2 Type a new name into the Name field. This will have no effect on any
of the expressions channels.
L I G H T WAV E 3 D 7 8.45
NOTE
It is possible to attach multiple expressions to a single channel, but this
is not recommended.The expressions will be evaluated in the order
they were attached; however, there is no way to determine that order.
NOTE
The name of an expression on the Expressions... pop-up menu will
list the number of channels attached to it in parentheses.
Libraries
You can save all of the existing expressions to a file on your hard
drive by choosing Expressions... > Save Library. To load a previously
saved library, choose Expressions... > Load Library. If an expression
exists with the same name, it will be replaced. Otherwise, the library of
expressions will be added to the list.
You can clear all unused expressions by choosing Expressions... >
Clear Used. This clears out any expressions that do not have any
channels attached.
Expression Syntax
LightWave supports two types of expression syntax. The first is
identical to the Channel Expression syntax (e.g., the x position of a light
at time t is given by LIGHT.POS(TIME).X). This works normally, as does all of
the control syntax ( x < 5 ? y : -y).
8.46 CHAPTER EIGHT: KEYFRAMING
NOTE
Make sure you use spaces around math operators, like the minus sign
used above. Not doing so may confuse the expressions parser, which
allows some of those characters in scene item names.
L I G H T WAV E 3 D 7 8.47
NOTE
Loops are not allowed and the system will report an error if any are
detected.
Bad Expressions
If an integrated expression is erroneous, an error dialog will appear
when you attempt to apply it or otherwise exit the input field (e.g., using
TAB key, ENTER key, mouse click, etc.). Also, the Apply button will show
Uncompiled instead of Apply.
Subexpressions
An expression may reference another expression (subexpression). The
format is identical to other bracket notation calls, except that in place of
a channel name, you supply an expression name. Time may still be
specified, just as if it was a channel reference.
So [MYCENTER, FRAME - 5] would cause the system to evaluate the
expression MYCENTER at the current FRAME - 5 and return that value.
If the subexpression contains a reference to the Value variable, then
the current value of the channel—whose expression is using the
subexpression—will be used. In other words, all expressions within an
expression are using the same Value variable.
Also, subexpressions may not themselves contain subexpressions.
There will be no error, but any sub-subexpression will always return 0.0
upon evaluation.
Vector References
Bracket notation references to channels may also reference a vector
for position, rotation, or scale. This works with the built-in expression
functions that take vectors as parameters.
For example, this expression shows how you could find the center X
coordinate of two items using scalar values:
([LEFT.POSITION.X] + [RIGHT.POSITION.X]) / 2.0
Here is an expression that performs the same feat, but using vectors:
CENTER ([LEFT.POSITION], [RIGHT.POSITION]).X
Expressions tab
4 Choose the Add mode and randomly create two more keys to the
right of the first key frame. You will notice that the new keys are
created for both curves so that they match as closely as possible.
5 With both curves selected you can also select key frames from both
curves and edit them. This can be very useful for making relative
changes to multiple curves simultaneously.
6 Click on Light.Position.X, which will automatically deselect
Camera.Position.Y. Create more keys for the Light.Position.X. Now,
you can see how to create portions of a curve that match and use
background curves as reference.
3 Use the bounding box (RMB) to select two or more of the keys. Notice
that the Frame and Value fields have changed to (mixed) because you
have selected multiple keys that also have different values.
4 Double-click in the Value field and enter 0. You will see that all
selected keys are now set to a value of zero.
Exercise: Footprints
1 Clear the scene and click the Graph Editor button.
2 Choose all Camera channels by double-clicking on the Camera in the
Scene List.
L I G H T WAV E 3 D 7 8.51
4 Since we plan to edit this curve, let's save its current state. Select
Footprints > Leave Footprint from the toolbar.
5 In the Move mode, edit some points on the graph; you will see a new
curve appear underneath that is lighter than the selected curve. This
is the footprint of the original curve.
3 Unselect all keys and then using the bounding box, select three keys
in the middle.
4 From the toolbar, choose Keys > Lock Selected Keys. The selected
keys will now appear gray. Any attempt to edit these keys will be
futile. This is a great way to protect keys from being accidentally
bumped. It also lets you experiment with keys around an area that
should be locked.
5 In the Move mode, select all keys. Now choose Keys > Unlock
Selected Keys.
L I G H T WAV E 3 D 7 8.53
6 Now try Keys > Invert Selected Keys from the toolbar. This will
reverse the order of all of the selected keys. You can invert them
again to get them back into place (or press the U key to undo the
edit).
4 Select all keys for just Camera.Position.X and choose Keys > Add to
Key Bin. Create a bin named CAM MOVE CURVE.
8.54 CHAPTER EIGHT: KEYFRAMING
6 Place your pointer at the end of the Light.Position.Y, open the Curve
Edit Window pop-up (CTRL+SHIFT+LMB) and choose Insert > Cam
Move Curve.
You have now appended the Light.Position.Y motion curve with the
keys from the Camera.Position.X curve! Press the A key to “autofit”
the two curves into the display.
Exercise: Favorites
1 Clear the scene and click the Graph Editor button. Place some of the
individual Camera curves into the Channel Bin.
L I G H T WAV E 3 D 7 8.55
2 Choose Create Set from the Channels pop-up menu just above the
Channel Bin.
3 Type the name of your set, perhaps MY FIRST SET.
4 Now, in the Scene List, double-click on the Light. This should replace
the contents of the Channel Bin with only the Light curves.
5 Select MY FIRST SET from the Channels pop-up. Your previous Camera
curves will now appear back in the Channel Bin.
3 The Graph Editor will appear with the surface’s three color channels
in the Channel Bin.
4 Create three random keys for each color channel. Note how the color
bar appears when a color channel is selected, but doesn’t change
when different color channels are selected. This is because it
represents all three color channels whether or not all three are
selected.
5 In the Move mode, try dragging one of the lower value keys up and
note the change in the color bar. It is reflecting the overall color
change based on the change in this one channel.
L I G H T WAV E 3 D 7 8.57
6 Now, select just the red channel and right-click on one of the keys.
Choose Open Color Picker from the pop-up menu.
7 Your color requester will appear. Select pure white (RGB 255, 255,
255) and click OK.
8 Notice that only the red channel was affected and the curve flies off
the graph.
9 Undo the operation by pressing the U key. Select all three channels
and select the white color again. Now all three channels are affected
and collectively create the color white. Note that keys were
automatically created for the other curves. (A quick way to get
grayscales is to just select all channels and create keys.)
8.58 CHAPTER EIGHT: KEYFRAMING
To use a channel motion modifier, select the target curve in the Graph
Editor’s Channel Bin. Then select the modifier from the Add Modifier
pop-up menu on the Modifier tab. Once added, click on its name in the
list to access its settings, if any. Channels with modifiers will have a
small dot to the left of their names in the Channel Bin.
NOTE
Modifiers that do not have an explicit additive option are generally
additive in nature.
NOTE
Also see the MasterChannel Scene Master plug-in discussed in Chapter
6.This lets you create custom user-defined channels.
L I G H T WAV E 3 D 7 8.59
AudioChannel
The AudioChannel modifier modifies a curve based on an audio file.
Click the Name button to select the file you want to use. The Value
Offset lets you move the entire motion up or down. (The units are the
ones used on the graph.) Waveform Scale is a multiplier. Thus, a value of
1 will have no effect. A value of 2 will double the values of the effect and
.5 will halve it. Use the Start Time to enter a frame number when the
audio should begin. The Filter Strength value will determine the
sampling frequency used to convert the audio into a curve. A higher
value will cause the curve to more closely follow the contours of the
audio’s sound wave.
ChannelFollower
See “SetDrivenKey.”
Cycler
This is a channel-oriented version of the Cyclist item motion modifier
discussed in Chapter 11.
8.60 CHAPTER EIGHT: KEYFRAMING
Select the controlling channel in the list window. The Controller Low
Value and Controller High Value settings define how much change is
required to equal one full animation cycle. The unit of measure for this
parameter depends on the selected control channel.
Expressions
Expressions are an advanced LightWave 3D feature that uses
mathematical formulas to modify the value of any animation channel.
Expressions let you make the motion of scene items dependent on other
item motions or factors in a scene. You could, for example, force an
object to stay between two other objects, keep feet from going through
the floor, or even control the entire posture of a character based on its
feet! The possibilities are endless.
NOTE
Many motion modifiers can be duplicated using appropriate
expressions. Since we at NewTek don't want to force you to hire a TD,
or learn calculus, we have wrapped some of the most common and
useful expressions into preset plug-ins—optimized for their
purposes—like Cyclist, Oscillator, Gravity, and so on.
The Expressions panel has four buttons: Copy, Paste, Load and Save.
The Copy and Paste functions work on a per-screen basis—if you type in
your full expression, you may click on Copy, open another channel up,
and then click on Paste and the entire expression is pasted in, including
scratch variables. Click on Save if you create an expression that you
want to use again in the future, and then you may Load it in to other
channels at your convenience.
The A, B, C, and D fields are scratch variables for the expressions.
Each of these can have an expression, which is evaluated before the
main expression. This means that the main expression can use the
variable A, B, C, and D for some other calculated value. The scratch
variables are evaluated in alphabetical order, so B can use A, C can refer
to A and B, and the D expression can contain A, B, and C.
L I G H T WAV E 3 D 7 8.61
WARNING
Using Expressions requires a strong background in mathematics and
computer programming.Transferring such skills in sufficient quantities
to your brain is well beyond the scope of this user documentation.
Check our web site and LScript documentation for more information.
Object References
An objects is referenced by its name (e.g., myBox, NULL (1),
Object:Layer1, etc.). Bones are addressed as an item of their parent
object in expressions, which allows bones with the same name in
different objects. Here is an example: NULL2.BONE1.WPOS(TIME).X.
The Scene object is the only pre-defined object in the system. All
other object references must equate to an object in the current scene.
Data Type Command Syntax
Built-in Functions
double sqrt(double)
double exp(double)
double log(double)
double sin(double)
double cos(double)
double tan(double)
double asin(double)
double acos(double)
double atan(double)
int random(int,int)
double vmag(vector | double,double,double)
(int | double | vector) abs(int | double | vector)
double ceil(double | vector)
double floor(double)
double cosh(double)
double sinh(double)
double tanh(double)
double mod(double | vector,double | vector)
double pow(double,double)
double rad(double | vector)
double deg(double | vector)
8.62 CHAPTER EIGHT: KEYFRAMING
vector wup(double)
vector wforward(double)
vector scale(double)
vector limits.pos.min
vector limits.pos.max
vector limits.position.min
vector limits.position.max
vector limits.rot.min
vector limits.rot.max
vector limits.rotation.min
vector limits.rotation.max
vector limits.right.min
vector limits.right.max
vector limits.up.min
vector limits.up.max
vector limits.forward.min
vector limits.forward.max
vector limits.pivot.min
vector limits.pivot.max
vector limits.wpos.min
vector limits.wpos.max
vector limits.wposition.min
vector limits.wposition.max
vector limits.wright.min
vector limits.wright.max
vector limits.wup.min
vector limits.wup.max
vector limits.wforward.min
vector limits.wforward.max
Mesh Object Methods and Data
double dissolve(double)
int points
int polygons
Light Object Methods and Data
vector color(double)
int points
int polygons
double coneangle.rad
double coneangle.radius
double coneangle.edge
Camera Object Methods and Data
double zoom(double)
double zoomfactor(double)
double focallength(double)
double focaldistance(double)
double fstop(double)
8.64 CHAPTER EIGHT: KEYFRAMING
double blurlength(double)
double fovhor(double)
double fovhorizontal(double)
double fovver(double)
double fovvertical(double)
Scene Object Methods and Data
int points
int polygons
int renderstart
int renderend
int renderstep
double fps
int width
int renderwidth
int height
int renderheight
double aspect
double pixelaspect
double aspectratio
int minspp
int maxspp
int recursion
int maxrecurse
int recursedepth
int usingTraceShadows
int usingTraceReflection
int usingTraceRefraction
int usingFields
int usingEvenFields
int usingMotionBlur
int usingDOF
int usingLR
int usingLimitedRegion
int lr.x1
int lr.left
int lr.x2
int lr.right
int lr.y1
int lr.top
int lr.y2
int lr.bottom
int limitedregion.x1
int limitedregion.left
int limitedregion.x2
int limitedregion.right
int limitedregion.y1
L I G H T WAV E 3 D 7 8.65
int limitedregion.top
int limitedregion.y2
int limitedregion.bottom
Selector/Converter items
double x (selects the first element of a multiple-
data type)
double y (selects the second element of a multiple-
data type)
double z (selects the third element of a multiple-
data type)
double h (selects the first element of a multiple-
data type)
double p (selects the second element of a multiple-
data type)
double b (selects the third element of a multiple-
data type)
int r (selects the first element of a multiple-data
type)
int g (selects the first element of a multiple-
data type)
int b (selects the first element of a multiple-
data type)
vector rbg (converts a vector data into color-
normalized data)
string asStr (converts int, double, vector to
string)
string asString
int asInt (converts string, double to integer)
int asInteger
double asNum (converts string, int to double)
double asNumber
vector asVec (converts int, double, string to
vector)
vector asVector
NOTE
A vector is a group of related values.They could relate to position
(x,y,z), rotation (h,p,b), color (r,g,b), etc.To get only one component,
use a selector as demonstrated below.
NOTE
Expressions react to interactively moved items, even if Auto Key is
turned off.
8.66 CHAPTER EIGHT: KEYFRAMING
NOTE
You may use XS,YS, and ZS as aliases for Scale.X, Scale.Y, and Scale.Z.
Sample Expressions
HeadLight.rot(Time).h returns the heading rotation value of the
HeadLight item at the current time.
Left.pos(Time).x + Right.pos(Time).x returns the sum of the Left and
Right items positions on the x axis.
<1,2,3>.y returns 2
<1,1,1>.rgb returns <255,255,255>
<.5,.25,1>.rgb returns <127,63,255>
BackLight.color(frame / Scene.fps).rgb returns RGB vector value for
color BackLight at a user-defined frame converted to a time index using
the Scene object's fps setting. The frame variable is returned to the caller
and can have its value explicitly set before each evaluation of the
expression.
2 * "1 2 3".asVec.y returns 4
((Scene.usingLR ? (Scene.lr.right - Scene.lr.left) : Scene.width) / 2).asInt
finds the horizontal center of the frame.
Oscillator
This is a channel-oriented version of the Oscillator item motion
modifier discussed in Chapter 11. The settings are identical, except the
channel is determined by which channel the modifier is added to in the
Graph Editor. The effect is always additive.
L I G H T WAV E 3 D 7 8.67
NoisyChannel
This modifier randomizes a channel.
The Offset lets you move the entire motion up or down. (The units
are the ones used on the graph.) The Scale parameter multiplies the
noise amount added in to the channel, so a factor of 1 will have a noise
effect, a factor of 0 will have no effect, 2 will double the effect, .5 would
halve it, and so on. Speed is the rate of change of the noise, basically like
a texture velocity. Phase shifts the effect in time.
The formula is: channel value = old value + scale * fractal noise(phase
+ speed*time )
SetDrivenKey
Using SetDrivenKey (aka ChannelFollower) is similar to parenting an
object to another, except you have control over which motion channels
8.68 CHAPTER EIGHT: KEYFRAMING
you wish to inherit. You can also modify and delay the inherited value.
Moreover, the motion can be inherited from the camera, a light, a bone,
or any object in the scene.
TextureChannel
This is a channel-oriented version of the TextureMotion item motion
modifier discussed in Chapter 11. It works exactly the same except that
you apply it directly to the channel you wish to modify. Since textures
are three dimensional, particularly procedurals, use the Axis setting to
use the X, Y or Z of the texture. (Note: The differences between the Axis
selection can be subtle.) You can also move the texture with the Offset
setting and change the size of the texture using the Scale setting.
chapter9
Object Properties
L I G H T WAV E 3 D 7 9.1
C hapter 9:
Object Properties
The Object Properties panel controls the settings for the current
object—the object last selected in Layout. It will be shown on the
Current Object pop-up menu on the Object Properties panel and
changed here as well.
NOTE
The Properties panel for the current editing mode (i.e., Objects, Bones,
Lights, etc.) can be displayed by clicking the Item Properties button
on the main Layout interface.
9.2 CHAPTER NINE: OBJECT PROPERTIES
CUSTOM OBJECTS
Use the Custom Object pop-up menu on the Geometry tab of the
Object Properties panel to apply a Custom Object plug-in to the current
object. Custom objects are usually used to change the look of a null and
give you additional visual feedback features. Like null objects, custom
objects do not render.
Many custom objects are used internally by other plug-ins, so you
may see some that are not listed below. ParticleFX, for example, uses
custom objects to create its emitters, winds, and so on.
Camera Mask
It is sometimes necessary to use a textured object for the background
instead of using a Background Image (Effects panel, Compositing tab)
for effects like casting shadows onto the background or when you want
to move the background around. The Camera Mask custom object can be
used to compute the exact Z distance needed to fill your camera view.
To use Camera Mask:
1 Model a flat Z-facing rectangle object with the proper aspect ratio. For
example, 640 mm x 480 mm for a 4:3 aspect ratio. Apply your surface
texture.
2 Load the object into Layout and parent it to the camera.
3 Add the Camera Mask custom object plug-in to the object. Enter the
object’s size into its options dialog and then close it. You will then see
a rectangle that represents the exact Z position where the object
would fill the camera view. The numeric value of this magic distance is
also displayed.
L I G H T WAV E 3 D 7 9.3
4 Now, adjust the Z position of the object. You will see a representation
of the camera view extend from the object with your textured
rectangle attached to the end. If you have a Camera Mask set on the
Camera Properties panel, it will be visible.
Note that when the object is selected, the camera’s mask will appear
as dotted lines. Otherwise, the mask will be the mask’s set color.
(Note: That you may see OpenGL display errors when the mask is
solid.)
5 Adjust the object’s Z Position to the magic distance. The object will
now fill the camera view.
You might also use a background plane with parts cut out, in
conjunction with a Background Image, so you can position things
between the plane and Background Image.
A cross (+) also appears, which marks the camera's Focal Distance
setting from the Camera Properties panel (see Chapter 13, “Depth of
Field”).
9.4 CHAPTER NINE: OBJECT PROPERTIES
Effector
The Effector custom object can be used with the Effector
Displacement plug-in, discussed later in this chapter. This custom object
is designed to give you better visual feedback in Layout about your
effector. Note that it does not directly communicate with the related
Displacement plug-in, so all settings must be set manually.
It has two modes to match the shape of the effector: Point and Plane.
When Effector Shape is set to Point, set the Solid Core Radius and
Falloff Distance to match those settings on the Displacement plug-in’s
panel. The arrows and dotted-lines indicate the falloff area. The solid-line
ball in the center is the solid core.
The Effector custom object in Point mode used with the Effector Displacement plug-in
When Effector Shape is set to Plane, the effector will look like a four-
sided plane. The Axis settings will become available, which you can set
accordingly. The other settings have no effect in this mode.
L I G H T WAV E 3 D 7 9.5
The Effector custom object in Plane mode used with the Effector Displacement plug-in
Item Shape
Item Shape lets you add a custom object where you can specify its
shape and look. The settings should be fairly obvious.
9.6 CHAPTER NINE: OBJECT PROPERTIES
Concentric rings
Protractor
Protractor sets up a custom object you can use to measure angles.
With the Shape setting you can make it a Full or Half circle. The Label
option places numerical labels at set intervals. Use the Show Mark
option to place a tick mark at a set angle. Use Show Range to highlight a
set range.
Protractor settings
Range Finder
Adding Range Finder to an object will display the distance in meters
from the selected item in the scene. The Draw Link option will draw a
dotted line between the items.
9.8 CHAPTER NINE: OBJECT PROPERTIES
Null objects work best. However, if you add this to a regular object,
you may want to use the Bounding Box rendering level (selected on the
viewport’s titlebar). Otherwise, the object’s surface may obscure the
numeric display.
Ruler
Adding Ruler to a null object provides a measurement device. You
can change the length of the ruler by stretching the object along the
selected Axis. The units of measure can be 1/10 of a meter or
feet/inches. The Draw Numbers option controls the display of the
numbers.
ShowCurve
ShowCurve displays an object curve in Layout—normally curve
objects are a modeling tool and cannot be seen in Layout. (If there is
more than one curve in the object, the first curve is used.) The color of
the curve can be adjust using the Curve Color setting on the options
panel. The Draw Cage option, when active, displays the “cage” of the
curve by connecting the vertices with dashed lines in a color of your
choice. The Draw Points option, when active, adds arrowheads to each
of the vertices to indicate the direction of the curve.
L I G H T WAV E 3 D 7 9.9
SockMonkey
The SockMonkey custom object plug-in draws bounding boxes for
links created in the main SockMonkey displacement plug-in, discussed
later. However, if you use the Auto-add Control Item button on the main
interface, this custom object plug-in is automatically added to the
created control item, so you don’t need to worry about adding this
manually. If instead, you use the Add Relationship option—where you
manually define the Control Item—, you can add this custom object
plug-in to get the bounding box.
Speedometer
Adding Speedometer to a null object allows you to measure the
speed of an item in meters per second. Choose the item whose speed
you wish to measure with the Item pop-up menu. Activate the World
Coords option to measure the actual speed based on world coordinates.
(You’ll probably want to do this if the item is parented to moving item.)
The Max Speed setting determines the value when the pointer is
pegged all the way to the right. Select Auto-Range to have the plug-in
determine the maximum. Note that the pointer can go past the maximum
if the speed exceeds it.
Speedometer
OBJECT REPLACEMENT
You can use special plug-ins to replace objects during the course of
an animation.
ObjList
ObjList replaces the current object with those listed in a text file. The
file is defined using a file requester that appears when you click the
Options button. ObjList works much like ObjectSequence, discussed
later, but the object replacement list lets you use objects in different
directories or even across a network. The file must be formatted as
follows:
#LW Object Replacement List
<replacement frame number>
<replacement object file>
<replacement frame number>
<replacement object file>
<replacement frame number>
<replacement object file>
The replacement object information is defined in pairs of lines. The
first line of the pair is the frame number at which the object is to be
replaced. The second line of the pair is the filename of the replacement
object, using a full path.
For example, to sequence through a series of box objects, this list
would be used:
#LW Object Replacement List
0
c:\Newtek\Objects\terrihendrix.lwo
10
c:\Newtek\Objects\lloydmaines.lwo
20
c:\Newtek\Objects\willoryfarm.lwo
The sequence of objects don’t need to be similar copies of the same
thing. You can replace the cow with a chrome teapot if you want to (and
you probably do by now).
The first paired lines must be the object you want at frame 0.
LightWave will assume this even if you enter a different frame number.
As such, if you used:
#LW Object Replacement List
35
c:\Newtek\Objects\box2.lwo
The Box2 object would still be loaded at frame 0.
ObjectSequence
ObjectSequence replaces an object with another one at a certain
frame of the animation. This replacement is like choosing Items >
Replace > Replace With Object File except that it happens during the
animation. ObjectSequence is to objects, what an image sequence is to
images.
L I G H T WAV E 3 D 7 9.13
However, if the meshing is performed first and then bones bend the
heck out of the object, you may get unwanted pinching in your object. In
this case, Last may work better since the conversion is not done until
after the SubPatch cage is deformed. Also, if you are morphing a
SubPatch object, you will want meshing to occur after the morphing
occurs (using After Morphing, Last, etc.). This is because the SubPatch
9.14 CHAPTER NINE: OBJECT PROPERTIES
object is really a control-point cage. If you mesh before the morph, you
are actually changing the shape of the control cage and unexpected
results will likely occur.
If you use a displacement map on a SubPatch object, you probably
want the subdivision to occur before the displacement (using First, etc.).
This will give the displacement more points to displace.
If you need to choose one of the in-between settings, here is the order
in which LightWave performs object deformations:
1 Morphing
2 Before-bones plug-in displacements
3 Bones
4 Object coordinate plug-in and built-in displacements
5 Motion (scale, rotate, move)
6 World coordinate plug-in and built-in displacements
NOTE
For an object to be a SubPatch object, it must be saved with the
SubPatch mode active. See Chapter 29 for more information on
SubPatch objects.
L I G H T WAV E 3 D 7 9.15
NOTE
See also the Level_Of_Detail Custom Object plug-in discussed earlier
in the chapter.
NOTE
See also the Level-Of-Detail Mesh Refinement custom object plug-in
discussed earlier in the chapter.
MORPH TARGETS
Metamorphosing, or Morphing, causes a 3-D metamorphosis from one
object into the shape of another object. Morphing requires a minimum of
two objects: a beginning object and a target object. These controls are
on the Deformations tab of the Object Properties panel.
NOTE
Using Endomorph objects, discussed later, simplifies the process by
keeping all target data within a single object file.This guarantees the
same number of points and helps to maintain point order.
NOTE
If you use an envelope, the Morph Amount will have no effect on the
result.
The Morph Target is the destination object (the object that the
current object will morph into). The target object itself can have its own
target and you may create a chain of up to forty targets. (Any number of
objects may be morphing within a scene.)
With Morph Surfaces you can cause the surface attributes (color,
texture, etc.) of the first object in a morph chain to convert to the
surface attributes of the second object. Even if additional objects are
morphing, only the first and second objects may use Morph Surfaces.
NOTE
Multi Target/Single Env with surface morphing will reflect only a surface
change during the first morph.
ANIMATING ENDOMORPHS
Using LightWave’s vertex map feature, all of your morph targets can
be wrapped up neatly into a single object, with point offset information.
This type of object is called an endomorph and the targets are referred to
as morph maps. (See Chapter 28 for information on creating endomorph
objects.)
L I G H T WAV E 3 D 7 9.17
NOTE
If you do not have Dynamic Update set to Interactive (Display Options
tab of the Preferences panel), you can get Layout to update as you drag
by holding the ALT key while you drag a MorphMixer slider.
The Reset button creates keys at 0% for all channels in the group.
4 Repeat the previous step for all of the keys you want to create.
5 Since the MorphMixer plug-in adds the morph maps as animation
channels, just like XYZ position, you can also use the Graph Editor to
manipulate values. If you click the Graph Editor button on the
MorphMixer panel, it will appear with the group’s channels already in
the curve bin.
The maximum number of morph targets in a group is 32. For larger
sets of morph targets, create additional groups. Use the Load and Save
functions to retrieve and save MorphMixer data from and to files on your
hard drive.
NOTE
If you use the Graph Editor, you must still add the MorphMixer
displacement plug-in to make the animation channels available, although
you do not have to open the MorphMixer options panel.
L I G H T WAV E 3 D 7 9.19
If you are lip syncing to audio, you can load an audio file (Scene
Editor panel) as a reference for setting your keys.
DISPLACEMENT MAPS
Displacement maps are similar to surface maps, which add color and
texture to object surfaces. (In fact, you can refer to Chapter 31 for
descriptions of the various displacement map settings.) However,
instead of affecting the way an object’s surface looks, displacement maps
move the points in an object, which changes its shape. The change can
be subtle or dramatic, making it look like a totally different object.
9.20 CHAPTER NINE: OBJECT PROPERTIES
NOTE
Remember that displacement mapping is saved in the scene file not in
the object file. If you want to load an object with its displacement map
information, choose File > Load > Load Items From Scene.
You can easily make blowing curtains, rippling water surfaces, and
bumpy terrain by applying a displacement map to an object. Although
the object’s points move around, the polygon relationships remain and,
thus, surfacing information follows the displaced polygons.
You can also factor the effect you would normally get from an image
map displacement using the Texture Amplitude setting. Use a value less
than 1 to lessen the effect or more than 1 to increase it.
6 Now, our object is only one meter wide. So to get smaller ripples,
change the texture’s Scale to 400mm for all axes.
7 Click the Play button in the lower right corner of the main interface.
The display updates automatically and we get better feedback as we
animate the texture. (Note: the flag won’t move yet.)
NOTE
If you don’t see anything, stop playback and choose Display >
Options: Display Options to open the Display Options tab of the
Preferences panel. Make sure the Bounding Box Threshold is at
least 5000 (a little more than the number of polygons in the object).
Start Play again.
8 You can animate the wave by animating the texture’s Position, which
is the center of the texture. Click on the Envelope button for the X
Position.
9.24 CHAPTER NINE: OBJECT PROPERTIES
9 The Graph Editor will appear. Select only the Position X for the
texture and add a key at frame 60 (the last frame in the scene) with a
value of about 2m. (You may need to adjust the graph zoom a little.
Just drag on the magnifying glass icon.)
If your scene is still playing, you should see your flag waving. We are
moving the texture two meters over 60 frames.
10 Now of course, if this were a real flag, it would be attached to a pole
and the left side would not wave as much as the right. We can
simulate this by moving the center of the texture and applying falloff
to the effect.
Set the texture’s Falloff to X = 100%. This sets the amount to reduce
the displacement per default unit, which should be one meter
(General Options tab of the Preferences panel). Now, the effect is in
full force at its center and reduced 100% at one meter from the center
(the left edge, since the flag is 1 meter wide). If you want a little more
movement towards the left side of the flag, reduce the Falloff value.
11 The flag is one meter wide, but its local Origin is at its center—you
could figure this out by looking at it in Modeler or where it loads by
default in Layout. Thus, the right edge is at 500mm. This should be
the starting point for the texture’s X Position.
L I G H T WAV E 3 D 7 9.25
Back in the Graph Editor, switch to the Move mode and drag the first
key (at frame 0) up, but not past 500mm.
As you drag, look at the layout viewport. You should see the texture
move to the right (along the X axis). Since you have falloff, as you
move the key, the falloff will begin at a different point—eventually the
right edge of the flag—and fall off completely at the left.
NOTE
When you animate the Position values, the Falloff center is based on
the Position at frame 0.
9.26 CHAPTER NINE: OBJECT PROPERTIES
12 To add a little more variance to the wave, you could add keys to the Z
position of the displacement map.
HINT
The Ripples displacement texture will not actually raise the surface,
but rather it spreads the points out across the surface. If you need to
create water ripples that appear to rise when you view the surface
edge closely, try using the Fractal Noise texture instead. Fractal Noise
will actually displace points out from the surface.
Bump Displacement
The Bump Displacement option uses the bump texture on a polygon
and vertex, and applies it as a displacement texture. The direction of the
displacement is set by the vertex normal, and the amount of
displacement is set by the Dist value.
Bump Displacement is great because it creates actual geometry
deformations from bump shading. (Remember, bump shading by itself
does not affect the geometry.) The result is better looking bump
contours, shading, and shadows.
This feature is especially good on SubPatch objects because their
detailed geometry allows the displacement to more closely match the
bumps and surface contours, particularly when Render SubPatch Level
(Object Properties) is set to high values.
DISPLACEMENT PLUG-INS
In addition to the MorphMixer Displacement plug-in, several other
plug-ins let you deform the object in various ways.
CurveConform
CurveConform uses a curve object to deform an object’s mesh. In
order to determine what part of the curve applies to what part of the
mesh, you must define an axis and a range of distances along that axis.
The axis is the direction in the mesh which will be transformed to lie
along the curve. The Range Start and Range End values define where
the beginning and end of the curve match up with the selected Axis.
9.28 CHAPTER NINE: OBJECT PROPERTIES
CurveConform deforms the cow. Stretch option is active.The ShowCurve custom object plug-in has been applied to the curve
object to make it visible.
The Flip option reverses the influence direction of the curve. World
Coordinates leaves the curve’s position fixed in 3-D space, deforming
only that part of the mesh that moves into its range.
Stretch alters the mapping of the range to the curve's arclength (the
length of the curve), so that the entire range exactly fits into the length
of the curve. This can cause stretching or compression of the mesh
along its axis.
When Align is enabled, the vertices are rotated, as well as translated,
so the mesh's “thickness” along the axis is preserved, like a bend
L I G H T WAV E 3 D 7 9.29
operation. This mode maps the range directly to the curve, so the Flip
option has the effect of flipping the mesh, but leaving the basic shape
the same.
The Curve Influence percentage blends the deformed shape with the
original un-deformed shape
Deform: Bend
Deform:Pole
The Effect Center is the center of the effect and scaling it will distort
the geometry. The Effect Corner defines the corner of the influenced
area. Use the sliders to shape the influence area.
Deform: Pole
9.30 CHAPTER NINE: OBJECT PROPERTIES
Deform:Shear
The setup for Deform:Shear is nearly the same as Deform:Bend. You
can also control how the effect is applied from the base to the handle by
using the two tension sliders. The top slider controls the beginning and
the bottom one controls the end. Use the Preset pop-up to select from
some common settings.
Deform: Shear
Deform:Taper
Deform:Taper works just like Deform:Shear, except that you size the
handle instead of moving it.
Deform:Taper
L I G H T WAV E 3 D 7 9.31
Deform:Twist
Deform:Twist works just like Deform:Shear, except that you rotate the
handle instead of moving it. The center of the twisting is defined by the
base object.
Deform:Twist
Deform:Vortex
The Effect Center is the center of the effect and rotating it around the
selected Axis will distort the geometry. As such, if you select the X axis,
you rotate the object’s pitch; for Y, you rotate heading; and for Z, you
rotate bank. The Effect Corner defines the corner of the influenced area.
Use the sliders to shape the influence area.
Deform:Vortex
HINT
Add Deform:Vortex three times using a different Axis setting on each
to have full rotational influence.
9.32 CHAPTER NINE: OBJECT PROPERTIES
DisplacementTexture
Use Displacement Texture to use a texture as a displacement map.
Ah, so you say you can already do this with the Displacement Map
function. Well, smarty-pants-brain-boy, using the plug-in lets you order
the deformation when you use multiple displacement plug-ins. For
example, Motion Designer totally overrides any effect the Displacement
Map function has. With Displacement Texture, you could place it after
Motion Designer.
Effector
Effector causes effector objects to repel or attract the points of the
affected object. The effector objects may be any objects you wish, but
Null objects work best.
Effector in action
L I G H T WAV E 3 D 7 9.33
Expression
Expression is a sister plug-in to the Expression channel modifier (see
Chapter 8). You use it in the same way.
You can set independent expressions for the XYZ point displacements
using the Channel pop-up menu.
Some global options are available that are not on the channel
modifier version. The After Bones option will cause the displacement to
occur after bone displacement. With World Coordinates checked, the
XYZ variables in the expression are in world space, not local space.
HyperVoxelsParticles
The HyperVoxelsParticles Displacement plug-in lets you set the base
color for a hypervoxels particle to the color of the vertex color map, if
one exists.
9.34 CHAPTER NINE: OBJECT PROPERTIES
Inertia
Inertia creates lazy points. It will delay the point positions in an
object, and cause them to catch up over a period of time.
Lag Rate (s/m) is the amount of delay (in seconds) for points that are
one meter away from the pivot point of the object—points closer or
farther will be adjusted accordingly. If you had the pivot point for the
cow object at the tip of her nose and moved her forward, her nose would
move with the pivot point; however, the rest of her would be delayed. If
you set Lag Rate to 1, then the portion of the cow that is one meter from
her nose would be one second (30 frames) behind.
Normally, the object’s movement triggers the effect; however, you can
point at a different object instead by using Inertia Pivot Object. Then,
the object doesn’t even need to move to get the effect. Inertia Pivot
Object replaces the item's pivot point, and becomes the center from
which the inertia acts. Points farther away from this center have a larger
delay in their animation—they are delayed by a time equal to the
distance multiplied by the Lag Rate. Activating Local Pivot uses the
pivot point’s local coordinates rather than world coordinates.
You can also specify a weight map. Zero weighting will result in no
delay for those points. Using 100% is the same as not using a weight map
on those points.
Joint Morph
JointMorph drives an endomorph based on the angle of a bone. This
displacement function replaces the common, but cumbersome, use of
Morph Mixer in combination with an expression or plug-in to control the
L I G H T WAV E 3 D 7 9.35
morph channel based on a bone angle. This would allow you to, say,
bend an arm using bones, but also control a morph map that might bulge
muscles.
To use, just choose a Bone from the endomorph. This will be the
bone whose rotation will affect morphing. Next, activate which rotations
should influence which morph maps. They can be different, so changing
the heading would morph to a different morph map than changing the
pitch.
The Angle Minimum and Angle Maximum angles correspond to the
Morph Minimum and Morph Maximum morph percentages. So when the
bone heading is at the Angle Minimum, the morph will be applied at the
Morph Minimum percentage. As the angle increases to the Angle
Maximum, the morph increases to the Morph Maximum. There is no
limit applied to the morphing, so going beyond the range of angles
results in morph percentages beyond the range of morphs.
Morph Mixer
For information on Morph Mixer, see “Animating Endomorphs” earlier
in the chapter.
NormalDisplacement
NormalDisplacement can displace each vertex either along its normal
or using morph maps. NormalDisplacement differs from regular
displacement in that with regular displacement, the direction is fixed by
the user (or texture). With NormalDisplacement, the displacement is set
by the geometry, an effect similar to using Smooth Shift in Modeler.
9.36 CHAPTER NINE: OBJECT PROPERTIES
NOTE
A vertex’s normal direction is the average of the polygon normals it is
connected to.
NOTE
Play your scene while tweaking the settings to get real-time feedback.
Serpent
Serpent is a displacement plug-in that deforms an object so that it
hugs its path. The object is expected to travel along some axis of
alignment.
Serpent in action
Alignment Axis sets the axis along which the object will be aligned.
The Start Frame and End Frame parameters turn the deformation on
and off at those frames, respectively.
Object deformation is usually not pretty when the object slides past
the Start Frame and End Frame. To get around this glitch, give the
object a nice straight lead-in, possibly with a linear keyframe. The length
9.38 CHAPTER NINE: OBJECT PROPERTIES
of this segment should be about the length the object extends past its
center (0,0,0 in Modeler). Also, let the motion path and end frame extend
beyond the end of your intended animation, or end with a nice straight
segment along the Alignment Axis. Don't make the bends in the curve
too sharp relative to the thickness and subdivision level of the object.
Serpent is computationally intensive. Using the following steps will
maximize your efforts:
• Set up the motion path (i.e. keyframes) before applying the plug-in to
the object.
• Apply the plug-in to a low-polygon-count stand-in object and refine
your Scene.
• Use Items > Replace > Replace With Object File to replace the stand-
in object with the finished version.
NOTE
Serpent does not work well with Align To Path controllers (Motion
Options panel) activated for the object.
SockMonkey
SockMonkey is an animation plug-in that uses scene items—typically
null objects—to deform an object's mesh. You can deform an object like
it is a puppet.
SockMonkey parallels bones in many respects. You may want to use it
if it matches your animation style. One big difference, however, from
using bones is that the control objects are external to the object.
L I G H T WAV E 3 D 7 9.39
SockMonkey panel
you must have, say, a null object called Shoulder. Note that this
operation will not position the scene items like Auto-Add Control Item
does.
NOTE
Control items don’t have to be null objects, although this is usually the
case.They can be lights or even cameras.
Batch Operations
Use Enable All Relationships and Disable All Relationships to
activate or deactivate all of the group/control item relationships.
The Edit All Rest Positions option allows you to edit the rest position
for all control items.
The Remove Relationship button removes the group/control item
relationship for the selected group. You can also remove all relationships
in one step.
L I G H T WAV E 3 D 7 9.41
WARNING
Excessive use of this plug-in has caused certain side-effects in
laboratory animals, including dry-mouth and bloating.
DISABLING DEFORMATIONS
The Enable Deformations On/Off command (Motion group) can be
used to temporarily disable deformations (i.e., morphing, bones,
displacement plug-ins, and displacement maps) in order to improve
interactivity when editing other aspects of a scene. Assign this to a menu
or keyboard shortcut for easy access, if you need it.
CLIP MAPPING
The Clip mapping function, located on the Rendering tab of the
Object Properties panel, offers a way to quickly alter an object. Basically,
it allows you to cut away portions of an object using a texture. This is a
great way of creating 2D pop-ups, as well as holes, tears, or grids in
objects without having to model them.
Rendered image
HINT
If you need a partial-clip effect, try using a surface transparency map
instead.
HINT
Place a clip-mapped flat polygon outside the camera view to fake
shadows through grids, trees, or a window, using shadow maps. Use
this where a shadow-mapped light source doesn’t result in the correct
shadow due to features like a transparent surface.
L I G H T WAV E 3 D 7 9.43
OBJECT DISSOLVE
Entering a value for Object Dissolve on the Rendering tab of the
Object Properties panel will cause LightWave to render the object in a
semi-dissolved state. If you enter 100 percent, LightWave will not render
it at all. Since the value supports envelopes, you can change the dissolve
amount over time. For example, you may wish to slowly dissolve clouds
in on a rainy day, or replace one object with another by dissolving them
in and out in the same frame.
NOTE
The appropriate properties panel will appear based on the current edit
mode (Objects, Bones, Lights, or Cameras) when you press the P key
or click the Item Properties button.
The object above is shown at 100% Object Dissolve. (It’s also a polar bear eating an ice cream cone in a snow storm.)
9.44 CHAPTER NINE: OBJECT PROPERTIES
NOTE
Wireframe objects that are 100-percent dissolved will be visible in the
Layout window only if they are selected.
NOTE
You can deactivate an object on the Scene Editor which is effectively
the same as 100% Dissolve.
DISTANCE DISSOLVE
Activating Distance Dissolve lets you automatically dissolve the
current object out after it has moved a certain distance from the camera.
The Max Dist value determines the distance at which the object should
be totally dissolved. The dissolve is gradual, thus the object will
generally have some amount of dissolve any time it is between the
camera and the Max Dist.
HINT
Underwater particles and moving stars often benefit from Distance
Dissolve.
HINT
For explosions, you might want to further cut up your object with the
Knife tool. Also try enveloping object sizing so that the polygons move
quickly at first and then slow down as they dissolve. Adding some
carefully timed lens flares would be a nice touch, too.
L I G H T WAV E 3 D 7 9.45
Particles are most often used for star fields, but they can also be used
to simulate smoke, jet exhaust, and sparkles, particularly when used in
conjunction with some special surface shaders. Lines can be used for
items like brush bristles, a field of wheat, and hair.
NOTE
The Particle/Line Thickness setting has no effect on objects that are
not particles or lines.
HINT
To create starfields, use some of the provided starfield objects, which
are really just single-point polygons arranged in the shape of a huge
hollow ball.You can even use the same object a few times, each with a
different rotation and Particle/Line Thickness value. Place the
camera in the center of the point balls.
UNSEEN BY RAYS
Selecting Unseen by Rays for an object tells LightWave to ignore the
object in its ray-tracing calculations when reflection and refraction are
involved. This means that the object will not appear in the reflections or
refraction of another object. It will, however, render normally in the
scene. This is especially handy for objects that are front projection-
mapped; you probably do not wish them to show up in the reflections
within other objects. Unseen by Rays will not affect the shadow options
of a given object.
UNAFFECTED BY FOG
Objects that have Unaffected by Fog selected will be excluded from
the fog effect. Also, the fog Level setting, to the right of the Unaffected
by Fog option, will let you apply an amount less than or greater than
normal. Normal is 100%.
UNSEEN BY CAMERA
An alternative to making an object 100-percent dissolved is to activate
Unseen by Camera. This makes the object invisible to the camera when
you render; however, you will still be able to see it and work with it in
the Layout window.
Although the camera won’t see these objects, lights will. You can use
this option to cast fake shadows into your scene from off-screen objects,
like window pane frames.
L I G H T WAV E 3 D 7 9.47
Judicious use of the Self Shadow, Cast Shadow, and Receive Shadow
options (Rendering tab) for the objects in your scene can greatly speed
up rendering times for both ray-traced and shadow-mapped lights.
Deactivate Self Shadow if you do not want or need an object to cast
shadows on itself. An egg is a good example of an object that cannot cast
shadows on itself. A tree on the other hand is a prime candidate for Self
Shadow.
OBJECT EXCLUSIONS
You can exclude any set of lights, as well as radiosity and caustics,
from the shading of any object. Simply click in the Exclude column to
activate the exclusion.
If for some reason you need the excluded lights to continue to cast
shadows, deactivate the Shadow Exclusion option. When this global
setting is not activate, all lights will cast shadows even if they are
L I G H T WAV E 3 D 7 9.49
excluded. You will need to add the Shadow Exclusion command (Lights
command group) to a keyboard shortcut or menu to access it. Note that
adding to a menu may be preferable so you can see its current state.
POLYGON EDGES
Normally, the actual edges of polygons do not appear in a rendered
image. However, in some instances you may want the edges to show. The
polygons themselves are still rendered with all surface characteristics,
and outlines are added. Edge Color sets the color of visible polygon
edges.
For example, you might want the finished animation to be done in
wireframe with respect for hidden lines. (To see the full outline, use the
Render Outlines on the Surfaces Editor’s Advanced tab. LightWave also
lets you add a cel look to your rendered images, like the look you see in
cartoons.
Polygon and surface edges are broken down into edge types that you
can activate independently. You may also define a pixel width. You have
great control over how cel-look objects are outlined.
The images from left to right are examples of different polygon edge
effects:
9.50 CHAPTER NINE: OBJECT PROPERTIES
HINT
To create a solid-wireframe animation, use the same Surface Color
(Surface Editor) as the Backdrop Color (Effects panel) and select all
Edges with a contrasting Edge Color.
Edges can also get smaller as they move away from the Camera by
activating the Shrink Edges with Distance option. The Nominal Distance
setting determines the arbitrary distance from the Camera at which the
edges are at their defined width. As the object gets farther away, the
edges will get smaller.
The far left image shows how the object looks with Silhouette Edges.
The Shrink Edges with Distance option is active in the middle picture
and the Nominal Distance is set to 3.6m, which coincidentally happens
to be the same distance the Camera is away from the object. Moving the
object away from the Camera, you can see the edges getting smaller. The
picture on the right shows how the frame looks if the Shrink Edges with
Distance option is inactive.
Edge Z Scale
When pixels of a polygon edge are rendered, they will have depths
that are approximately equal to those of the polygon that they belong to.
This means that some of the pixels will be visible while others will be
hidden, which could result in broken-looking edges.
L I G H T WAV E 3 D 7 9.51
NOTE
It is unlikely Edge Z Scale values outside the range of .95 to 1.0
would ever be necessary.
SASQUATCH LITE
Sasquatch Lite allows you to quickly and easily create a variety of
effects such as grass, fur, and hair on your objects. Sasquatch Lite uses
its own rendering engine to render the hairs quickly and combine the
results seamlessly with your LightWave objects. Sasquatch Lite is a very
simplified version of the commercial plugin Sasquatch from Worley
Laboratories.
To use Sasquatch Lite to create fur effects, you need to apply two
plugins to your scene: the SasLite displacement plug-in (added on the
Object Properties panel) and the SasLite pixel filter (added on the
Processing tab of the Effects panel).
You “teach” Sasquatch Lite about what object(s) grow hair by adding
the displacement plug-in on those objects. The hair attributes like color,
length, and density are defined in the displacement plug-in's interface.
Each object can have its own hair with its own style. You can even add
multiple copies of the displacement plug-in to an object to add layers of
hair.
The rendering engine is controlled by the single pixel panel interface.
This panel allows you to set global options such as antialiasing, and
shadow control.
9.52 CHAPTER NINE: OBJECT PROPERTIES
The large radio buttons in the upper left of the interface allow you to
restrict the fur to appear only on certain surface(s) by entering the name
L I G H T WAV E 3 D 7 9.53
in the Surface Name(s) field. You can use the wildcard character "*" to
select multiple similar surfaces, so "Fur*" will select surface names like
"Fur_back" and "Furry head". The entry is not case sensitive.
The basic color of the fur is selected with the Fiber Color setting.
Real fur and hair have a range of hues, and you can approximate some of
this variation with the Hue Vary and Bright Vary controls. These will
vary the color shade and brightness of each hair randomly to give a
more natural range.
The fur will react to the lights in your scene. Fur is usually much
more sensitive to lighting direction than normal solid surfaces, so you
often need to spend extra time to get the effects you're looking for. This
sensitivity is inherent in real hair and fur too; we're used to looking at
solid surfaces like wood and stone, but the thin fibers of hair react very
differently. SasLite's shading captures these differences, but it does mean
that you have to learn to understand the lighting more carefully than
normal LightWave shading.
Like normal surfaces, SasLite fibers have Diffuse, Specular, and
Glossiness attributes. These allow you to change the way the hairs react
to light. Specularity is particularly important, but is also very sensitive.
The thickness of individual fibers is controlled by Coarseness. Human
hair is very thin, but you can create much wider strands, even thick
porcupine quills or grass stalks by using large enough values.
Fur and hair fibers are rarely completely straight. You can make the
fibers “wiggle” more by using the Frizz control.
Fur Density determines how many fibers are added to your object
surface. Length is the maximum length of each fiber. Both of these
controls are relative to the basic size of your object. This makes setting
values much easier, since you don't have to think about the size of your
object as much. Both Length and Density are non-linear, so doubling the
value will give you much more than double the amount of fur or length.
This makes adjustments easier overall, since it eliminates extreme cases
which might require bizarre settings like 100,000 percent!
The length of each fiber is partially randomized to give a more natural
variation The length you specify in the interface is the maximum length.
Drooping controls the way fibers bend downwards from gravity.
Clumping makes the fibers cluster together in groups. This control
sets the number of fibers in each group, and Clump Size sets the width
of each clump.
The direction of the fibers can be biased in a “combing” direction.
This combing is in object coordinates, so it is safe to move and rotate
your object in Layout without worrying about the fibers changing their
orientation. The Comb X, Y, and Z controls let you specify this combing
direction and strength.
9.54 CHAPTER NINE: OBJECT PROPERTIES
Rendering
The SasLite pixel filter controls control the rendering engine used to
generate the final fur effects. This engine is independent of LightWave's,
so it has its own controls for antialiasing and shadowing.
Long Hair
SasLite has a very simplified version of Sasquatch's system for
rendering long hair. The shape and path of the hair is defined and
animated by the use of “guide geometry,” which are chains of two-point
polygons. When you render, SasLite adds bundles of hair which follow
these guides. The advantage to this method is that you can create, style,
and animate the hair using all of LightWave's tools.
You can create guides easily in Modeler. Just make some points. Then,
select the first two points and hit the P key to make the polygon. Select
the next set of two and hit P again. Do this for the length of your guide.
This creates the proper kind of guide that SasLite needs. You can clone
the chain, or load pre-made chains, to define the hair shape. (Use the
Polygon Statistics panel to select and delete any non-two-point
polygons.)
You can make the guide as simple or complex as you like (including
making knots, bows, or even braids), but it has to be a chain of two-point
polygons. The root end of the chain must have a different surface name
than the chain itself. SasLite needs this marked end so that it knows
which end of the chain to grow from.
This end surface can be as simple as an extra one-point polygon
placed at the root end of the chain. In practice, it's easiest to make one
extra point at the end of the chain, then name the last two-point polygon
something like “Root”. You can then move the first point on top of the
second point to hide this extra link if you don't want it to show. You
might name the surface of the rest of the chain “Hair”.
To use guides, enable the Make long hair using guide chains option
on the displacement plug-in. Enter in the surface name of the “hair”
guide in the Surface Name(s) field. Remember that the hair needs to be
attached at the root to another surface (any surface) so SasLite knows
which direction to grow from.
Lock Width specifies how wide the bundle of hair is relative to the
length of the guide. Fiber Density controls how many fibers are created
along the guide you create. This may be a low number if you have many
guides, but you can make thick ropes by using a high enough setting.
Clumping is still active with long hair, so adjusting Clump Size can
change the way the fibers cluster together. Smaller values tend to look
best.
If your first trials with hair create “explosions” of hair, you should
decrease the Clump Size and Lock Width of the hair until it's under
control and following the guide more closely. You can then increase the
values (slowly) until you get the volume and thickness you want.
SasLite’s settings are also greatly influenced by the scale of your objects.
You may find that you have more control using smaller objects.
Also, often your guides will be hidden in the hair. If they are visible,
just dissolve them out as you would any object.
9.56 CHAPTER NINE: OBJECT PROPERTIES
C hapter 10:
Bones and Skelegons
Bones isn’t a reference to a certain doctor on a certain sci-fi TV show.
Adding bones to an object lets you animate the object by deforming its
shape in a very controlled manner. Dancing gas pumps and credit cards,
beating hearts, and undulating ghosts can all be animated with bones. In
many respects, LightWave bones operate just like the bones (and
muscles) in your own body, which when moved, change your own
physical shape. In fact, bones are referred to as an object’s skeleton.
They are often set up like an actual skeleton, particularly when used
inside an object that might have a bone skeleton in real life, like a
person. Here all of the bones have parent/child relationships. This works
well because when you, for example, rotate the bone in the upper arm,
all of its children (farther down the chain) rotate with it.
Bones function by first holding a default rest position and rest rotation.
After this, anytime a bone is moved, rotated, or sized away from its rest
settings, the object will deform. How much the object deforms is based
on the number of bones, their ranges of influence, and their relative
strengths. It helps to think of bones as magnets that attract parts of an
object (those closest to the bone) as the bone is moved, rotated, or
sized away from its rest settings. Bones play against each other, so you
usually need at least two. A single bone will affect every point within an
object (unless an influence range is used).
NOTE
Because bones are generally set up in a hierarchy, they are often used
with LightWave’s Inverse Kinematics system.
NOTE
As with displacement and clip maps, bone information is saved as part
of a scene file and not as part of an object. In order to load an object
and its bones into a scene, use Load From Scene.
BONE-FRIENDLY OBJECTS
Since objects can be greatly deformed by bones, it is a good idea to
get into the practice of using three-sided polygons in order to keep
rendering errors from appearing. Tripled polygons, by their very nature,
cannot be non-planar and therefore will render correctly.
SELECTING A BONE
You can select a bone to edit as you would any item in layout. The
Bones panel can be displayed by selecting a bone and then pressing the
P key. From this panel you can switch between different object skeletons
(i.e., bone hierarchies).
L I G H T WAV E 3 D 7 10.3
NOTE
It is very important to understand that each object in a scene can have
its own independent bone hierarchy.
HINT
Since you are often adding multiple child bones, remember the
shortcut (=) to immediately add a child bone.
NOTE
You will be prompted for a name when adding bones. Click OK to
accept the default.
10.4 CHAPTER TEN: BONES AND SKELEGONS
To change only the activation state of a bone (and not adjust the rest
position), you can: use CTRL+R to toggles the state, use the Bone Active
option on the Bones Properties panel, or use the activation checkbox on
the Scene Editor.
NOTE
When adjusting a chain of bones individually you’ll need to keyframe
each bone (or use Auto Key Create on the General Options tab of
the Preferences panel) before moving on to the next bone.
When you use the Record Bone Rest Position command, LightWave
sets the rest position by copying the bone’s current position and
rotation values to the Rest Position and Rest Direction values (Bones
panel). This creates a point of reference, so if you later move the bone
(not the object), it can influence the object’s shape.
If you need to reset the rest position, you may want to deactivate the
bone before reapplying the Record Bone Rest Position command.
Alternatively, you could manually edit the Rest Position and Rest
Direction values.
SKELEGONS
Another way to create a bone hierarchy is to use LightWave’s
skelegon feature in Modeler. Skelegons are a polygon type that can be
added to your object in Modeler; they look like bones. You can create a
complete skeletal structure out of polygons, hence the name skelegons.
Skelegons set up only placeholders for the bones. When you load an
object with skelegons into Layout, the skelegons must first be converted
to bones before you can use them for skeletal deformation.
There are several advantages to this system. First, you can use
existing points in a character to create the skelegons, if you wish, or you
can draw your own skelegons manually. Having this function as a
modeling tool makes the creation process much easier, as building a
10.6 CHAPTER TEN: BONES AND SKELEGONS
NOTE
Remember that skelegons are only placeholders for bones. Also, there
is no way to convert bones back into skelegons.
Drawing Skelegons
Like drawing bones in Layout, you can use the Draw Skelegons tool to
draw skelegons directly into a Modeler layer. Just choose Create >
Elements: Skelegons and drag your mouse. When you release the mouse
button a skelegon is created. With the tool still active, you can drag your
mouse again to create yet another skelegon attached to the first. Select
the tool again to turn it off.
L I G H T WAV E 3 D 7 10.7
Drawing Skelegons
You can customize the Name used for each skelegon, as well as the
Weight Map name, on the numeric panel. When Digits is active on the
numeric panel, bone names are incremented, like Bone01, Bone02, and
so on. You can specify the initial number in the Start At field. If the Part
Tag option is active, the bone name will also be used as a Part name
automatically. Click the Delete Last button to delete the last skelegon
being created.
The lower portion of the dialog combines the functions of the Bone
Weights plug-in (Map > Weight & Color: Bone Weights), discussed later.
Activate Fill Weight Map to gain access to these functions. Remember
that weight maps are part of geometry, not skelegons. Thus, you need
some geometry in the foreground to use this feature. The weight maps
will be automatically created for the geometry.
10.8 CHAPTER TEN: BONES AND SKELEGONS
Note that you can also activate the Fill Weight Map option after you
have finished drawing your Skelegons or even toggle it on and off. This,
however, must be done prior to making the Skelegons, by dropping or
switching the tool.
Define the base weight map name in the Weight Map field. The maps
will be named sequentially (e.g., Bone01, Bone02, and so on). The Falloff
setting corresponds to the falloff that you can use on bones normally
when you are not using weight maps. (See “Falloff Type and Limited
Range”, later in the chapter). The resulting weight maps will give you a
nice starting point for modifying bone influences.
The Threshold Value is a distance from the bone that defines a
capsule-shaped region.
The Use Threshold pop-up has several settings. This will take the
weight value at the Threshold Value distance and either: ignore it (Off);
set all weights outside the distance to 0 (Clip); subtract the threshold
weight from all weights, so the weights go smoothly to 0 at the
threshold, then start to become negative (Subtract); or subtract the
threshold weight value as above, then clip the negative weights to 0
(Blend).
NOTE
The resulting bones will have only a 0 degree bank if they are drawn in
the Top view, assuming you do not adjust the skelegon rotation handle.
Make Skelegon
Another way to create skelegons is to create curves first. You can
then convert the curves into skelegons, which will be placed between
the curve knots (points). With Make Skelegon, you can even use points
from the object to create the curves.
To use Make Skelegon:
1 In an open Modeler layer, create points that will correspond to the
bases and tips of the bones you want to eventually create. (You’ll
probably want the object to be boned in the background for
reference.)
2 Select points, working from the (theoretical) base of the first child
bone to the tip of the last bone in the chain. Then choose Create >
Elements: Make Curve > Make Open Curve to create an open-ended
curve with your points.
10.10 CHAPTER TEN: BONES AND SKELEGONS
3 Repeat the previous step for all chains, if you have more than one.
You can use the same point in multiple chains.
If you desire, you can select and delete the curve afterward.
5 If you want, you can optionally cut and paste the skelegons into the
layer with the normal object geometry.
Editing Skelegons
You can edit existing skelegon (chains) by simply selecting the lowest
skelegon in the chain you wish to edit. Then, choose Detail > Other: Edit
Skelegons. You can also edit skelegons along with an object’s normal
polygons by selecting them at the same time.
If you want the skelegons to use the same points as your object, copy
the points you want to use as beginning and end points for the skelegons
to an empty layer. Use the Make Skelegons command. Then cut and
paste the skelegons into the normal object layer. Finally, merge points.
L I G H T WAV E 3 D 7 10.11
Splitting Skelegons
You can split selected skelegons in two using the Split Skelegon
command (Construct > Subdivide: Split Skelegon).
The Weight Map column lists associated weight map names. Double-
click in the Weight Map column to specify a weight map.
10.12 CHAPTER TEN: BONES AND SKELEGONS
The same points will be used, but the connections will change to
reflect the revised hierarchy.
You can rename a skelegon by double-clicking its name in the list and
entering the new name in the dialog that appears. The names you assign
become bone names when the skelegons are converted to bones in
Layout.
You can also rename a skelegon by selecting it in the viewport and
then executing the SkelegonRename command.
2 Choose Items > Add > Bones > Convert Skelegons into Bones. This
converts the skelegons, which are only placeholders, into actual
bones. Note that the bones are immediately ready for action. Rest
positions are set automatically and bones are activated.
3 If your skelegons were in a Modeler layer by themselves, you need to
point the regular object to the newly created bones. Select the regular
object and then open its Bone panel. Select the skelegon object in the
Use Bones from Object pop-up menu.
NOTE
If you want, you can simplify the process by cutting and pasting the
skelegons into the same layer as the object before saving.Then you can
avoid the Use Bones from Object feature.
BONE STRENGTH
Bones work against each other. Thus having only one bone with
unlimited range in an object is the same as having no bones—the entire
object is affected by the changes to the bone. The real power of bones
appears when you have more than one bone in an object.
When you have more than one bone present, each bone will affect the
points closest to it more strongly (again, assuming unlimited range for
each bone). For this reason, it is common to place strategic anchor bones
that do not move, to keep selected parts of objects from being deformed
by other bones in the object.
Whenever two or more bones are present, Strength (Bones panel) will
determine the influence one bone has over another when ranges of
influence intersect. If the option to limit the bones range is inactive, all
points within the object are considered completely within the influence
range of each bone.
A bone with a Strength value double that of another has twice as
much influence over points than the weaker bone. Pulling these two
bones equally in opposite directions would cause the object to move
toward the bone with greater Strength. The object, however, won’t move
10.14 CHAPTER TEN: BONES AND SKELEGONS
completely with the stronger bone because the weaker bone still exerts
some influence. If the bones had equal Strength, the object would not
move at all, as each exerts the same amount of Strength on the object.
L-R:All bones equal; Middle bone stronger; and Middle bone weaker
NOTE
Remember that weight maps are created in Modeler.The maps are
assigned to bones in Layout.
Below, the appropriate weight maps have been assigned to each bone
using the Bone Weight Map pop-up menu on the Bones panel. So now if
you bend the bones in the middle finger, they affect only points with
non-zero weights in the weight map for the middle finger.
Below, three different weight maps have been applied to a finger; one
for each bone. Since the screenshots are not in color, it is difficult to see
10.16 CHAPTER TEN: BONES AND SKELEGONS
the true falloff of the weight map; however, you can see that the different
weight maps will allow deformation more in some areas and less in
others.
The Additive option adds the weight to any existing value. So if both
left and right arm bones were named armbone.01, the weight map would
show the effects from both arms. The Threshold Value is a distance from
the bone that defines a capsule-shaped region. Using Threshold Value
will take the weight value at this threshold distance and either: ignore it
(Off); set all weights outside the distance to 0 (Clip); subtract the
threshold weight from all weights, so the weights go smoothly to 0 at the
threshold, then start to become negative (Subtract); or subtract the
threshold weight value as above, then clip the negative weights to 0
(Blend).
Weight Normalization
If for some reason you want weight maps to be the sole control for
influence, activate the Use Weight Map Only option. You should also
activate the Weight Normalization option, and your bone influences will
normally be scaled based on distances and weight map. If you deactivate
Weight Normalization, only the bone’s weight map is used, which can
cause wild influences unless the map is made of precise values.
Left: Normal effect lifting a center bone. Right: Using the weight map
Left: Use Weight Map Only active. Right: Weight Normalization inactive
AREA OF INFLUENCE
Bones are represented in Layout as pyramids that connect at the
base. Although it appears as if a bone has a specific base and tip (and for
rotational purposes, it does), the area of influence of a bone is equal
around it. The length of a bone is adjusted by changing its Rest Length.
You can use either the Bone Rest Length Tool (Objects > Bones: Rest
Length) or adjust it numerically on the Bones panel.
L I G H T WAV E 3 D 7 10.19
A bone
NOTE
Generally, proper use of Falloff Type will make using Limited
Range, discussed subsequently, unnecessary in most cases.The Falloff
Type affects all bones in a particular object skeleton.
10.20 CHAPTER TEN: BONES AND SKELEGONS
Min is very powerful and points within this range are greatly
influenced by the bone, following the bone movements exactly (unless
an extremely small bone Strength is applied to the bone). Max
determines the gradual falling off point of a bone’s influence. The
strength of the influence falls off from the edge of the Min down to 0 at
the Max. Any points falling outside of this range are not affected at all by
the bone.
Generally, to get the best effects from using bones, you should either
use bones that all have unlimited range, or that all have limited ranges.
Character animation is generally easier using limited ranges on all bones.
Often you will want your Min and Max to be equal. Typing in a Min
that is bigger than the Max will increase the Max to the same size.
Likewise, typing in a Max smaller than the Min will force the Min down.
NOTE
The joint is always located at the base of the current bone. Adjusting
Joint Compensation for Parent is not the same as adjusting the
parent bone’s Joint Compensation.
L-R: Off; Joint Compression 100%; Joint Comp for Parent 100% added
NOTE
Joint Compensation and Muscle Flexing react only to pitch rotations.
To react to other rotations (or just for more precise control), you
could model a muscle Endomorph object and use ChannelFollower (or
an expression) on the morph target’s MorphMixer channel (on the
Graph Editor) to follow the bone’s rotation.You’ll need to set
ChannelFollower’s Scale down to something like one percent or less.
10.22 CHAPTER TEN: BONES AND SKELEGONS
2 Select the arm object and choose Items > Add > Bones > Add Bone.
3 If you are using a shaded display, you probably won’t see the added
bone. You can make it visible by making it the current item, but since
we plan to add several bones, using a wireframe display works best.
So, change the viewport’s Maximum Render Level to Front Face
Wireframe. You will see the bone inside the arm—try looking at the
object using different views to see that the bone is indeed inside the
arm.
4 Notice that the tip of the bone is not quite at the elbow. Since we
need it to bend there, we must increase the bone’s Rest Length.
Activate the Bone edit mode button at the bottom of the interface
and then click Objects > Bones: Rest Length.
The arm was the current item, so activating the Bone edit mode lets
us edit its bones. If other objects were in the scene, we would need to
select the bone directly in the viewport or select the appropriate
object first.
L I G H T WAV E 3 D 7 10.23
5 Drag your mouse to the right until the Rest Length is about 1.13 (the
indicator is in the lower-left corner). The bone’s tip should be just
about at the elbow. Note that we don’t need to keyframe this change.
6 Next, let’s add a child bone and for fun, we’ll draw it. Choose Items >
Add > Bones > Draw Child Bone and drag your mousepointer to the
the wrist.
7 Now add another child bone, but don’t draw it. Choose Items > Add >
Bones > Add Child Bone.
8 The last bone will extend past the tip of the fingers but that’s okay.
However, select Items > Tools: Rotate and change its Pitch a little (-
2.4 degrees) to align the bone with the hand a little better. You do
need to re-keyframe changes to position and rotation, so re-create a
keyframe for this bone after the rotation change.
As you can see, you position bones the same way you position
objects.
10.24 CHAPTER TEN: BONES AND SKELEGONS
9 Press the R key to set the rest position and activate the current bone.
Notice that the bone’s outline becomes solid and bright. Press the UP
ARROW key to select the middle bone and activate it. Do the same for
the first bone.
10 Now for the fun part! Select the middle bone and rotate its Pitch.
(Switch the viewport back to Textured Shaded Solid.)
Cool!
11 Select the middle bone and play with the Joint Compensation and
Muscle Flexing options (Bones panel) to see their effects.
12 Try varying the bone Strength for different bones and observe the
effects.
chapter11
Item Motion Options
L I G H T WAV E 3 D 7 11.1
C hapter 11:
Item Motion Options
Generally, the Motions Options panel controls the overall motion of
an item in your scene, as opposed to individual channel control, which is
accomplished using the Graph Editor.
PARENTING
Parenting refers to LightWave’s ability to create hierarchical
relationships between items, much like files use directories. These
relationships can grow into a complex hierarchy with multiple items
parented to an item and the child items being parents themselves of
other items.
You can parent just about anything to anything. That is, lights can be
parented to objects, objects can be parented to a camera, and so on. You
can also parent items to bones; however, bones must remain under the
object they relate to. Generally, you’ll restrict parenting to the same type
of item (e.g., objects to objects); however, there are often times when,
say, parenting a camera or light to an object can be very handy.
When you initially parent an object to another, you align its local
Origin with the local Origin of the parent object. The child inherits the
position, rotation, and scale of its parent. You can also animate the child
independently, but its movement will be added on to the parent’s.
A simple example involves a camera parented to a car object. As the
car moves throughout the animation, the camera follows its movements,
11.2 CHAPTER ELEVEN: ITEM MOTION OPTIONS
thus providing the look of a camera mounted to the car. Additionally, the
camera may have its own motion, so it could go up and over the car
while still moving along with it.
Left: Solid textured display. Right: Bounding boxes show individual objects
HINT
If possible, try to set up your hierarchical relationships before you
animate the individual items.Then work from the top down (i.e., parent
to child).
3 Select the parent item from the Parent Item pop-up menu. (Yes, in the
LightWave world, children can pick their parents. And what a
wonderful world it is too...)
HINT
Use File > Load Items From Scene to load in an entire chain of
parented objects.This way, you can have default scenes set up with all
of the objects parented and in place.You can even have motions set up
so you could load in a walking woman or a police car with revolving
lights atop. If you do load a scene that has motion for certain objects,
it may be a good idea to have the items in the loaded scene parented
to a null object that you can easily reposition once it’s loaded in the
new scene.
11.4 CHAPTER ELEVEN: ITEM MOTION OPTIONS
Exercise: parenting:
1 Load the COW.LWO object (ANIMALS subdirectory).
2 Parent the light to cow. (You can just drag it under the cow.)
3 Drag the cow around and notice how the light moves right along with
it.
L I G H T WAV E 3 D 7 11.5
3 Select all objects (Select pop-up) and set their visibility to bounding
box (Visibility pop-up). This lets you see the individual objects more
easily in the viewport.
4 Select the Light edit mode to avoid displaying all objects as selected.
All of the different objects in the viewport should be different colors.
L I G H T WAV E 3 D 7 11.7
5 Try moving and rotating various objects and see their effect on their
children.
NOTE
Generally, the way a scene like this is created is that the individual
objects are created in a standing position in Modeler. After all objects
are loaded into Layout, the pivot points are then moved to the proper
positions. Remember, pivot points should always be set prior to any
rotating or moving.
Unparenting
You can unparent an item by:
• clicking the Unparent button,
• selecting (none) from the Parent Item pop-up menu, or
• dragging in the Scene Editor.
For example, let’s say you wanted a satellite to orbit a planet at a 20-
degree angle. Simply add a null and rotate its bank to 20 degrees. Load
the satellite and move its pivot point away from the object, a distance
equal to the radius of the orbit. Set the satellite’s position back to 0, 0, 0
(remember it gets moved because of the pivot point move). Parent the
satellite to the null and rotate the satellite’s heading.
Orbiting satellite
Parent in Place
If the Parent in Place option is active on the General Options tab of
the Preferences panel (Display > General Options), an item will maintain
a constant position, size, and orientation when it is parented or
unparented. Adjusted position keyframes for the child will be created at
the current time, but its position at other times may still change. It is
best to be at frame 0 and to perform parenting before animating when
this option is active.
TARGETING
Sometimes you will want an item to continually point to or follow
something. A common example is when a stationary camera tracks a car
speeding down a street. Obviously, you could keyframe the necessary
camera rotations, but wouldn’t it be easier to just say, “camera, follow
that car.” Well, in LightWave, this is called targeting. Any scene item can
be targeted by another item.
L I G H T WAV E 3 D 7 11.9
NOTE
Targeting overrides any actual heading and/or pitch channel values.
To target an item:
1 Select the item to be targeted toward something.
2 Open the Motion Options panel (Items > Motions: Motion Options).
3 Set the Target Item pop-up menu to the desired object you want to
point to.
11.10 CHAPTER ELEVEN: ITEM MOTION OPTIONS
Light is targeted at cow, but cow’s pivot has been moved off the object
INVERSE KINEMATICS
Kinematics describes motion, or the study of motion. It is motion in
the most abstract sense, without regard to force, mass, velocity,
acceleration, or the positional values that produced the motion. In
computer animation, you employ kinematics when you animate links of
parented objects such as those used to make up a robot’s arm or leg, or
when you work with a chain of parented bones inside a one-piece limb.
With these types of joints between objects/bones, we generally deal with
rotational values for the individual objects/bones in the chain.
Forward kinematics is the standard type of motion generated in
LightWave when you rotate/move any parents in a chain. The animator
decides what will be the motion of all the joints. The motion of the last
item in the chain is determined indirectly by the accumulation of all
motion of any parent items up (i.e., forward) through the chain. (Like if
you move your upper arm, your forearm and hand also move with it.)
11.12 CHAPTER ELEVEN: ITEM MOTION OPTIONS
Full or Part-time?
By default, LightWave does not compute IK continuously. Thus,
animating the goal object will not do anything. You position the goal to
pose your chain and then keyframe all of the items in the chain. This
method uses LightWave’s IK as an animation aid. In effect, you are using
IK to pose your chain, but forward kinematics when you render your
animation.
Alternatively, you can use Full-time IK for any item in the chain with a
goal. When active, LightWave continuously computes the chain’s motion
based on the goal. Thus, you can animate the goal object, and the chain
will react accordingly. Full-time IK also works well with multiple active
L I G H T WAV E 3 D 7 11.13
goals. This means you can have an active knee goal (middle of the chain)
as well as an active foot goal (end of the chain). When you move one
goal, LightWave takes into account the position of the other goal.
Creating key frames for all items in the chain can become tedious if
you make a lot of changes and must keep deleting and re-creating key
frames for all items in the chain. Thus, you may want to use LightWave’s
Full-time IK option.
Because you can have multiple goals, you can activate Full-time IK
for some goals and not for others. A full-time IK item further down the
chain will always override a non-full-time IK item further up the chain. In
practice, however, you’ll generally have Full-time IK on or off for all
items in the chain.
NOTE
If you are not using Full-time IK, you do not need to create key
frames for the goal object, but it can be useful to help remember your
place.
HINT
An easy way to create keys for all items in a chain is to select the
parent of the chain and create the key frame using the Current Item
and Descendants option (Create Motion Key requester).
LightWave also provides a global IK on/off switch: Items > IK: Enable
IK. Use this to toggle IK solving off or on for all IK chains in the scene.
11.14 CHAPTER ELEVEN: ITEM MOTION OPTIONS
Here is a basic scene with three bones attached to a null object and a
second null object that will be the goal object for our IK chain. (Note: the
third bone, which is small and nearly invisible, is at the tip on the right
side.)
L I G H T WAV E 3 D 7 11.15
Bone (3)
Finally, if you rotate Bone (1)’s pitch (as you would normally), you
can see it change. This shows how you can now use a hybrid of forward
and inverse kinematics.
Moreover, let’s say you build an arm and instead of parenting the
hand to the forearm, you just make the hand a goal for the arm. With
Keep Goal Within Reach, you can insure that the hand stays locked to
the forearm. (According to Paul, doing this manually would be a pain and
you’d end up adding a lot of extra keyframes.)
NOTE
If you move the IK object with goals that have Keep Goal Within
Reach active and you are using Full-time IK, those goals will be
dragged along for the ride.Wheeeeee!
Although any object can be a goal, null objects are used most often
because they do not render. However, you can also use a visible object
effectively as a goal. Let’s say that you have a searchlight object that you
always want to point at a blimp flying overhead. By modeling the
searchlight with its origin at one end (or simply moving the pivot point
to the end) and parenting a null object at the other end, you can select
the blimp as the null object’s goal. The searchlight will now follow the
movement of the blimp.
Dueling Goals
When you create an IK chain with multiple goals that may compete,
you must set strengths for these goals. The strength will determine the
relative magnetism that goal has for the shared objects in the chain. To
increase the strength of a particular goal, raise the Goal Strength value.
11.18 CHAPTER ELEVEN: ITEM MOTION OPTIONS
Goal Strength comes into play when the distance between the
competing goals becomes too great to solve the IK calculation, or when
the distance exceeds the length of the object chain. As the goals move
past this distance, the objects will move away from their original
positions. The distance they move from both goals is equal as long as
the strength values are equal. If the strengths are not equal, the
difference in distance is equal to the ratio of the two strength values. If
one goal’s strength is set to 1 and the other is 10, the object’s distance
from the weaker goal is ten times that of the stronger goal.
Goal Orientation
Items in an IK chain that have a goal assigned can match the
orientation of the goal. You do this by activating the Match Goal
Orientation option.
Note:The rest length for the bone with the goal has been increased for illustration
You should note that this option also matches the goal object’s
scaling, overriding the (goaled) item’s scale setting. If this adversely
affects your animation, one solution is to copy the (goaled) item’s scale
channels to the goal object. Another solution may be to add a null object
to the IK chain and use that as the goaled item instead.
L I G H T WAV E 3 D 7 11.19
HINT
Use Match Goal Orientation to prevent a character’s feet from going
through the ground plane.
Stiff Stuff
You may also add a Stiffness value to items in the IK chain. Items with
a higher stiffness value will tend to be more resistant to bending caused
by IK.
11.20 CHAPTER ELEVEN: ITEM MOTION OPTIONS
The third bone has a high stiffness setting (for heading in this case). Note how it barely flexes.
HINT
When you use IK, you will often want to set rotation limits, as
discussed later in the chapter.
HINT
Naming nulls is a good habit to get into. Although not necessary, it can
avoid confusion when you use them later.
2 Change to the Top view and move it so that the nulls are at the
bottom of the Layout window.
3 Choose Items > Add > Bones > Add Bone to add a bone to the null
object.
L I G H T WAV E 3 D 7 11.21
5 With the last bone (4) still selected, open the Motion Options panel
(M). Select the GOALNULL as the Goal Object and set all of the
Controllers to Inverse Kinematics.
6 Using the Current Item in the main interface, select each of the other
bones and set all of their Controllers to Inverse Kinematics, too.
11.22 CHAPTER ELEVEN: ITEM MOTION OPTIONS
7 Now, select the GOALNULL and drag it around the viewport. You should
notice that the chain follows the object; however, the last bone does
not seem to point to it and just hangs there.
8 To create the illusion that the tip of the bone (4) is pointing to the
goal, you need to add another child bone, whose base will act as a
pointer. Select the last bone and add a child (=). Size the new bone’s
Rest Length down so that it is more or less a point.
9 Now, set Bone (4)’s Goal Object to (none) and set the new bone’s (5)
Goal Object to GOALNULL.
10 Now move GOALNULL in the viewport. That’s more like it. You should
now see the bones bend around like a snake with the end pointing to
the goal. Notice how the GoalNull tends to stick to the base of Bone
(5).
L I G H T WAV E 3 D 7 11.23
3 Select Bone (5), click Objects > Bones: Rest Length and then click
Items > Tools: Reset to restore its size.
6 Size the GOALNULL object up and see how the bone sizes up too.
7 Set the Keep Goal Within Reach option for Bone (5).
8 Move GOALNULL again. Notice how it is now permanently attached to
the goaled object and can no longer be moved off it.
L I G H T WAV E 3 D 7 11.25
To use an item motion modifier, select the modifier from the Add
Modifier pop-up menu on IK and Modifier tab. Once added, click on its
name in the list to access its settings, if any.
NOTE
Modifiers that do not have an explicit additive option are generally
additive in nature.
CurveConstraint
CurveConstraint moves an item along a curve object, similar to a
motion path. The curve object is selected on the Curve pop-up menu. (If
there is more than one curve in the object, the first curve is used.)
Enabling Align will rotate the object so it faces along the curve in the
traditional “Z axis” manner. The Start Time and End Time values
determine how long the item takes to traverse the curve. The Curve
Influence percentage blends the curve motion in or out.
11.26 CHAPTER ELEVEN: ITEM MOTION OPTIONS
CurveConstraint options
CurveConstraint does not remain locked to the curve, but adds the
curve's position to its own keyframed motion. To lock the item to the
curve, simply parent the item to the curve, reset the item's position, and
eliminate all its keyframes.
You might use CurveConstraint to move an object along the same
curve used to create the geometry (or create the curve from the
geometry), like with a roller coaster.
Cyclist
Cyclist will associate the action of one item with a repeatable action
(an animation cycle) of another item.
12 Select the Wheel and open its Motion Options panel. Add the Cyclist
modifier and set the settings as shown. (Note: Since the wheel is
about .194m in diameter, the circumference is about 1.22m (2 * pi *
.194).)
13 Close the Cyclist panel and drag the time slider. You will see the
wheel turn backward and forward as it moves.
Effector
Effector causes effector objects to repel or attract the motion path of
the affected object. The effector objects may be any objects you wish,
but Null objects work best.
NOTE
See also the Effector custom object plug-in discussed in Chapter 9.
L I G H T WAV E 3 D 7 11.29
Expression
This is a motion-modifier version of expressions, which can get the
results of other motion modifiers, as well as IK. This is not possible with
a channel modifier. (See Chapter 8 for more information.)
You can select multiple channels on the Channel pop-up menu and
apply different settings for each (i.e., you don't just pick one). They can
all share scratch variables (A through Z) and the expressions can be
aware of other components of the item's motion. Thus, H can depend on
Z, for example, without trying to reference the item's object.
Follower
Using the Follower item motion modifier is similar to parenting an
object to another, except you have control over which motion channels
you wish to inherit. You can also modify and delay the inherited value.
Moreover, the motion can be inherited from the camera, a light, a bone,
or any object in the scene.
11.30 CHAPTER ELEVEN: ITEM MOTION OPTIONS
Use the Item To Follow pop-up menu to define the item whose
motion you want to use. This is the leader.
Activate the World Coordinates option to use the leader's actual
(world) coordinates, rather than its relative coordinates. These could be
different if, for example, the object is parented to another object.
The amount of seconds entered into the Time Delay field is added to
the current time. This number may be negative.
Randomize is a maximum amount of time (in seconds) to be added to
the delay. The actual amount will be between 0 and the Randomize
value. This number may be negative or even larger than the Time Delay.
(The latter would cause the item to sometimes anticipate the leader's
moves and lag at other times.) The overall delay amount for each item is
fixed over the course of the animation, so this is useful for basic flocking
effects.
NOTE
The random number seed is taken from the object ID, which should be
the same among ScreamerNet nodes and, thus, will cause items to have
different delay amounts.The delay stays the same from frame to frame.
Gravity
Gravity simulates the effects of the Earth’s gravity on an item’s
motion, making it fall naturally and even bounce with varying degrees of
elasticity.
NOTE
The most natural results will occur if all the keyframed motion within
the range of frames is a single linear path. In particular, the trajectory is
determined by an object's initial speed and direction of motion.
NOTE
Your object must start in a positive position along the selected Axis.
Motion Baker
Motion Baker (formerly IKCapture) will freeze the motion of an item
into individual keys. Motion Baker takes into account not only IK, but
also motion/channel modifiers, align to path, and so on. The
computation is executed by dragging your frame slider or playing the
scene.
11.32 CHAPTER ELEVEN: ITEM MOTION OPTIONS
Selecting the Use Existing mode will create normal keys for the
selected position or rotation channels. The Extra Channels mode places
the keys in a special AfterIK channel group—you might use these with
expressions, for example.
Jolt!
Jolt! is an item motion modifier that simulates the chaotic and
uncontrolled movements that occur when physical impacts have enough
weight and velocity to cause jarring vibrations. For example, the
collision of a celestial body striking another, the impact of a robot's foot
with the earth, the collision of a laser beam with a passing spaceship,
and so on. All of these events are good candidates for Jolt!
L I G H T WAV E 3 D 7 11.33
Jolt! panel
Jolt! also lets you specify vibration events using keyframes that
indicate when a vibration will begin—and be at its most intense. You can
also specify the duration of the vibration and its initial intensity.
Intensities can be set based on the object’s position (X, Y, and Z axis)
and its rotational values (heading, pitch, and bank).
NOTE
Jolt! does not provide the basic motion of an item, but rather modifies
an existing motion. Jolt! does not modify existing motion except to
radically deviate from it temporarily at specified intervals.
Global Options
The Save Keys and Load Keys buttons let you save and restore Jolt!
settings. The Save Motion and Load Motion buttons save and load,
respectively, standard LightWave motion files based on the keyframe
data. The Save Motion button is ghosted if no keyframes are set, and
both buttons are ghosted when the Events tab is selected. Motion files
saved with the Linear button active have their keyframes set to the
(spline control) linear mode.
Activating Intensity Ramp tells Jolt! to track the movement of a
LightWave item (i.e., Camera, light, object, or bone) and based upon its
distance from the Jolt! object, increase or decrease the effect of the
vibration proportionally. Minimum Range is the radius in meters of the
effect range. LightWave items outside of this range will not create a
11.34 CHAPTER ELEVEN: ITEM MOTION OPTIONS
visible effect. If you forget to set this value when you leave the Jolt!
interface panel, you will be reminded and Jolt! will disable Intensity
Ramp (with a minimum range of 0.0, it is ineffective anyway).
If you activate Shock Wave, vibration keyframes are adjusted
internally to offset for the distance of the ramp object. In effect, the
further away the ramp item is, the longer it will take for the vibration
event to actually trigger, and the later it will trigger from its indicated
start time. This option is useful if you use Jolt! on items in your scene
other than the Camera. Items using Jolt! that are closer to the ramp item
begin their vibration events sooner than items that are further away.
With items positioned correctly, this option can produce a visible shock
wave effect from the ramp item's location.
If you select an item that is part of a parental hierarchy, Jolt! alerts
you and—if it isn't selected already—suggests that you turn on the
World Coordinates option. This option ensures that you get proper
movement information from the child item.
The NonLin2 button activates an alternate calculation for Jolt!'s
motion calculations. It creates motions that are less harsh.
Keyframes Tab
The Keyframes section houses the Jolt! key controls. When you want
the jolting to occur on specific keyframes, you will utilize this tab. (If you
want the effect to occur based on the position, rotation, and/or scale of
an item, this is set on the Events tab. You can set both.) The Jolt Keys
slider selects the current frame. The range of the slider will exactly
coincide with the number of render frames that have been specified on
LightWave's Render Options panel—not necessarily the same value that
is used in the Preview settings. The << and >> buttons will jump to the
previous or next keyframe, if any exist.
Clicking the Create Key button makes a keyframe at the current
frame. Use Delete Key to remove an existing keyframe. Note that the
current frame must be a keyframe to do this.
Clicking the Populate Key will take the settings for the current
keyframe and copy them to every existing keyframe. In other words, it
populates all keyframes with the current settings and saves you from the
tedious task of copying and pasting settings, frame by frame.
Randomizing Keys
Randomizing (or jittering, if you prefer) provides a means of breaking
up potentially monotonous key settings. Although Jolt! will internally
randomize settings to some degree as it applies them to the item, unless
you are using intensity ramping, the actual key values themselves will
not be altered. By using the Randomize button, you can generate
variances such that the motion of subsequent keys does not look so
similar.
L I G H T WAV E 3 D 7 11.35
WARNING
Please be aware that when you press any of these buttons, any
existing keyframe settings will be destroyed.
Clicking the Copy Key button will copy all of the Jolting effect
settings to an internal memory buffer. Clicking the Paste Key button will
paste the settings into the fields currently visible. Note that this can
affect either the Keyframe or Events tab interchangeably.
Using Preset Values
You can alter preset values. If you press the D button to the
immediate right of any of the presets, then you store the current settings
for the key as the default values for that preset. These new default values
will persist between sessions with LightWave 3D. (Jolt! stores its preset
defaults in a file called JOLT.PRE. You can restore the built-in Jolt! preset
values at anytime by deleting this file; however, it can be stored in
various places depending on the system configuration. You will need to
search your hard drive to find it.)
Applying Turbulence
Jolt! can apply turbulence to your item's motion path in several ways.
When you select Falloff, the turbulence applied will gradually decrease
throughout the duration of the event. In other words, at the first frame of
the event, the position and rotation values you have entered for the
event will be at their strongest, while at the last frame of the event they
will be at their weakest. If you do not select Falloff, then Jolt! applies the
event values at their full strength at each frame throughout the event
duration.
If you select Spring, Jolt! applies turbulence uniformly, and makes it
appear as though your item is supported and buffered by springs.
Without Spring, Jolt! applies turbulence more chaotically or randomly,
which produces more of a true vibration effect.
11.36 CHAPTER ELEVEN: ITEM MOTION OPTIONS
Key Settings
A Duration value must be specified, in terms of the number of frames,
within which Jolt! must complete the effect. Because the you can specify
duration and location of vibration events, keyframe data may overlap.
Jolt! handles this situation by warning you about the overlap condition.
The overlapping key will start before the preceding key ends. If a
keyframe is deleted, Jolt! will recalculate all keys to ensure that any
overlapped keys are corrected.
The Position controls let you to define the maximum deviation on
each of the three axes for the item at the current frame. These values are
all specified in meters. The higher the number, the more dramatic the
initial movement in that direction. A value of zero (0.0) in any position
will prevent the item from deviating in that direction. The Rotation
controls work similarly, but set deviation values for heading, pitch, and
bank (in degrees).
Events Tab
On the Events tab, you can cause jolting based on the position,
rotation, or scale of items. (If you want the effect to occur on specific
keyframes, this is set on the Keyframes tab. You can set both.) The
Watch pop-up menu gives you a list of all the items currently in your
LightWave scene. You may select any available item from this list as the
watched item, that is, the item that triggers the event.
< (less than) or > (greater than) button next to the input field you wish
to set. The Position and Scale fields correspond to X, Y, and Z, from top
to bottom and the Rotation fields correspond to H, P, and B.
The << and >> buttons let you watch more than one item. To add
another watched item, simply click the >> button. The informational
display to the left will tell you what item is currently selected and how
many there are in total (e.g., 01 of 03). The << and >> buttons are also
used to navigate through existing watched items. If you add a watched
item by mistake, set Watch to (none). You also cannot add another
watched item if the last existing item is set to (none).
Activate the Re-arm button if the item repeats its motion and you
want it to trigger the event again. If Cascade is active, Jolt! will ignore the
event (i.e., not evaluate it) until the event immediately preceding it has
occurred at least once.
The settings on the lower half of the tab work as described for the
Keyframes tab (see Jolting Effect, above).
Oscillator
Oscillator applies damped harmonic oscillator motions (i.e.,
decreasing waves) to selected animation channels of an object's motion.
Examples of this effect are everywhere, from springs and guitar strings
to a grandfather clock pendulum.
Sun Spot
Sun Spot is a motion modifier that will rotate an item, usually a
Distant light, to match the sun’s angle at the specified date and time.
Distance is the radial distance from the rotation center, at which the
light is pointing.
L I G H T WAV E 3 D 7 11.39
NOTE
Remember that the position of a Distant light is not that important
since the light will always come from the direction it is pointing, even
behind the Distant light’s position.
The time settings, determine the starting angle. For example, the
Hour field should be set from 1 to 24 and Day is the day of the selected
Month.
When Time Lapse is set to 0, there is no sun rotation. A value of 1,
will make the sun rotate in real-time, which is very slow (i.e., one second
of animation equals one second of sun rotation in the real world). The
rotation may be imperceptible in short animations. In such cases, you
may want to leave it at 0 to minimize any impact on rendering time from
moving lights.
You can accelerate the movement by increasing Time Lapse. For
example, 86400 (60 seconds * 60 minutes * 24 hours) will cause one
day’s rotation to occur in one second.
Set the Longitude and Latitude for the part of the world your sun is
(theoretically) shining on. Time Zone is +/- Greenwich Mean Time
(GMT). There are presets provided.
During night hours, the sun will stay at its lowest point at the end of
its cycle and then pop to the starting point at the beginning of the next
cycle. In other words, it will not revolve in a 360-degree circle.
TextureMotion
Texture Motion lets you apply the contour of texture to a motion.
Thus, if you used the same exact texture for a displacement map (on a
subdivided plane), you could automatically have the item move over it
following the contour without much effort!
11.40 CHAPTER ELEVEN: ITEM MOTION OPTIONS
The Axis determines the perpendicular mapping axis, just like with an
image map. The Offset lets you move the motion in the positive or
negative direction along the selected Axis. Scale acts as a multiplier for
the motion. A value of 1 has no effect.
ROTATIONAL LIMITS
You can independently limit heading, pitch, and bank rotations
between maximum and minimum values. You can prevent actions like
bending a leg backwards at the knee (unless you’re animating a football
injury). To use the limiting feature, activate the desired Limit option(s)
and set the related Min and Max values on the Motion Options panel (M)
for the particular item. Setting rotation limits can be particularly
important when using inverse kinematics. (Note that the maximum value
must be greater than the minimum.)
You can interactively set the Min and Max values by rotating the item
to the desired minimum direction and choosing Items > IK: Limits >
Record Minimum Joint Angles. This will activate minimum limits for
any rotational parameters (heading, pitch, or bank) that are currently
active for the chosen item. Similarly, rotating the item to the desired
maximum range limit and choosing Items > IK: Limits > Record
L I G H T WAV E 3 D 7 11.41
Maximum Joint Angles will automatically input the values into the
maximum limits for the active rotational parameters. You can deactivate
Heading, Pitch, and/or Bank to avoid setting limits for the deactivated
setting.
If any of the rotational limits are active on the Motion Options panel,
you can access angle limit dialogs from the Items > IK: Limits menu.
ALIGN TO PATH
Another way to automatically control the rotation of an item is to
align itself to the motion path that it is traveling. This feature aligns the
local Z axis of the item (through its pivot point). A classic example of
this is when you have a car speeding down a curvy road. Sure, you could
keyframe the rotational changes, but its much easier to have LightWave
align the car to its path.
NOTE
This is one reason most vehicles (and other objects) are modeled
along the Z axis, facing the positive side.
NOTE
Align-to-path overrides any actual heading and/or pitch channel values.
3 Generally, you’ll want to set both the Heading Controller and Pitch
Controller (Controller and Limits tab) to Align to Path. If you desire,
you can set either back to Key Frames for manual control.
C hapter 12:
The Scene Editor
The Scene Editor gives you the big picture. Here you can see a list of
all of the items in your scene arranged hierarchically. You can see all of
the individual enveloped channels, perform global edits on keyframes,
and change hierarchy. Here, you also set the wireframe colors, change
visibility modes, and even load a reference sound file.
Scene Editor
BASIC FUNCTIONS
The scene list is a standard LightWave list window. You can expand
and collapse groups as well as subordinate items (e.g., child objects) by
clicking the arrow icon that appears to the left of the item name.
12.2 C H A P T E R T W E LV E : T H E S C E N E E D I T O R
The plus/minus sign icon will display or hide the individual channels
for the item. Most of the time, these are the position, rotation, and scale
channels; however, other enveloped channels can also be included, like
light intensity.
Expanded channels
The item type icon indicates the type of item and the color used
when the item appears in wireframe. You can change this by right-
clicking on the item name and selecting a color from the pop-up menu.
When working with complex scenes with overlapping objects, it can be
beneficial to use different colors for certain items in the scene.
NOTE
You can override the visibility setting somewhat using the viewport’s
Maximum Render Level pop-up menu located on the top left edge
of a viewport.
NOTE
The color and visibility options affect only the appearance of items in
the Layout view.They do not affect the final rendered image.
For lights, cameras, and bones, you can make them visible or hidden
by clicking in the visibility column.
12.4 C H A P T E R T W E LV E : T H E S C E N E E D I T O R
Clicking in the “lock” column will toggle the locking function on for
that item. Locked items cannot be selected in the viewports. The lock
icon will also appear on the Current Item pop-up menu (on the main
interface) next to the item’s name.
POP-UP MENU
When you right-click an item, it displays a pop-up menu. This menu
can set the item's wireframe color, clear the item, clone the item, rename
the item, and open its properties or motion panels.
KEYFRAMES
The colored bars to the right indicate the length of the keyframed
channel. The bar starts at its first keyframe and ends at the last one.
(Note that the ends may be past the end of the visible display area.) The
plus signs indicate keyframes.
L I G H T WAV E 3 D 7 12.5
The line with the item’s name is the master channel and will show a
composite of all of the keyframes in any of the underlying channels.
ADJUSTING CHANNELS
You can move individual keyframes by dragging them with your
mouse. The affected key is highlighted when you initially click on it.
Dragging on the bar, off any key, will move the entire bar forward or
backward in time.
NOTE
You can also drag keys on the master channel, which will affect only
the appropriate underlying channels.
There are square handles at the beginning and end of every bar. You
can drag these to scale all of the keys in the bar.
HINT
For more precise adjustments, use the Shift Keys and/or Scale Keys
functions.
ADJUSTING HIERARCHY
You can drag item names up and down to change the order and
hierarchy (i.e., parent/child relationships). As you drag, a yellow insert
line will appear. You insert the item by releasing your mouse button at
the line’s position. The line will cycle between different lengths as you
drag; the different lengths indicate different levels of hierarchy. The
relative length indicates the level the line becomes when you release the
mouse button.
12.6 C H A P T E R T W E LV E : T H E S C E N E E D I T O R
NOTE
An item inserted between a parent and child will always become
another child.
EFFECTS OF SELECTION
You can select a contiguous range of (same type) items by holding
the SHIFT key down as you select. Hold the CTRL key down to
select/unselect non-contiguous items.
You can then drag the entire selected range of items to a new
hierarchical position. Most of the editing functions can be limited to
selected items only. These items will also be highlighted in the
viewports.
BUTTONS
Use the Favorites pop-up menu to create (or delete) selection sets for
items that you want to access quickly. For example, if you always move
the same five lights, you could multi-select them and make a favorite.
Then, the next time you want to move them, you just select the favorites
set you created and all five lights are selected automatically.
The Select pop-up menu lets you quickly select all items based on
their type. To unselect a group of items, just click on any item. (One item
is always selected.)
The Visibility pop-up menu will show/hide selected or all items.
The Colors pop-up menu will apply the selected color to all of the
selected items. You can also set the default colors and apply them to the
scene.
The Channels pop-up menu will expand/collapse selected or all items.
L I G H T WAV E 3 D 7 12.7
With Shift Keys you can shift keyframes for all or just selected items
forward or backward in time. The Low Frame and High Frame values set
the range of frames to be affected. This function lets you fine-tune the
animation without making individual changes for each item in the scene
(a potentially tedious task). Enter a negative Shift Frames by value to
shift backwards in time.
Some operations can affect frames outside the specified range. For
example, shifting a range of frames in the middle of a motion path will
cause keyframes after the range to shift so they are not overlapped by
the newly shifted keyframes.
With Scale Keys you can extend or shorten either the duration of all
or just selected items. The Low Frame and High Frame values set the
range of frames to be affected. The result is that events occur either
more slowly or more quickly, as they have been scaled to take place over
a longer or shorter period of time. Scale Keys enables you to fine-tune
the animation, allowing certain events or the entire animation to take
place within a specified time frame so that you do not need to alter
specific keyframes manually. The Scale Time by value represents the
scaling factor with 1 being equal to 100 percent.
NOTE
Time-related elements of the scene other than motions and envelopes
will not change with the use of either Shift Keys or Scale Keys.
Therefore, image sequence loop lengths and texture motion will not
be affected.
ADDING AUDIO
You can sync your animation to sound: from the Audio pop-up menu,
load a reference audio file (WAV format) that you can hear when you play
the scene. A simple waveform is shown behind the time slider on the
main interface. You can scrub though the audio by dragging the timeline
slider or preview the audio by selecting Play Audio. Use the Clear Audio
option to clear the audio from the scene.
12.8 C H A P T E R T W E LV E : T H E S C E N E E D I T O R
The Fixed Frequency option keeps the audio from changing pitch
when you scrub the frame slider.
You can delay the start time of a loaded audio file by selecting Audio
Start Time from the Audio pop-up menu. The value you enter into the
dialog is the delay amount in seconds (e.g., if Frames Per Second, on the
General Options tab of the Preferences panel, is set at 30, entering 1.0
starts your audio at frame 30).
chapter13
Camera Basics
L I G H T WAV E 3 D 7 13.1
C hapter 13:
Camera Basics
When you create a LightWave animation or still image, you will have a
display device in mind. In the case of video, it’s probably a TV set or
monitor. You might also be creating something that will appear only on a
computer screen. Other possibilities include film or print media.
Whatever the ultimate destination of your images, two things will
become very important before you can render your images: pixel aspect
ratio and resolution. Essentially, these are the shape of the pixel and
number of pixels, respectively.
MULTIPLE CAMERAS
You can add additional cameras by choosing Items > Add > Add
Camera; however, only the Current Camera is used to render a scene. If
you have more than one camera in the scene, use the Current Camera
pop-up menu on the Camera Properties panel (or Layout’s Current Item
pop-up menu) to select the currently active camera.
RESOLUTION
The Resolution pop-up menu contains several standard resolution
presets. Selecting one will automatically set the Width and Height fields,
and the Pixel Aspect Ratio field (more on this parameter later).
Width and Height fields determine the precise number of horizontal
and vertical pixels, respectively. Any values between 16 x 16 and
16,000 x 16,000 are acceptable.
The Resolution Multiplier scales the underlying selected Resolution
up or down, with 100% as the default full resolution. This feature lets
you quickly reduce or enlarge the resolution of your rendered images.
You will often want to render test animations at a smaller resolution for
test purposes. Particle, line, and edge thickness, as well as the glow
radius, are scaled by the Resolution Multiplier during rendering.
L I G H T WAV E 3 D 7 13.3
Manually entering values directly into the Width or Height fields will
override any selected Resolution (which will then display the word
Custom). The Resolution Multiplier will continue to operate,
automatically scaling these values if you alter its setting.
Deciding on a resolution is generally a matter of output quality and
intended use. If you are rendering for video, there is no reason to use
anything other than the appropriate NTSC or PAL settings. If you are
rendering for film or print, you’ll want to use a higher resolution. For
computer animations, lower resolutions may be adequate.
Left: .9 Pixel Aspect Ratio on video monitor. Right: Same image on computer monitor.
Fortunately, selecting one of the Resolution settings will also set the
default Pixel Aspect Ratio to the proper value. If you are working on an
animation that will be shown on video, you’ll have to get used to the
stretched/squashed imagery when viewing it on your computer display.
LENS SETTINGS
The zoom factor pop-up menu lets you set the equivalent real world
camera lens using Zoom Factor, Lens Focal Length, or Horizontal FOV
(Field of View), and Vertical FOV values. The default, Zoom Factor of 3.2,
is equal to a 24 mm camera lens, a mildly wide angle lens. Users familiar
with camera lenses may find the Lens Focal Length the easiest to use.
Long-time LightWave users will be more comfortable with Zoom Factor.
The FOV settings set this parameter using the degrees of view, which
take into account the Width and Height settings.
Smaller Zoom Factor and Lens Focal Length values produce a wide
angle lens effect, while larger settings produce a narrow (telephoto) lens
effect.
Create an envelope for special effects such as quick zooms in and out,
or zooming in on a subject while pulling the camera back.
Aperture Height
In LightWave, you can change the size of the virtual film that the
camera uses by selecting the Aperture Height button. Changing this
setting affects only the strength of the Depth of Field effect (see below)
and the Lens Focal Length. When you generate LightWave imagery for
film photography, use the same film size used for the project’s real world
camera, so you match the optical characteristics of that camera.
L I G H T WAV E 3 D 7 13.5
NOTE
Aperture Height is always listed in inches, even if you are using a
metric unit system.
Camera pyramid
13.6 CHAPTER THIRTEEN: CAMERA BASICS
Two controls are available for using limited region. If you activate the
Adjust Limited Region Tool in the Camera view, a yellow dotted-line
bounding box will appear. This is the limited region rendering area. To
change the area, drag either the corners or the sides of the rectangle.
Place the cursor inside the rectangle to move the entire rectangle
around. Choose a new tool, like Move, to stop editing the limited region.
The second control is the Limited Region option on the Camera
Properties panel and if you activate it, only the limited region will render.
Pressing CTRL+L will toggle the state of this setting.
Memory Considerations
Limited Region allocates only enough memory to render the
horizontal limited region area. If you stitch parts of an image together,
you can effectively render images that are much larger than those you
could render one pass. This is especially useful for high resolution print
images or in low memory situations. However, note that some post-
processing filters require a full-sized image. In such cases, you may be
able to apply those filters to the "stitched" image in an additional step.
NOTE
The segment memory value should be considered an upper bound
(only the exact amount of memory needed will actually be used).
Ideally, you would want to use a large enough value so the number of
segments is reduced to one. This is not always possible (especially when
using lots of image maps), but can speed up rendering a great deal when
using features such as Motion Blur.
NOTE
On platforms that support virtual memory, you may get better results
using smaller segments that fit within available RAM. (Using one
segment that may not fit entirely in RAM forces you to page to the
hard disk and slow down rendering).You may need to experiment with
segment values to find a useful setting.
ANTIALIASING
Aliasing is a common computer artifact and occurs when a line is
seen diagonally. Because a computer’s pixels are rectangular in shape, a
line seen at a diagonal angle will appear to stair step or alias. LightWave
can antialias an image by comparing the RGB values of two neighboring
edge pixels and then adding an RGB value between the two. This fools
the eye into seeing a smooth edge.
13.8 CHAPTER THIRTEEN: CAMERA BASICS
NOTE
The Extreme antialiasing settings are beneficial only if Motion Blur or
Depth of Field is being used.
HINT
Try rendering in lower resolution with a high antialiasing level and
then scaling the image up in an image processing program to obtain a
very soft look (works well for underwater scenes).
HINT
When you turn off Adaptive Sampling, images take longer to
render, but you will achieve better antialiasing results. If using
Adaptive Sampling does not give you the results you wish or fine
lines are being missed (even at a low or zero sampling Threshold
level), disable Adaptive Sampling.
NOTE
Soft Filter affects only objects. Any background images will not be
affected by the softening effect.
13.10 CHAPTER THIRTEEN: CAMERA BASICS
HINT
Try to render with one segment (see Segment Memory) to greatly
speed up rendering with Motion Blur.
HINT
Dithered Motion Blur will give you better results than using the
next higher Antialiasing setting, but will take only about one-third of
the amount of extra time the higher Antialiasing would require.
HINT
Using Soft Filter in combination with Dithered Motion Blur
creates an even better effect.
L I G H T WAV E 3 D 7 13.11
HINT
Sometimes when you use particles in an animation, you may need to
move them on or off screen or move them some distance
instantaneously (i.e. over one frame). If you don’t want the blurring
effect to happen during this move, use Linear for the Incoming
Curve (Graph Editor) on the particles over that one frame.
NOTE
In LightWave you can go beyond what is possible in the real world and
set the Blur Length beyond 100 percent.
A Blur Length of 100 percent will streak the distance of its current
location back to the previous frame. Likewise, 50 percent will streak it
back half the distance between the two frames and 200 percent will
spread it back the distance of the last two frames. A negative value will
streak a particle forward.
On the Motion Effects tab, there is an information display for Shutter
Angle and Exposure Time. The Shutter Angle is the Blur Length
multiplied by 360 degrees. The Exposure Time is computed using the
formula mentioned previously.
NOTE
Also see the VectorBlur image filter in Chapter 14.
NOTE
Field Rendering is designed for animations going to video tape. It does
not work well with images going to film or other non-video playback.
NOTE
Some video display devices/recorders require even lines to be
recorded first while others require odd lines first. If you notice
incorrect strobing in your recorded video output, simply select the
other Field Rendering menu option. NewTek’s VideoToaster requires
even fields first for 480-line images and odd fields first for 486-line
images.
STEREOSCOPIC RENDERING
LightWave offers a Stereoscopic Rendering option on the Stereo and
DOF tab. Rendering with this option active will result in two images for
each frame, which depict the scene as viewed from positions to the left
and right of the single camera that would normally be used. The frame
numbers in the filenames of the saved images will be followed by either
"L" or "R" to distinguish these views. The Eye Separation input field
defaults to 60mm, which is about the average distance between a
human's eyes. We suggest that you use a null object as a Camera target
and place it at the point where you want eyes to converge.
NOTE
Also see the Anaglyph Stereo: Compose filter, discussed in
Chapter 14, which will create red-blue glasses style images.
NOTE
For an in-depth look at stereography, get out your red-blue glasses and
head over to HTTP://WWW.AIFX.COM/3D_LW_A.HTML.Tony Alderson
provides some insightful information.
DEPTH OF FIELD
Normally, everything in a LightWave scene is completely in focus, no
matter what the distance is to the camera. When rendering with
Antialiasing greater than Low, you have the added ability to use the
Depth of Field option, which will render images with some objects out of
focus.
13.14 CHAPTER THIRTEEN: CAMERA BASICS
NOTE
See also the Digital Confusion image filter in Chapter 14.
HINT
Use the Quickshade Rendering Mode (Render Options panel) to
check out depth of field renderings quickly.
HINT
You can get an accurate measure of the distance between the camera
and your selected object using the Ruler or Range Finder custom
objects discussed in Chapter 9.
chapter14
Backdrops and Image Processing
L I G H T WAV E 3 D 7 14.1
C hapter 14:
Backdrops and
Image Processing
LightWave lets you change the colors of the backdrop behind all of
the objects in a scene. The settings are on the Backdrop tab of the
Effects panel (Scene > Effects: Backdrop). You can elect to have a solid
color using the Backdrop Color setting or a gradient color backdrop. By
default, the backdrop is solid black.
NOTE
If you have any reflective surfaces and you want the backdrop included
in the reflection, set the Reflection Options on the Surface Editor’s
Environment tab to one of the backdrop options.
14.2 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
GRADIENT BACKDROPS
LightWave’s Gradient Backdrop settings essentially provide a quick
earth-like environment background. Note that no shadows can be cast on
the backdrop since it really isn’t there. Although you’ll likely not use it
much for real-life imagery, it is great for faking a sky behind mountain
objects, instructional animations, and logo animations. Use it when you
need something to stick in the background.
There are actually two gradient areas. Think of it as a huge sphere cut
into two halves. One half rests on top of the Y axis plane, and the other
half sits directly beneath it.
The Sky Color begins all around the edge of the top half of the sphere
and gradually turns into the Zenith Color moving towards the top. The
Ground Color begins all around the edge of the bottom half of the
sphere and gradually turns into the Nadir Color moving towards the
bottom. Note that there is no gradual change of color between the Sky
Color and Ground Color.
HINT
If you want the Gradient Backdrop to blend everywhere with no
sharp color change, make the Sky Color and Ground Color the
same.
Gradient areas
The Sky Squeeze value determines how the Zenith and Sky colors are
blended. The Ground Squeeze value determines how the Ground and
Nadir colors are blended. The default value of 2.0 yields a nice spread
between the various colors. A lower value will spread the change in
colors over a greater area and a higher value will compress the change.
Left: Normal squeeze. Right: Sky Squeeze and Ground Squeeze both at 20.0
HINT
The default gradient colors are useful when simulating a reflective
chrome surface.
BACKGROUND IMAGE
The Background Image is similar to the gradient backdrop; however,
it is always registered to the camera. That is, it will always appear in
exactly the same position/location no matter which way you tilt or move
the camera. You set this option on the Compositing tab of the Effects
panel. Background images are considered infinitely distant from the
camera. You can never have an object behind a background image, nor
can you light a background image or cast shadows upon it.
14.4 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
NOTE
Background images are visible only through the Camera View.
HINT
If you actually need your background image to interact with objects,
use the image as a Surface Color Texture mapped on a flat plane
object and place the plane at the back of your scene.
NOTE
Displaying background in the Layout window, particularly a color one,
is processor intensive, so use this feature sparingly.
BACKGROUND PLATE
Sometimes you will want a flat plane to act as your background
instead of using the Background Image option, described above. This
will allow you to do things like cast shadows on the background or fly
things behind it. To create a flat box object that exactly fills your screen,
use the following steps:
1 In Layout, open the Camera Properties panel. Make sure all settings
are set as desired. Note the Frame Aspect Ratio and Zoom Factor
values.
2 In Modeler, select the Box tool and open the numeric panel. To make
sure you are starting from the default settings, select Reset from the
Actions pop-up menu. Then select Activate to gain access to the
input fields.
Set Width to the Frame Aspect Ratio value you noted in the previous
step and Depth to 0 m. Leave all other settings at their default values.
14.6 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
3 Deselect the Box tool to make the box. The polygon may be facing the
wrong direction, so use the Flip command (Detail > Polygons: Flip) to
face it in the negative Z direction. Save it and load into Layout.
4 Finally, the distance between the camera and background plate object
must be one-half the Zoom Factor value, noted in Step 1. You can
either move the camera or object. After that, the plate will now
precisely fill the camera view.
NOTE
See also the Camera Mask custom object in Chapter 9.
L I G H T WAV E 3 D 7 14.7
The Distance between the camera and object is one-half the Zoom Factor
ENVIRONMENTS
Several plug-ins may be used to create exciting backgrounds for your
animations. You access these plug-ins by adding them on the Add
Environment pop-up menu on the Backdrop tab of the Effects panel.
Image World
The Image World Environment lets you apply an image as a spherical
environment wrap; this approach is perfect for high dynamic range
images. You can offset the heading and pitch of the image, as well as
adjust its brightness.
ImageWorld
14.8 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
SkyTracer2
The SkyTracer2 Environment was designed to create sophisticated
atmospheric effects using real-world parameters. You can adjust the
atmospheric, cloud, and sun settings within the interface to create a
variety of beautifully rendered sky images. These skies can be rendered
(volumetrically or as a 2-D effect) within an existing scene, or saved as
image files to be composited or used as texture maps.
The top portion of the panel contains the settings for SkyTracer2’s global parameters.
Use the Enable Clouds switch to turn the two cloud layers on or off.
The Texture button opens the Texture Editor panel, which is where
you specify the type of cloud to render and adjust its coverage
parameters. (see below)
Altitude sets the height in the sky where the cloud layer will start.
The Density setting controls how dense the cloud layer is. Think of
this setting as adjusting the probability of rainfall for the area. A Density
value of 10% means that the clouds are fairly devoid of water. This gives
a much thinner cloud layer, which allows more light to travel through it.
A value of 75% has a much thicker appearance, and shows a higher
probability of rain.
The Contrast setting affects the coverage of the cloud layer. A value
of 10% gives a constant sheet of clouds, with little variation within the
layer. While the default value of 200% shows subtle variation within the
cloud, it also reduces the cloud’s coverage.
The Texture Value controls the strength of the cloud layer. The
higher the percentage, the more cloud coverage in this layer.
The Small Scale and Big Scale values are two fractal scale parameters
for the appearance of the clouds.
Lacunarity sets the turbulence within the cloud layer. A value of 1
renders the clouds nice and smooth, while a value of 5 or higher breaks
up and distorts the cloud to give it a much more natural appearance.
The Octaves setting controls the amount of frequencies or detail your
fractal receives. The higher the value, the more frequencies are used
when rendering. This will create more details within the cloud, but it also
causes longer rendering times.
Cloud Type lets you select from cloud styles. Cumulus clouds are big
and puffy low-altitude clouds; Cirrus clouds are long and thin and are
generally found at higher altitudes. You can even simulate the streaming
effect that jets create when flying at high altitudes by selecting the Jet
Trails Cloud Type.
14.14 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
NOTE
The SkyTracer2 default texture has a Falloff setting already applied.
NOTE
That is 0 in the bottom and 1 at the top.
NOTE
By default only one Sun light is added.
The Suns Panel adjusts the flare parameters used as the sun.
Type lets you choose to render the light as a sun or a moon. You can
change the appearance of the sun or moon by adjusting the flare’s Size,
Flare Intensity, Flare Boost, Streaks, and Color Shift values.
Sun Position
By pressing the Sun Position button you access the Sun Spot motion
modifier. You adjust the sun’s position by specifying the exact day and
time for the light to be positioned. The Sun Spot motion modifier is
detailed in chapter 11.
Although you may never see it, the position of the SKT_Sun light
rotates properly as time passes. To increase the speed of the animating
sun, edit the Time Lapse field. To complete the time lapse effect, animate
the cloud’s texture parameters.
The Sky Baker Panel
Once you create your sky, you can either render it on every frame
along with your scene or Sky Baker can generate image files to map it
onto geometry and fake the effect. Several reasons are listed below for
why you would want to bake a sky:
1 You can see your sky in real-time using OpenGL.
2 The sky is saved as an image, so you can edit it with the image editor
controls (e.g., hue, saturation, gamma, etc.).
3 The solution is already figured out, so the sky renders extremely fast.
The Sky Baker panel lets you select the resolution of the images, their
image type, mapping projection style and a file prefix name. The
Antialiasing option activates and deactivates the Antialiasing pass when
rendering the images.
NOTE
The spherical projection has the advantage of being more compact and
not distorted when compared to the cubic projection.
By pressing the OK button Sky Baker will start to render all images. A
progress bar shows you how much Sky Baker has completed. Once Sky
Baker completes the job, you can choose to generate, position, and map
the geometry needed to complete the effect.
Texture Environment
The Texture Environment Environment lets you use a LightWave
texture as a background.
You can access the standard Texture editor, letting you mix images,
procedurals, and gradients. You can create turbulent multi-colored skies
with procedural textures, or manipulate images for incredible effects.
NOTE
For information on the Volumetrics tab, see Chapter 15.
L I G H T WAV E 3 D 7 14.17
COMPOSITING
The whole idea behind traditional image compositing is quite simple:
take two or more images, and merge them into a new composite image.
LightWave lets you do this, but also takes it one step further by letting
you throw objects into the mix.
The images can also be a sequence of pictures, so you may use
captured video footage as a background for your objects. A simple
example would be a modeled UFO moving against a real sky and trees.
Images can appear behind all objects, in front of all objects, or a
combination of the two with objects showing in between.
Compositing can be a render time-saver. If you set up a scene with
many objects, but only a few are moving, you could render one frame
with only the inanimate objects, and then remove all of those objects
and render the animated objects against the single frame saved earlier.
This is especially useful when the still objects are complicated or involve
ray-traced shadows, refraction, and/or reflection.
Foreground Images
Placing an image in front of everything may seem like a silly thing to
do. However, some options let you cut parts of the image away so you
can see through it. You can also make the image partially dissolved or
even envelope the dissolve. Dissolving in a black image in the foreground
will produce the common fade-to-black effect, or reverse the dissolve to
fade in from black.
You can make holes in the foreground image based on a defined color
range in the image. However, the biggest drawback to simply clipping out
portions of the foreground image is that you will have hard edges. A
color is either clipped or it isn’t, so you see either the foreground image
or the background image.
Use the Foreground Image pop-up to set the foreground image.
14.18 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
Alpha Images
You may also use a special alpha image to merge the background and
foreground images. This type of alpha image is very different from the
type you use to set up a transparency surface texture. LightWave
composites the foreground image over any objects or background by
adding their colors to the foreground image. How much background is
added is determined by the alpha image. The darker the area of an alpha
image, the more the background is added to the foreground. The pseudo
mathematical equation might look like:
Foreground + (1 - Alpha) * Background
If you used the same exact image for both the background and
foreground images, plus a solid black image as the alpha image, you will
receive a final rendered image where every pixel is twice the color value
it was. This results from the background image being completely added
to the foreground image.
Creating Alpha Images
Generally, alpha images will be generated when you render a scene to
create the foreground images. When you select Save Alpha on the
Render Options panel’s Output Files tab (Rendering > Render Options),
LightWave will generate and save an alpha image in addition to the
normal RGB output. The alpha image will be composed of grayscale
values representing the opacity of any objects that were rendered in the
scene.
An object that contains no transparent surfaces will be rendered as
solid white. Transparent surfaces will render in some shade of gray
L I G H T WAV E 3 D 7 14.19
Left: RGB image of three balls will differing transparency. Right:Associated alpha image
Since glows and lens flares are additive effects and are assigned a
value of black in an alpha image, glows and lens flares in the actual
foreground image will simply have the background values added, so they
will appear brighter where the background is a value other than black.
HINT
Generally, due to LightWave’s additive compositing method,
foreground images are created using a solid black backdrop.This
allows the composited background to show through unaltered when it
is mixed 100 percent with the foreground.
Foreground Key
Activate Foreground Key when you want to key out (i.e., not render
or see) a color (or range of colors) from the foreground image. Use the
same color value for both Low Clip Color and High Clip Color if you
wish to key out one color only. Use different values to key out the Low
Clip Color and High Clip Color values, and all those in between.
The Low Clip Color is the color value for the darkest color value that
will be keyed out. High Clip Color is the brightest color value that will
be keyed out.
HINT
If you want to create a giant space battle and lack the RAM to hold all
of the objects and image files, you could composite layers of ships and
achieve the same results.This is, in fact, how some broadcast TV shots
were done using machines with only 32MB of RAM in the early days
of LightWave.
PROCESSING EFFECTS
The Processing tab on the Effects panel contains functions that apply
effects to the rendered image. Choose Scene > Effects: Image Process to
directly bring up the Processing tab of the Effects panel.
L I G H T WAV E 3 D 7 14.21
Dither Intensity
Dithering blends two colors to simulate a third color between them,
forming a more realistic blend. Dither Intensity lets you set the amount
of color blending used by LightWave when rendering an image. Even with
24-bits of color data, it is possible to perceive color banding where
distinct changes in color or brightness occur within otherwise smoothly
ramped colors. Off removes all dithering, and you will probably
experience some color banding. Normal, the default setting, reduces
banding to the point where it nearly disappears. 2x Normal increases
the dithering even further, which may be useful for high-end systems
that still retain some appearance of banding in the final image. 4x
Normal boosts dithering so that the resulting image looks more grainy,
like film, which may be a desirable effect (especially when used with
Animated Dither, below).
Animated Dither
Select Animated Dither to change the dithering pattern used from
one frame to the next. This ensures that dithering is randomly placed, so
14.22 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
Color Saturation
Color Saturation lets you control the amount of color in a scene (or
in an animation, if using an envelope). Saturation at 100% is a normal,
full-color setting, while saturation at 0% is a black and white setting.
Glow Settings
When Enable Glow is turned active, LightWave can add a glow
around surfaces with a (surface) Glow Intensity above 0%. Use the
controls below to set up the amount of glow you wish to add to all such
surfaces.
Glow Intensity sets the brightness of the glow, starting from the edge
of the surface itself and fading away from there. Glow Radius sets the
distance (in pixels) that the glow extends from the edge of a glowing
surface. Note that different resolution settings will cause dramatically
different results.
PIXEL FILTERS
Pixel filters let external applications affect LightWave’s rendering
engine. Filters in this class can be affected by motion blur and other sub-
frame operations during the render rather than as a post process, as
image filters are.
Halftone
In print, halftone screens are made up of dots that control how much
ink is deposited at a specific location. Varying the resulting dots’ size
and proximities creates the illusion of variations of grey or continuous
color.
Halftone panel
Halftone effect
SasLite
See the discussion on the “Sasquatch Lite” displacement plug-in at
the end of Chapter 9.
IMAGE FILTERS
Image filters post-process rendered images. All pre-processor (image
filters added on the Image Editor) and post-processors (image filters
added on the Effects panel) are the same plug-in class. However, some
image filters require post-process data and cannot be used on the Image
Editor.
NOTE
You must render in one segment to use this filter, so you may have to
adjust your Segment Memory Limit (Camera panel) accordingly.
Bloom
Sometimes light reflections in the real world are so bright that too
much light will enter a camera lens, over-saturate areas, and create a
glare or a glowing halo. Shiny metallic objects like cars and water often
exhibit this phenomenon. Bloom will mimic this effect.
Bloom
NOTE
Use Bloom for a simple over-exposure bleed effect. For a more
feature-rich version, use Corona.
Viewing the buffer images with Image Viewer Layer pop-up menu
Corona
Corona is an extension of Bloom. Essentially, it scans the Input
Channel and whenever the input value exceeds the Input Threshold,
Corona applies some effect.
Input Settings
Input Basis lets you choose which internal buffer to read for the
bloom effect, so you can bloom on specularity, bloom on diffuse, and so
on. The Input Basis acts like a trigger: when its value exceeds the Input
Threshold, the effect is applied to that pixel.
Color uses raw pixel values—essentially any pixel on screen that is
bright enough gets bloomed. Alpha uses alpha’s pixel values—0 to 100%
for the image. Specular Shading uses 0 to 100% of surface specularity as
shaded during the rendering. This varies over a given surface and is
different from the Specular surface channel, which is uniform over a
surface. Diffuse Shading is similar, but uses the diffuse surface property.
Geometry uses the normal of object surfaces, where 100% indicates
that the normal points at the camera. Inverse Geometry is similar, but
100% indicates that the normal points perpendicular to the camera.
These are easily demonstrated using a sphere. For Geometry, the center
of the ball would trigger Corona, while Inverse Geometry would result in
the effect along the edges.
Special uses the surface Special Buffer feature on the Surface Editor.
The value of the Special Buffer is compared against the threshold and
when it exceeds that value, the Corona filter is applied.
The input can also be masked to skip areas of the input altogether.
Threshold Mask is basically an alpha channel. Brighter areas will be
susceptible to the mask, while darker areas will not.
L I G H T WAV E 3 D 7 14.27
Effect Settings
The Effect pop-up menu selects your blending mode. Additive yields
very hot (white) results where triggering pixels are closely grouped. This
is useful for, say, obtaining the look of metal being heated. The center of
a block of metal will become super hot while the edges do not. Normal is
similar to Additive, except in the case of heated metal, the effect at the
center and the edges tends to grow more evenly. Maximum takes the
maximum of contributive pixels. This yields an effect like applying balls
of cotton to brightly colored particles, whose effects start to merge as
the particles become closer to each other.
The Falloff pop-up menu lets you select how the bloom brush falls
off. The preview window will give you an idea of what the falloff will look
like.
Strength is the strength of the brush compared to the source pixel.
Size is the radius in pixels of the brush at a 640 by 480 resolution. If the
resolution is different, the brush will be adjusted so that the effect
always looks the same at different resolutions.
The Edit Texture button can modulate the color of the bloom brush
with a texture.
When Texture Only is inactive and Edit Texture is off, the effect uses
the color of the original image. If texture color is available, the effect
uses the color of the original image plus the contribution of the texture.
When Texture Only is active and there is also a texture color, the effect
uses the value of the texture only.
Other Settings
The Corona filter will affect your alpha channel if you activate the
Contribute to Alpha option.
Use the Save Effect to File option to save just the corona effect to an
image file when rendering. Note you must also choose a file format and
define a filespec.
When you use gradients with Corona, you will have additional options
for the Input Parameter. These options let you customize how the
corona effect is applied. For example, the size or intensity of the effect
can grow or diminish based on an object’s proximity to another object,
center of the image, and so on.
You can use the standard Preset Shelf if you want to save and recall
settings.
14.28 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
NOTE
For more information on using the Depth of Field controls, refer to
Chapter 13, "Depth of Field."
NOTE
Double-Sided geometry will not work correctly with the Render
Hidden Geometry activated.
HDR Exposure
This filter normalizes high dynamic range (HDR) images for using as
image maps and HDR output for displaying in applications that are not
HDR-savvy. The intensity mapping is non-linear, similar to the light
response process in the human eye.
This filter processes the HDR output created by radiosity renders into
better-looking, brighter pictures. It does this without impacting the
accuracy of the lighting simulation, which can happen if you add
ambient light or crank up lights unrealistically. It is really an essential
part of the camera simulation, for a perfect digital camera. (The Virtual
Darkroom filter is similar, but more complex. It simulates the two-stage
process of film response to light, and print emulsion response to
projection through the film negative.)
Although you can add this filter on the Image Editor, it is of limited
use there and more useful as an Image filter on the Processing tab of the
Effects panel. This is mainly because most images you load are not HDR
images, so pre-processing is not necessary and normal gamma should
probably be used, if necessary. Moreover, if you do load an HDR image,
it’s probably because you want the extra data. (Using the HDR Exposure
filter will eliminate some, if not all, of the extra data.)
L I G H T WAV E 3 D 7 14.33
HDR Exposure
Soften Reflections
Soften Reflections can scale the blur based on the surface’s value in
Special Buffer 1 (Advanced tab of the Surface Editor), if you check the
Scale By Surface Buffer option. (A value of 1 means 100 percent.)
To invert the image data, check the Negative option. The Normalize
option is available only for certain Source selections that don’t normally
provide image data, like X Motion. Normalize scales the values to be 0
to 1.
L I G H T WAV E 3 D 7 14.35
With the Destination pop-up menu, you can save the selected buffer
image as a separate Image File, or replace the Rendered RGB or
Rendered Alpha image data. (If you choose Image File, set the Image
Type and enter the full path and filename in the File Name input field.)
TextureFilter
Use TextureFilter to add the selected texture to the image before use.
You could use this filter to add, say, an animated Fractal Noise pattern to
a simple black image. Since textures are three-dimensional, particularly
procedurals, use the Axis setting to use the X, Y, or Z of the texture.
(Note: The differences between the Axis selection can be subtle.)
NOTE
The image preview window on the Image Editor will show the texture
as well.Thus, you can double-click the window to bring up the Image
Viewer, from which you can save this compiled image.This can then be
image mapped back onto the surface without all of the calculations
required with TextureFilter.
If you use an image sequence instead of a still image, you can even
see an animated texture! Note that if an animated texture is applied to a
still image, it will not appear animated.
The two modes, Vector and Blur, use motion data that identifies each
pixel’s immediate motion in the horizontal and vertical directions. The
Vector mode smears the pixel out based on the motion information,
while the Blur mode uses the horizontal and vertical data to smush
L I G H T WAV E 3 D 7 14.37
together the surrounding pixels with that pixel. Blur affects the pixels
around it including backgrounds, while Vector alters only the pixels of
the moving object.
The Blur mode should be used in conjunction with the normal motion
blur; however, the Vector mode can be used by itself—you don’t even
need to use antialiasing! The result can be drastically reduced rendering
time.
Below is a comparison between regular motion blur and the two
modes of Vector Blur.
Overlapping Objects
Since objects become transparent with motion blur, the filter needs
something in the background of the blur. When Compensate Background
is active, the filter does not use the backdrop and attempts to
compensate for this absence. This works in most cases, but may not give
a very realistic motion blur.
When Compensate Background is not active, the filter uses the
backdrop. However, it will not show an object behind another object.
may see problems with motion blur on shadows and moving textures.
However, it can be a great help when used in conjunction with normal
motion blur, by giving you better quality with lower antialiasing settings
(Camera panel).
Video Legalize
The Video Legalize filter might be more appropriately named Hot
Video, since it assumes that pure black, RGB 0, 0, 0, is mapped to the
proper pedestal by the encoding device (e.g., 7.5 IRE for NTSC). The
encoding device may not, however, correct hot pixels—that is, colors
that exceed certain video specifications. This is where VideoLegalize
steps in.
Pixel values are generally scaled into IRE units using the Black Point,
White Point and Pedestal settings as follows: Level = Pedestal + (100 -
Pedestal) * (pixel - Black) / (White - Black). White is always 100 IRE and
NTSC black is 7.5 IRE. Thus, for NTSC, the level would be computed:
Level = 7.5 + 92.5 * (pixel - Black) / (White - Black).
Normally, an RGB level of 0.0 is black and 1.0 is white. If those are
used for the Black Point and White Point settings, the level will be 7.5 +
92.5 * (pixel - 0.0) / (1.0 - 0.0) or just 7.5 + 92.5 * pixel. When the pixel is
1.0, the level is 100 IRE, and when the pixel is 0.0, the level is 7.5 IRE.
NOTE
Note that the actual computation is more complex than the above
since other operations, like gamma correction, can happen.
The settings default to NTSC encoding, but you may also select PAL
from the Encoding pop-up menu. (Note that you also need to click the
Default button after selecting a new Encoding item.) You may change
the individual settings from their defaults, if desired.
NOTE
It is highly recommended that you use VideoLegalize (as a post-process
image filter) if you plan to use your images for video.
The Video Tap filter will save a second image using different camera
and render option settings. This is perfect for times when you render a
film resolution scene, but you want to preview a video resolution version
on your Video Toaster or other digital disk recorder.
FUN FACTS
Movie-makers often attach a video camera to a film camera, so they
can watch dailies without developing the film—saving time and money.
This filter’s namesake is the video tap on the film camera. (Clever idea
by Brad. More clever name by Arnie.)
Virtual Darkroom
The Virtual Darkroom filter simulates the photographic capture of
images. It is based on A Model for Simulating the Photographic
Development Process on Digital Images, by Joe Geigel and F. Kenton
Musgrave in the SIGGRAPH ’97 conference proceedings.
14.40 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
Virtual Darkroom
Global settings are the four controls located at the top. Output Type
specifies whether the output image is Black and White (single-plane
grayscale) or Color (three-plane RGB). Use Reset to Default to reset all
controls to default values. You can save and load settings using the Save
Current Settings and Load New Settings buttons.
Basic Settings Tab
Basic Settings control everything except for those settings on other
tabs. Negative LUX is the illumination value for the negative pass—
analogous to scene capture with a camera—which will affect overall
brightness. Negative Time is the exposure time for negative pass,
essentially the exposure setting on the virtual camera. Positive LUX is
the illumination value for the positive (printing) pass. Think of this as
the brightness of the bulb in the enlarger or printing mechanism.
Positive Time is the exposure time during the printing pass of virtual
enlarger.
Enable Scattering will activate the internal scattering effect. Negative
Width and Negative Height are the width and height, respectively, in
millimeters, of the virtual negative. These values are used in scattering
and grain calculations. Enable Grain will activate the grain effect.
Selwyn Granularity controls the intensity of the grain. Increasing this
value increases grain, decreasing it will decrease grain.
Spectral Sensitivity Tab
If Output Type is set to Color, there will be six sets of RGB
percentage controls. Each RGB trio specifies the percentage of the black
and white output plane that is contributed by the input image plane
L I G H T WAV E 3 D 7 14.41
named in the control. For example, the RGB trio in the upper-middle
defines how the output from the negative passes on the spectral
sensitivity module creates the green plane.
If Output Type is set to Black & White, you specify what percentage
of the red, green, and blue planes of the input image are used when they
are combined into a single black and white image. This transition takes
place in the negative (first) pass. During the printing (second) pass,
there is only a single input plane, so spectral sensitivity is not used.
Film, Paper, and MTF Curve Tabs
You can enter up to 21 pairs that define the characteristic curve of
the film and paper, and the function for modulation transfer used for
scattering calculations. For each pair, the first value represents log
(exposure) and the second value represents the density.
For all Curve tab entries, points should be entered in order starting
with Pt. 01. If Output Type is set to Color, curves must be set for each
output plane by selecting the appropriate Red Plane, Green Plane, or
Blue Plane sub-tab.
Original image.
Left: Processing with TMax 100/PolyMax with scattering of a 3.2 mm x 2.4 mm. Right: Same with Grain enabled
14.42 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
Left: . Right: Processing with TMax 100/PolyMax with scattering of a .32 mm x .24 mm. Right: Same as above with Grain enabled
WaterMark
The WaterMark filter embosses an image in the lower-right quarter of
the image. You can select any loaded image; however, grayscale images
using a black background work best. The Light Angle field determines
the direction of the implied light source.
NOTE
Other filters, like Pixel filters, may appear on the Image Editor in the
list of image filters.
WAVEFILTERIMAGE
The WaveFilter Image image filter allows you to apply and adjust
image filters, color filters, grain and matte filters to the entire image, the
background, objects only, shadows only, a special buffer, or a user-
definable color range. A powerful interface with color preview provides
the control you need to tweak your image to perfection.
Image filters include blur, sharpen, edge blend, saturation, negative,
high/low limit, palette, film grain, and flip frame. The edge blend filter
provides additional and faster anti-aliasing control, allowing a possible
30% to 50% savings on rendering times.
Color filters controls for RGB values, as well as the contrast, midtone,
gamma, luminosity and brightness of the image. The filters work on a
percentage scale, but values above 100% can be entered to create all
sorts of interesting effects.
L I G H T WAV E 3 D 7 14.43
NOTE
Special thanks to Mike Reed for his work on this plug-in.
Image Filters
Image Filters can be used individually or in combination with other
filters to apply interesting effects. These filters use simple mathematical
formulas for faster image rendering. Several adjustable presets are
included for quick effects.
14.44 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
Blur Image
Blur Image simulates out-of-focus effect and is applied equally across
your image. This filter is commonly used on the background to help
contrast your sharply focused objects in the foreground.
Sharpen
Sharpen is an edge-seeking (low-pass) detail-enhancing filter that will
increase the sharpness between surface colors by exaggerating the
difference in color between the two edges.
Edge Blend
Edge Blend is a softening tool that will smooth the edges between
sharply contrasting surfaces. This helps to tone down the stair-step
edges or jaggies found in computer graphics.
You may control the Number of Passes this filter makes. Higher
values provide finer detailed blending of the edges. Tolerance allows you
control the amount of edge affected. You may also limit the edge
detection to Object Edges Only.
L I G H T WAV E 3 D 7 14.45
Negative
Negative gives control of the amount of negative applied to an image.
50% negative is equivalent to RGB 128/128/128.
Posterize
The Posterize filter reduces the colors used causing a poster-like
effect. Lower values allow more colors.
Palette Reduce
The Palette Reduce filter limits the colors in your image to smaller,
evenly distributed, color palettes. Palette reduction method can be
specified as a preference by choosing either Average (the default),
NTSC/PAL Luminance, HDTV Luminance, Nearest Red, Nearest Green,
or Nearest Blue.
Several palettes are available on the Use Palette pop-up menu. If
Custom is selected, the Palette button and input field will be available.
Here you can specify a Photoshop *.act file or an ASCII file that defines
each color in the desired palette.
Film Grain
Check Add Film Grain to add a random noise effect. of selectable
density to your image. The Color setting defines the grain color.
Checking Greyscale Grain causes the grain to be various levels of gray.
Flip Frame
Flip Frame provides a quick method to vertically and/or horizontally
flip the image.
L I G H T WAV E 3 D 7 14.47
Color Filters
Color filters allow global control of general color attributes.
Contrast
The Contrast value sets the mid-tones of the selected part of the
image either towards the highlight or shadow range. The Center setting
controls the contrast tonal range.
MidPoint
The MidPoint value is similar to the Brightness setting, except it
affects only the mid-tones within the selected part of the image. Use in
conjunction with Brightness for a good overall lighting effect. The Center
setting controls the MidPoint tonal range.
Gamma
Gamma allows control of the range between the darkest and lightest
areas of your image.
14.48 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
Luminance
Luminance adds overall brightness or darkness to the frame.
Shadows, mid-tones, and highlights will all be affected.
Brightness
Brightness multiplies the amount of light within the selected part of
the image. Mid-tones and highlights are affected, while dark shadows are
not affected. Use Brightness to adjust the lighting within your image
without resetting the scene’s lights or raising the ambient light level.
Adjust Color
The Adjust Color options provide different options for adjusting
colors.
Mult: Pixel x Percentage looks at the color information in each RGB
channel and multiplies the base color by the selected Color.
Add: Pixel + Color adjusts the color information by increasing the
amount of R, G and B color in the image.
Sub: Pixel - Color adjusts the color information by decreasing the
amount of R, G and B color in the image.
Replace: Pixel = Color replace will change the RGB color from the
current base color to the new selected Color.
Matte Filters
The Matte tab contains options that affect the image’s alpha channel.
You can see the results in the Image Viewer when you render a frame
(F9) by simply selecting Alpha from the pop-up menu in the upper-right
corner.
Choosing Custom will set the alpha channel for the affected area to a
grayscale value defined in the Custom Value input field.
Choosing All Black sets the alpha channel for the affected area to
black. Choosing All White sets the alpha channel for the affected area to
white. Generally, with these, you will want Affected Areas (Affect tab)
set to something other than Full Frame.
Invert reverses the alpha channel for the affected area.
L I G H T WAV E 3 D 7 14.49
Affected Areas
WaveFilter can apply most filters to a scene’s images, surfaces,
channels or objects. Often, when multiple WaveFilter passes are
installed, you will select a different portion of the image to effect in each
pass.
Objects applies the effect to all objects, including an image mapped
polygon background.
Background applies the effect to the background only.
Shadows applies the effect to the shadow channel only.
Full Frame applies the effect to the entire frame.
High/Low Color Range applies the effect to a selected color range in
all three color channels (RGB). The range is defined by the Lower Bound
and Upper Bound colors.
Selected Surfaces applies the effect to selected surfaces. Surfaces are
considered selected if they have a Special Buffer value greater than zero.
To access, click the Special Buffers button on the Advanced tab of the
Surface Editor.
Preset Shelf
Click Use Shelf to access the standard Preset shelf to save and load
presets. You can save WaveFilter settings to the shelf by double-clicking
on the preview image.
Enable/Disable
You can quickly enable and disable all filters by clicking the Enable
All Filters and Disable All Filters buttons.
14.50 CHAPTER FOURTEEN: BACKDROPS AND IMAGE PROCESSING
Preview Window
The preview window will give you an idea of what the current settings
will do. This can take a little time to compute so you can disable the
preview. You may also use the last rendered image instead of the default
image.
C hapter 15:
Volumetrics
LightWave features volumetric effects—essentially lighting and
particle effects with physical volume. These effects are common in
everyday life and can play a key role in creating dramatic realistic
environments. However, they are difficult to reproduce using standard
polygonal models.
BACKGROUND
A very common example of volumetric lighting is the atmosphere: the
color of the sky comes from the scattering and absorption of light in the
different layers of the atmosphere.
NOTE
Volumetric light effects, like a cone of light from a flashlight, are
discussed in Chapter 32.
that causes the lighting effect, while the density distribution gives the
global appearance of the fog. If you want a thick fog lying on the ground
and fading with altitude, you will have to use a density distribution that
makes the density high at lower altitudes and low at higher altitudes. If
you want to add turbulence in the fog (to have a more cloudy
appearance), you can add fractal noise, which creates a 3D density field.
Computational Issues
Volumetrics are calculated by integrating all the scattering/absorption
contributions along a ray (which comes from the camera). When you use
a 3D fractal density field, the integration must be made numerically with
a limited number of sampling points. In this case, the values will be
calculated at each sampling point, which means that for 50 sampling
points, the algorithm calculates 50 density field values, 50 lighting
values, and 50 scattering/absorption values. All those values can take a
lot of time to compute. Using fewer sampling points will result in a faster
rendering but will introduce numerical errors: this is volumetric aliasing.
Volumetric shadows can be obtained this way by measuring the lighting
conditions at each sampling point along the ray.
When you work with a normal density distribution, you can make the
integration literally, which gives a much faster rendering. But in this
model (which we call fast model), it is not possible to measure lighting
conditions along the ray, and as a consequence it is not possible to get
volumetric shadows.
Another important note about numerical issues is how to adjust
values to get the desired effect. The intensity of the effect is always
related to the length of the medium crossed by the ray. This is obvious if
you compare cigarette smoke to smoke from a large fire—the size of the
volume has a big influence on the result. The behavior of light may also
change completely when the volume size changes, because absorption
may overpower scattering, and vice versa. A good example of this is
clouds.
When you look at clouds, you see that small thin clouds are bright
and totally white, while big clouds have dark gray areas and a thin white
border. The dark gray color comes from the absorption of light inside
the cloud. Even the scattering of light emitted inside the cloud is
absorbed from the point of scattering to the boundaries of the cloud. In
this example, absorption takes precedence over scattering when
thickness gets bigger. However, under other circumstances, the opposite
could occur. When you use high absorption and scattering values, you
can create explosion-like effects, where there is very high contrast
between bright and dark areas. In conclusion, when adjusting
parameters, you must be aware of the scale of the object you are
working on.
L I G H T WAV E 3 D 7 15.3
About Particles
When you work with particles, a sphere of gas is associated with each
particle. As a result, a particle cloud is really just a union of spheres.
Computing the effect for every particle can be computationally intensive,
particularly when their spheres overlap one another. The solution is the
automatic particle sizing option, which evaluates a particle size so that
each particle is close to another. The result is a dense cloud optimized
for numerical integration and lower rendering times.
NORMAL FOG
LightWave can generate a quick fog effect that is useful for many
special effects. Just as objects seem to blend into real fog with distance,
the effect fades the objects away into the fog color you set. Fog
surrounds the camera in all directions, as though the camera were in the
middle of a huge spherical fog bank extending in all directions.
The fog settings are on the Volumetric tab of the Effects panel (Scene
> Effects: Volumetrics). In setting up fog, you will set a minimum and
maximum distance from the camera. Within and beyond this range,
objects will take on some amount of the Fog Color. You can also specify
the percent of fog color that objects take on at the minimum and
maximum distances.
The Fog Type pop-up menu sets the characteristics of your fog. Off,
obviously, turns off the fog effect. The other fog types differ in how the
effect falls off toward the camera. Linear falls off in a linear manner.
Nonlinear 1 is somewhat more realistic in appearance, since the fog will
appear to grow thicker with distance. Nonlinear 2 has a steeper falloff
curve.
It’s important to realize that the Fog feature doesn’t actually calculate
a wispy volumetric fog around objects, but rather changes the color of
the objects to that color chosen as the Fog Color. As such, the backdrop
will receive no amount of fog. For volumetric 3D fog, use the GroundFog
volumetric, discussed later.
15.4 CHAPTER FIFTEEN: VOLUMETRICS
A negative Minimum Distance will start the fog behind the camera.
You can even enter a larger minimum amount than the Maximum
Distance amount, which results in an effect whereby objects will render
in more of the fog when closer to the camera.
By default, fog is applied linearly between the Minimum Distance and
Maximum Distance. Non-linear options are also available, which apply
the fog amount more rapidly as they are moved away from the camera,
then less so as they approach the maximum distance. The small graph to
the left of the setting gives you an indication of the fog application over
distance.
The Use Backdrop Color option causes an object to blend in with
whatever backdrop you have set, including a background image. This
can have the effect of making objects appear slightly transparent. Use
this option to simulate the effects of an underwater environment or a
hazy, foggy day with an appropriate Backdrop Color like bluish green for
underwater and grayish white for a foggy day.
If you add the Texture Environment environment (Scene > Effects:
Backdrop) and also activate Use Backdrop Color, your fog (and
backdrop) can use a texture.
Textured fog
NOTE
The rendering speed of the Fast Fog Render Type for the Ground Fog
volumetric comes at a price. Because it is not a full volumetric effect, it
will not always blend accurately with other volumetric effects, like
volumetric lights.This may result in visible artifacts in your rendered
images.
L I G H T WAV E 3 D 7 15.5
NOTE
Also see the discussion on the Unaffected by Fog option in Chapter
9 and the special display options for fog in Chapter 6.
VOLUMETRIC ANTIALIASING
The Volumetric Antialiasing option activates or deactivates the
antialiasing of volumetric plug-ins and volumetric lights. If this option is
off, the volumetric effects from the first rendering pass are stored and
reused in later passes, instead of being re-rendered in each pass.
Obviously, this can save rendering time, but will require more memory
and may cause problems when used in conjunction with motion blur or
depth of field.
VOLUMETRIC PLUG-INS
Volumetric Plug-ins are added on the Volumetrics tab of the Effects
panel.
GROUNDFOG
Use the GroundFog volumetric plug-in to add three-dimensional fog to
your scene. The fog has actual physical size so, for example, the camera
can move in and out of the fog. This differs fundamentally from normal
fog, discussed previously, where the camera is always within the fog.
15.6 CHAPTER FIFTEEN: VOLUMETRICS
GroundFog panel
With the Render Type pop-up menu, you can choose between two
different types of GroundFog. Fast Fog is a quick-rendering fog with a
uniform thickness. It is basically the three-dimensional version of normal
fog. Ray Marcher adds an uneven fog, particularly when you use a
texture. Since this fog varies by precise physical position, like real fog, it
is computationally intensive, but generally yields a more accurate and
realistic result.
When using Ray Marcher, you can throttle the amount of
computations using the Quality pop-up menu at the bottom of the panel.
Add a texture by activating the Use Texture option. Clicking the Edit
Texture button will bring up the standard Texture Editor. A fog texture
will make your fog more interesting and less flat.
The Top and Bottom settings control the altitude of the fog, that is,
where your fog starts and stops vertically. Falloff determines how the
fog decreases to zero, from the Bottom to the Top. The higher the value,
the more the fog will decrease its density. Note that the Ray Marcher
mode tends to fall off quickly at the fog’s edges, while Fast Fog has a
uniform linear fall off.
NOTE
Make sure you know where your camera is when using GroundFog.
The effect is really best seen from outside of the fog. If your camera is
inside the fog, changing settings may appear to have little effect. In fact,
if your camera is always within the fog, you may want to just use the
(faster) normal fog.
The Luminosity and Opacity values are the values where the fog is at
its thickest.
L I G H T WAV E 3 D 7 15.7
Without fog
HYPERVOXELS
With ordinary polygonal objects, realistic effects like liquids, smoke,
clouds, and fire are difficult, if not impossible, to achieve without
HyperVoxels. It simplifies the creation of volumetric rendering effects
such as photo-realistic clouds, flames, explosions, dust, nebulas,
contrails, fluids, smoke, ash, pyroclastics, gelatin, electromicroscopic
images, rusted materials, detailed solid and rocky surfaces, and much,
much more.
15.8 CHAPTER FIFTEEN: VOLUMETRICS
Example HyperVoxels
HyperVoxel cow
HyperVoxel fog
NOTE
HyperVoxel objects exist just as normal objects do.Thus, they cast
shadows, are reflected, and so on. However, currently, plug-ins do not
have access to all lighting information. As a result, HyperVoxels will
continue to receive shadows, even if the Receive Shadows option on
the Object Properties panel is disabled.
6 Make sure the Automatic Preview options are active so we can see
the results of your efforts. Automatic Preview updates the preview as
you make changes, so you don’t have to keep clicking Render. Open
VIPER (the button is on the main Layout toolbar). You should already
see a rather dull ball in the VIPER window—of course it’s a lot more
interesting than a rendered null.
15.12 CHAPTER FIFTEEN: VOLUMETRICS
NOTE
You can preview animated textures with VIPER. See Chapter 3 for
more information. Remember that VIPER uses the camera view, so
make sure the camera can see your particles.
7 Change the Particle size to 2. The ball should be larger now. (Would
you believe twice as big?) Activate the Draft Mode to speed VIPER up.
8 Click on the HyperTexture tab. This is where you define the surface
texture—essentially the terrain of the surface. Select FBM from the
Texture pop-up. Notice that this is similar to setting a surface
procedural texture.
9 Go ahead and play around with the various settings on this tab and
watch the HyperVoxel change.
L I G H T WAV E 3 D 7 15.13
3 Let’s add some color. Go to Shading tab > Basic tab and click the
Color Texture button.
4 Change the default Layer Type to a Gradient and use Local Density
as the Input Parameter. This will apply the gradient based on the
density of the cloud.
15.14 CHAPTER FIFTEEN: VOLUMETRICS
5 Create three keys: blue, yellow, and red, top to bottom. You will see
VIPER updating the preview as you make changes. Click Use Texture
to close the panel when you are done.
6 The options on the Shading tab > Basic tab control the basic look of
your volumetric HyperVoxel. You can adjust the color, opacity, and
density. The lower half of the tab controls the fractal look of the
object. Try playing with the settings to see their effects.
L I G H T WAV E 3 D 7 15.15
7 Click on the Advanced subtab. As you might expect, this tab contains
more advanced options. Included are options to define how the
HyperVoxel object is lit, as well as self-shadow options.
8 Try messin’ with the various setting, including the Sprite mode.
5 Open VIPER and set Preview Options to Scene Preview. This will
give us a preview of all of the HyperVoxel objects in the scene.
6 Select Null (1) and choose New Group from the Blending Group pop-
up menu on Geometry tab. Accept the default name Blend Group (1)
by clicking OK.
L I G H T WAV E 3 D 7 15.17
7 For each HyperVoxel set the Blending Group to Blend Group (1) and
the Blending Mode to Additive (Geometry tab). By placing all of the
HyperVoxels in the same group, they can interact with each other.
8 Try changing the Color (Shading tab > Basic tab) of each null and
giving them Texture (HyperTexture tab).
Preview Options
When used with HyperVoxels, the Preview Options pop-up menu on
the VIPER window has some options. Object Preview gives you a
preview of the selected HyperVoxel object only from the camera’s
perspective. Scene Preview will show you all HyperVoxel objects visible
15.18 CHAPTER FIFTEEN: VOLUMETRICS
Use Z-Buffer
The Use Z-Buffer in Preview option (on the main HyperVoxel panel)
allows you to preview your HyperVoxels in the last rendered frame.
(Note: Object Preview or Scene Preview modes only.) This requires that
the Enable VIPER option be active on the Render Options panel.
Use the Copy button to copy the settings for the selected HyperVoxel
object to a memory buffer. These can be pasted to the currently selected
HyperVoxel object using the Paste button.
You can enable/disable HyperVoxels for an activated object by
clicking in the checkmark column and you will not lose your settings.
The Activate button will activate the selected object and set all settings
to their defaults. The Deactivate button places the object in an inactive
default state. With Activate and Deactivate, you will lose any existing
settings.
If the Show pop-up menu is set to All Objects, then all objects in the
scene will be listed. HyperVoxels Only will list only HyperVoxel objects;
however, this includes disabled HyperVoxel objects.
Object Type
The Object Type pop-up menu lets you choose between the
previously demonstrated Surface, Volume, and Sprite HyperVoxel
modes. Use it for testing purposes when you are developing your
HyperVoxel animation.
Dissolve lets you individually set an opacity value for each active
HyperVoxel object: 0% is totally opaque and 100% is completely
transparent.
Sprites
The Sprite mode is a simplified two-dimensional slice (or slices) of a
HyperVoxel, so it can quickly produce results to give the user a fast
sketch of the HyperVoxel’s rendered appearance. You might think of it as
a slice of a Volume that has been mapped on a polygon that always faces
the camera.
You may want to use Sprite to accelerate the setup process for
Surface or Volume modes. It’s even great for instances where you don’t
need a full 3-D volumetric effect, like a smokestack in the distance.
15.20 CHAPTER FIFTEEN: VOLUMETRICS
Geometry Tab
Enter a specific radius for the individual particles in the Particle Size
field. Click Automatic Sizing to compute an average size—this is a handy
way to find a starting point. The average particle size is based on the
shape of the entire object—HyperVoxels surfaces will not intersect at
this setting.
NOTE
When you first activate an object, automatic sizing is performed for
you.
no blending
Show Particles
The Show Particles option will display a bounding sphere in
viewports.
NOTE
The HyperVoxelsParticles Displacement plug-in lets you set the
HyperVoxels particle base color to that of the vertex color map, if one
exists.
HINT
You might try the (faster-rendering) corresponding bump textures on
the Shading tab without HyperTextures, if you don’t need the true
surface details. Remember this: “Don’t get hyper if bumping will do” or
“A bump in the night is not worth getting hyper over.”
The Thickness setting, which defaults to 50%, lets you adjust the
general heaviness of the volume. Higher Smoothing values yield less of a
hard-edged look and volumes will appear more wispy.
Baking HyperVoxels
The baking feature subdivides HyperVoxels into a 3-D grid of
subvolumes (a space subdivision). This dramatically reduces the
necessary computations and allows preprocessing of the HyperVoxel
effect, including shadows, textures, and so on. The result is essentially a
stack of image maps.
Click the Options button to display the baking options. The size of
the “image map stack” is set on the Resolution pop-up menu. The first
two numbers define the size of the images and the third defines the
number of frames.
Enter the name of the file to save in the Filename field. The animation
codec (File Type) used when saving the volume data is very important.
By default it uses QuickTime uncompressed because this format
preserves the alpha channel. This is important because the alpha
channel encodes the volume opacity information. Many codecs don't
handle the alpha channel properly and the opacity information will be
compromised. (Note that you could edit the file externally in another
program or even create one from scratch.)
HINT
Try to avoid using these Light options, if you are ray tracing shadows.
Ray-traced shadows on volumetrics is incredibly computationally
intensive and will often result in unacceptable rendering times. A single
pixel in volumetrics requires 20 or more samples and a shadow is ray
traced for every sample.Try to fake lighting with Ambient Intensity
and surface Luminosity or use shadow map Spotlights.
Ambient Color lets you specify the ambient light color of the volume.
This setting works hand-in-hand with the Color setting on the Shader
tab. Ambient Color is similar to ambient light in Layout, except it applies
only to the selected HyperVoxel object. Basically, the shading process is
very similar to what happens with regular object surfaces.
Because of the way illumination is calculated inside volumetrics
objects, Ambient Intensity can be higher than 100% without
overexposing the image.
With the Number of Slices setting, you can “thicken up” the effect by
increasing the number of slices used for sprites from the default setting
of 1. This allows you to get something a little closer to the Volume mode
while still retaining the speed of the Sprite mode.
You may choose to light the Sprite using all lights in your scene or up
to two specific lights.
On the Clips subtab, you can map an image directly onto a sprite
using the Add Clip button. Any image available to the scene may be
selected. Use the Image Editor to load an image not already available.
L I G H T WAV E 3 D 7 15.29
Clips subtab
Clips are added to the HyperTexture. If you want to see only the clip,
set the Texture option to (none) on the HyperTexture tab.
Some options on the Alpha pop-up menu let you cut away parts of the
image you don’t want to use. If the image file includes an alpha channel,
choose Embedded to use the alpha channel. Use Luminosity to leave
brighter parts of the image. The Black mode will cut away black areas.
The Threshold level lets you increase the range for what is considered
black.
The Rotation setting sets a rotation speed for your clips. This is
perfect for effects like billowing smoke and explosions. The higher the
setting, the faster the rotation. Positive values make the clip rotate
clockwise. Rotation always faces the camera.
If you do not want to use the color information in the image, uncheck
Use Color. Then, only the grayscale information will be used.
AntiAliasing will yield better-looking edges, but it significantly
increases render time and memory requirements.
When Solid is checked, the sprite is rendered as a solid object,
preventing the normal additive result of overlapping sprites.
Sprite Clip Frame Offset
If you use HyperVoxels with particles, you can use multiple clips. The
Frame Offset setting determines how you want to map an image
sequence to a given particle. Particle Age starts the sequence for a
particle at birth. Thus, the image will likely be different for particles at a
given frame. Uniform will use the layout time as the time in the
15.30 CHAPTER FIFTEEN: VOLUMETRICS
sequence. Thus, the image used is the same at each frame. When the
bottom of the list is reached, it starts again from the top. Random will
assign a random offset to each particle.
Frame Offset is an important control for sprite animations. It allows
you to decide how to attach images to particles. Particle Age is
probably the most useful. You can have literally hundreds of particles,
each mapped with distinct image sequences. For example, you could
have particles with independent water-splash image sequences, creating
a complex and rich visual effect.
HyperTexture Tab
The Texture pop-up menu determines what the texture will look like.
The textures in this menu correspond to the identically named
procedural textures, although not all of them will be available here. (See
Chapter 31 for more information.)
HyperTexture Tab
The big difference is when you are using a Volume (Object Type)
HyperVoxel. In this case, you can animate the texture effect.
NOTE
Animated textures can be previewed with VIPER. See Chapter 3 for
more information.
The Particle Weight Input Parameter is used with regular objects that
use HyperVoxels and requires them to have a weight map. The object
must also have the HyperVoxelsParticles Displacement plug-in added.
Set Particle Weight should be checked and the weight map selected.
15.32 CHAPTER FIFTEEN: VOLUMETRICS
7 On the HyperVoxels panel, add a texture to the Particle Size and set
the Layer Type to Gradient. Choose Particle Weight as the Input
Parameter. Create some keys.
C hapter 16:
Rendering Options
The Render Options panel (Rendering > Render Options) contains all
of the settings that control your output. Generally speaking, it is here
that you set how realistic you want your images to look. They can range
from wireframe test versions to full ray-traced final images. You will also
specify the file format for your output, ranging from single frames to an
animation.
RENDER FRAMES
The Render First Frame, Render Last Frame, Render Frame Step
fields determine the range of frames you want to render as well as the
frame increment. These are independent from the similar fields in the
main interface, which control the playback of scene and Preview
Animation creation.
16.2 CHAPTER SIXTEEN: RENDERING OPTIONS
AUTOMATIC ADVANCE
By default, LightWave will render only one frame at a time, even if you
have set a range of frames to render. After each frame is rendered, you
can click the Continue button on the Render Status panel (or press the
ENTER key) to continue rendering the next frame in the range.
This would likely get tedious in a 900 frame animation, so selecting
Automatic Frame Advance will continuously render all of the frames in
the defined range without stopping after each frame.
WARNING
When rendering, make sure you check the state of Automatic
Frame Advance before you grab some shut-eye!
MONITORING PROGRESS
A watched pot does indeed eventually boil: when you activate the
Show Rendering in Progress option, you add a preview window to the
Render Status panel that displays the image as it is generated. The
number of colors used in the window is determined by your computer’s
display setting. Of course, this is only a representation of the final image,
which will be rendered in full color at the proper resolution.
L I G H T WAV E 3 D 7 16.3
NOTE
Using the Show Rendering in Progress option adds to rendering
times. As such, this feature is best used for test rendering.You should
deactivate it for the final rendering process.
You can close the Render Status window by clicking the Abort button
or pressing the ESC key. You can also render the next frame (if you aren’t
using Auto Frame Advance) by clicking Continue or pressing ENTER.
NOTE
The FP (floating point) version of the Image viewer maintains the
floating point image data. Use it if you want to save files from the
viewer and need the FP data. Note that it uses more memory than the
regular Image Viewer.
VIPER
VIPER (see Chapter 3) can use information from the internal render
buffers to perform tasks like surface previews. When used in this
manner, you must activate the Enable VIPER option. However, when you
render you should disable this option, since it increases rendering time
and memory consumption.
RENDERING
To render the current frame—determined by the position of the frame
slider—choose Rendering > Render Current Frame or press F9. Select
Render Scene to render the entire scene using the defined range of
frames on the Render Options panel, or press F10. Make sure Auto
Frame Advance is set as desired!
16.4 CHAPTER SIXTEEN: RENDERING OPTIONS
NOTE
Colors on your computer monitor will not match actual NTSC/PAL
colors. If possible, always test frames from LightWave on a video
monitor prior to final rendering.
You can also render only the selected object(s) at the current frame
by choosing Rendering > Render Selected Objects. Unselected objects
can still cast shadows or be seen in reflections on the rendered objects.
NOTE
The Render Status window is a modal window.Thus, you may be
precluded from accessing options on other windows until it is closed.
RENDERING TAB
Depending upon your needs, LightWave can produce different types
of output. Select a Rendering Mode to output images best suited for
your project.
Quickshade mode
Wireframe mode
HINT
To produce a solid wireframe animation, Use the Unshared Edges,
Surface Borders, and Other Edges options on the Object
Properties panel’s Edges tab, and render in Quickshade mode.
Realistic is the mode you will use most for final rendering. It renders
images with full photo-realistic quality. Plus, you can use all ray tracing
functions.
16.6 CHAPTER SIXTEEN: RENDERING OPTIONS
Realistic mode
NOTE
Lights must have Ray Trace selected as their Shadow Type (Light
Properties panel).
HINT
Judicious use of the Self Shadow, Cast Shadow, and Receive
Shadow options (Object Properties panel, Rendering tab) for
individual objects can speed up rendering times dramatically when ray
tracing shadows.
NOTE
The surfaces must have one of the Ray Tracing options selected as the
Reflection Options (Surface Editor’s Environment tab) in order to
ray trace reflections.
NOTE
Also see the discussion on the Unseen by Rays option in Chapter 9.
cost is still there even when rendering a 50% test image or a limited
region, so any experiments to determine whether or not to use the
option should be done at full image size.
HINT
If you do not have a lot of reflective surfaces in your scene, try using
low values (even a value of 1).
WARNING
A potential for problems exists with some plug-ins that were not
designed with multithreading in mind. If problems occur, try using the
1 Thread setting).
Data Overlay
The Data Overlay option lets you place a descriptive title (of up to 20
characters) along with a frame reference in the lower portion of the
rendered image. This is useful when you generate large numbers of
animations for others to review and approve before final rendering. It
can serve to identify the scene being rendered, and the specific frames
you may wish to change. The Data Overlay pop-up menu setting
determines the format for the frame reference. Enter the text in the
Label field. If Data Overlay is not set to Off and the Label field is blank,
the scene name will be used automatically.
16.10 CHAPTER SIXTEEN: RENDERING OPTIONS
NOTE
If you have Data Overlay active, when you save your scene you can
choose to have the scene name automatically set as the Label.
Data Overlay
OUTPUT FILES
Animations can be saved in two ways: as a single animation file (e.g.,
AVI) or as separate individual frame files. The two are not mutually
exclusive.
4 If the animation type has options, click the Options button to display
a dialog with the available options.
You can activate and deactivate Save Animation without losing the
defined animation file.
degrees at frame 20 (the same view as 0°), then you will have 20 columns
(frames 000 to 019). In a typical movie, the row angle will step up after
this many frames.
The Start Pan and End Pan values set the angle range of the
horizontal views.
Flip Horizontal Control reverses the object's direction of rotation
with regard to horizontal mouse movement. In other words, if you drag
the object left and it turns to the right, you need to change this setting
(or reverse your entire animation!).
Rows (Tilt Frames) is the number of frames of vertical views in the
animation. In a QTVR Object Movie, the animation moves through all the
pan frames in a row before moving to the next tilt frame, and does all the
pan views again with that tilt.
If there are 20 pan frames (000 to 019, as above), the tilt angle will
change every 20 frames, so sequential tilt values will be at frames 000,
020, 040, 060, etc. This means that your entire animation must be (tilt
frames)*(pan frames) long.
HINT
The default Columns and Rows settings (20 x 20 = 400 frames) are
more than enough for most uses and you may be able to use lower
values to reduce the size of the file.
The Start Tilt and End Tilt values set the angle range of the vertical
views.
NOTE
The Start and End settings may not seem to change simple viewing of
the objects, but may be critical if the object is embedded in a larger
QTVR world.
Frames Per View sets the animation loop size that will run from each
view. If this value is greater than one, then your animation should hold
16.14 CHAPTER SIXTEEN: RENDERING OPTIONS
each pan view for this many frames, as the loop happens. This also
means that your animation length must be multiplied by this number.
You should not alter the pan or tilt frame counts; QTVR will handle that.
The QTVR object format features an alternate state that can be
displayed based on some user input, for example, when the user clicks
the mouse. The View States value supports this alternate state, but will
also multiply your animation frame count. These extra frames take the
form of an entire identical animation of the object in an alternate state,
appended onto the first. Currently, the QuickTime player appears to
support only two usable states, not clicked and clicked. In theory, higher
values could be used.
The Compression Options button will invoke the standard QuickTime
Compressor selection dialog. The choices are many and the differences
subtle. The only relevant warning for QTVR is that you should set the
compression to use keyframes at every frame, since these movies are
not played in a linear fashion.
To set up a basic QTVR scene:
1 Add three null objects to an empty scene, named PAN, TILT, and
TARGET.
2 Parent Tilt to Pan and parent the camera and light to Tilt.
3 Set the camera's position to 0m, 0m, -2m.
4 Unselect the X and Y motion channels, as well as all the rotation
channels. Moving the camera on Z will determine its distance from
the actual object—necessary for proper framing. All other camera
motion is done with the Pan and Tilt nulls.
5 Parent Pan to Target, for future convenience.
At this point, you should decide how many rows, columns, view
states, and animation loop frames you want. Here, we will use the
defaults.
It is best to start on the innermost loop first. Since we're using
defaults, with no extra animation loop frames (Frames Per View is 1),
the inner loop is the pan motion.
6 Create a keyframe for the Pan object at frame 20, with the Heading
at -360 degrees.
L I G H T WAV E 3 D 7 16.15
7 In the Graph Editor, select both keys and set their Incoming Curve,
Pre Behavior and Post Behavior to Linear. This should give a
constant heading rotation of one cycle every twenty frames.
If we had chosen to use only one Tilt Frame, our work would be done.
We chose, however, to create twenty Tilt Frames, ranging over 180
degrees. This means that each tilt frame should increase enough that
the last row is at -90 degrees.
If we simply used, 180 degrees/20 or 9 degrees, the Tilt's pitch would
reach -90 degrees at precisely 400, the first frame after our render!
Using 180 degrees/19 = 9.47 degrees will get the tilt to -90 degrees at
the end of the 19th row, so our animation will include a pan from
directly below as well as directly above. Since there are 20 Pan
frames, we must hold each tilt angle for that many frames.
In short, our motion curve should look more like stairsteps than the
perfect line of the Pan Heading curve. To be more specific, Tilt's Pitch
Angle curve should be stairs of a height of 9.47 degrees, and a width
of 20 frames, going from 90 to -90 degrees. Fortunately for us, this is
easily achieved.
8 In the Graph Editor, set the key at frame 0 in Tilt's Pitch channel to a
value of 90 degrees and create a key at frame 20, with a value of 80.53
degrees (90-9.47). Set the Incoming Curve to Stepped, and the Post
Behavior to Offset Repeat. The camera motion should now be
complete.
NOTE
There are many ways to set up a LightWave scene to render a QTVR
Object Movie.The above procedure is only one method of many.
NOTE
See the Appendix for information on image types.
name. The number one with the leading zeros (e.g., 0001) indicates the
number of digits used for the numerical sequence. The standard PC file
extension will replace “.xxx”.
For example, with Name001, frame 34 of an animation using the base
name EXPLODE would save out as EXPLODE034. Using Name001.xxx,
EXPLODE as the base name, and a Targa file format, the 56th frame would
save an image named EXPLODE056.TGA.
NOTE
The .xxx formats are recommended for general use, since most
applications require that you use the proper filename extension.
A filename example appears to the right of the save buttons. The last
used Output Filename Format is saved as the default for the next time
you start LightWave.
WARNING
If the images may be used on a platform that supports only “8+3”
filenames, make sure to keep your base names to a maximum of four
or five characters (depending on whether you select a Name001 or
Name0001 Output Filename Format).
Fader Alpha
If you plan to use an alpha channel generated by LightWave along
with an external video fader or linear keyer, or a different compositing
program, you may need to activate Fader Alpha Mode. Certain switchers
can use an alpha image as a fade control. When you select this mode,
LightWave computes the saved RGB images and alpha images a bit
differently. Transparent items in an RGB image render in a more
intensified manner, with rough, aliased edges. Lens flares appear
overblown. In alpha images, however, the transparency levels render
properly so that the appropriate transparency levels are used when you
combine the RGB images with the alpha channel.
WARNING
Do not use this mode if you plan to digitally composite images in
LightWave or another digital compositing package that allows for
additive compositing.
The name of your serial port needs to be entered into the Serial Port
Name field. On a PC, for example, you may use COM1: or COM2:. The
name of your serial port is saved as a default when you quit LightWave.
Enter the appropriate commands into the Setup Command 1, Setup
Command 2, and Frame Record Command fields. (These vary
depending on the recording equipment’s manufacturer: see its
documentation for instructions and proper commands to use.) There are
buttons to send the setup commands manually.
The Frame Record Command delays the playback of frames enough
to give the VTR time to rewind and cue up for a single frame edit. Frame
Record Delay, if needed, gives a deck enough time to pre-roll to the
selected edit point before a frame is laid down. You can also add some
additional time for the first frame.
Many single frame control devices need to know a starting position
value (this is usually a time code number). To give a starting value, press
the S key. The Starting Position requester will appear where you can
input a value for the starting position. (Note: a Starting Position applies
only when your Frame Record Command uses the # control code.)
To save wear and tear on your VTR, first render all of the frames to
your hard drive. Then set up a new scene using the resulting image
sequence as a Background Image (Effects panel, Compositing tab).
Render the new scene and record the images.
chapter17
Particle FX
L I G H T WAV E 3 D 7 17.1
C hapter 17:
Particle FX
With LightWave’s integrated particle system, Particle FX, you can
create scintillating effects like sparks, explosions, liquids, smoke, and
much more. Because the system is integrated, there is no need for a
secondary viewing interface or duplication of existing items like
cameras. Everything is handled within the normal Layout interface,
reducing the learning curve tremendously.
Particle FX features several basic controllers: Emitters, Wind,
Collision, and Gravity. You can add one or more of these controllers to
your scene. Then, each can be set with its own parameter settings to
create just the effect you are looking for.
PARTIGONS
“Partigons” are a special object type for particles. Partigons provide a
means for particle systems (like Particle FX) to automatically generate
single-point polygons as needed. You can apply surface attributes to
single-point polygons and, thus, make them visible when they render.
PARTICLE FX PANELS
The Particle FX Browser panel is where you add the various
controllers. From here, you can also open the property panels for the
controllers that you add. To open this panel, choose Scene >
FX_Browser.
.
ParticleFX Browser panel
17.2 C H A P T E R S E V E N T E E N : PA R T I C L E F X
HINT
Keep this non-modal panel out while you use particles; it will save you
a lot of time adding controllers and changing properties.
Adding a controller
NOTE
When you add a controller from the Particle FX Browser, what really
happens is an object, usually a null object, is added to the scene.Then, a
Particle FX custom object plug-in is added (e.g., FX_Emitter, FX_Wind,
etc.). Just check out the Geometry tab of the Object Properties panel.
NOTE
You can also display the property panel for the currently selected
controller by choosing Scene > FX_Property.
NOTE
Many scenes don’t need this step, but clicking Start won’t do any
harm if you are unsure.
Options Dialog
The Options dialog has some options that affect the manner in which
LightWave computes particles.
Options button
Options panel
NOTE
Scenes with particles interacting or with post-deformed geometry
require you to click the Start button first to pre-compute some
motions. Clicking Start won’t do any harm if you are unsure.
You can control how emitters are updated using the UpdateMode
pop-up menu.
Auto updates all emitters as parameters are modified. Use this for
fast systems or in low-particle count simulations.
If you have multiple emitters and are using the Select update, then
only the emitter showing in the Select pop-up menu, if any, will be
updated.
Adaptive dynamically scales the number of visible particles based on
your CPU performance. This setting attempts to keep interactive
performance at a useful level.
User turns off particle updating completely. You may force an update
by either clicking the Start button on the Particle FX Browser, or the
update button on the File tab of the Emitter controller panel. This setting
is useful in situations with heavy particle counts.
L I G H T WAV E 3 D 7 17.5
LOADING/SAVING CONTROLLERS
All of the individual controller panels sport save buttons that let you
save the controller’s settings to a file. If you wish to add a new controller
using the same settings, choose Add > Load Item on the Particle FX
Browser panel. If you wish to use those settings on an existing controller,
use the load button on that controller’s panel.
Controllers also have copy and paste buttons, which let you copy
settings between like-kind controllers.
CONTROLLER GROUPS
When you work with multiple controllers, you may want to isolate
specific groups. That is, perhaps you want Emitter (1) affected by Wind
(1), but you want Emitter (2) to be affected only by Wind (2). This is
easily accomplished by using groups.
The <default> group is a special global group that disregards
independent groupings. Thus, if an emitter is set to a defined group (e.g.,
new_group), a wind controller set to <default> will still affect it.
To create a group:
Choose <new_group> from the Group pop-up menu on the Browser
panel or the individual controller panels. A dialog will appear that asks
you to input a group name.
When you add a new controller, it uses the group selected on the
Browser panel Group pop-up menu.
Once you add a new group, it appears in the Group pop-up menu,
where you can select it, as desired, to associate groups of controllers.
NOTE
The Group feature works in conjunction with Motion Designer! Thus,
if you add an emitter, a wind controller, and a soft body (Motion
Designer) element to the same group, they are all affected by the wind!
NOTE
You can use the Group feature to disable a controller by simply setting
it to a group not associated with an emitter.
EMITTER CONTROLLER
The Emitter controller is the main controller and the source for
particles. The settings for this controller determine the make up of the
particles, factors like how many particles are created, how they move
initially, how long they last, and so on.
If you have multiple emitters, you can select a specific emitter from
the Current Item pop-up menu at the top of the panel.
Emitter Types
On the Add menu for the Particle FX Browser panel, there are two
emitter selections: HVEmitter and PolygonEmitter. Either type
automatically uses the FX_Emitter custom object plug-in to create the
particles. The difference between the two selections is the type of object
that each uses in Layout, which affects how they render.
HVEmitters use null objects that are invisible by themselves. To
render particles from HVEmitters, you must add the HyperVoxels
volumetric plug-in on the Volumetrics tab of the Effects panel. Then, on
the HyperVoxels panel, activate the HVEmitter object. If you use
gradients with HyperVoxels parameters, special particle-related Input
Parameters will be available.
PolygonEmitters, on the other hand, use partigon objects—special
objects designed specifically for use by particle systems. Essentially,
they generate single-point polygons on the fly. Single-point polygons
have a surface and you can use normal surfacing techniques. The
surface will even be visible in shaded OpenGL viewports.
You can achieve many effects, like fireworks and sparks, by using
PolygonEmitters alone (i.e., without HyperVoxels). You can save
significant rendering time compared to HVEmitters, which require
HyperVoxels for rendering.
L I G H T WAV E 3 D 7 17.7
NOTE
PolygonEmitters can use HyperVoxels just like an HVEmitter can. As
such, you may want to use PolygonEmitters exclusively to avoid
confusion. If you do not wish to see the particles (e.g., when
HyperVoxels are transparent), just deactivate the object on the Scene
Editor.This will not affect the rendering of the hypervoxels.
Generator Tab
On the Generator tab, you set parameters relating to the creation of
the particles.
Generate by has several possible settings. With the frame and sec
options, every new frame or second, the number of particles set as the
Birth rate are created.
When Generate by is set to speed, it creates the particles based on
the speed of the emitter, caused by moving it. You need to keyframe
some movement for the emitter to use this setting. The faster the
movement, the faster the particles are created. The effect is sort of like
salt coming out of a salt shaker—the harder you shake it, the more salt
comes out.
When Generate by is set to collision event, the particles are created
when a collision event occurs. You need to use a collision controller
whose Mode is set to event.
When Generate by is set to wind, particles are created if the wind
speed exceeds the threshold1 setting (Motion tab). (Threshold2 has no
impact here.) The force of the wind has no effect on the birth rate. The
windspeed setting is similar, but the birth rate is affected by the wind
force. The greater the wind force, the greater the number of particles
born.
The Nozzle setting determines the shape of the emitting source. With
box, particles are emitted from inside a box. With sphere, particles are
emitted from inside a sphere. With cone, particles are emitted from
inside a cone.
You can use geometry as an emitter, by adding the FX_Emitter
custom object to any loaded object. This will allow you to use the
Object-vertices, Object-normal, Object-surface, and Object-line nozzle
types. When you use these nozzles, you can offset the center position by
changing the Center Position values on the Misc tab.
Child-pivots aligns the emitter’s particles with the pivot point of child
objects (i.e., objects parented to the emitter). The child objects must
have the FX_Link motion modifier added. This allows you to use particle
collision detection to move (e.g., break up) a group of objects.
HINT
Usually, you use the object modes in conjunction with an Explosion
value (Motion tab).
The Size effect setting determines how keyframing a Size change for
the emitter affects the particles.
The Key effect option causes particles to be created when a keyframe
is encountered. The key setting differs from key-env, in that key-env
creates them in a smoothed non-linear fashion. Set to none to turn this
option off.
The XYZ Generator size fields set the default size of the emitter.
Particle limit sets an overall limit for the number of particles that are
emitted.
The Start frame field is normally an informational field that indicates
the frame the particles will start being born. By default, this is the first
frame setting in Layout. You can manually change this starting frame by
checking the Fixed option and entering the desired frame in the Start
frame field.
17.10 C H A P T E R S E V E N T E E N : PA R T I C L E F X
Particle Tab
On the Particle tab, you set parameters that describe the created
particles.
Motion Tab
On the Motion tab, you set how the particles are placed into motion.
Use the Velocity setting to scale the overall speed of the particles. A
setting of 100% is normal. Lower values will slow down your particles
and higher values will speed them up.
The XYZ Vector settings determine the initial direction and speed of
the particle motion. Other factors, like gravity, wind, and so on, will
impact the actual result, however. You may override the Vector settings
and point the particles to an object in the scene by selecting it in the
Target pop-up menu.
If you want the Vector settings to relate to World coordinates instead
of the emitter’s local coordinates, activate the World coordinates option.
The Explosion setting makes the particles move out from the center
of the nozzle with an initial velocity equal to the value that you set.
17.12 C H A P T E R S E V E N T E E N : PA R T I C L E F X
A fountain of particles
Etc Tab
On the Etc tab, you set miscellaneous parameters for the emitter.
In most cases, if you want gravity, you set the Gravity Y value to
something like -1. However, you can set up inverse gravity by using
positive values, and you can apply gravity on other axes.
The Center Position XYZ values set the center for particle effects like
Explosion (Motion tab). Sometimes you may not want the particles
exploding from the center of the emitter.
The Position blur value randomizes the initial particle position by
using velocity. If you set this option to 0%, the particles are created side
by side.
Use the Parent motion setting to control how much of the emitter’s
motion is applied to the particles. If it is set to 0, the particles are
emitted the same no matter how the emitter may be moving.
The three emitters are moving up in unison. Note how the 100% Parent motion particles also move up.
Setting the Max Speed (m/s) field regulates the top speed of the a
particle.
The Loop Frame setting is used to repeat the particle generation and
motion in the set number of frames. For example, if you enter a Loop
Frame value of 30 frames, in a two second animation 2 particles will be
generated with the same birth location and motion.
Interaction Tab
The settings on this tab affect the way particles interact with other
particles from both the same and other emitters of the group.
File Tab
The File Tab contains options for handling the clipboard and file
commands.
You can save the particle motion of an emitter using the save motion
button. The motion will take into account wind, gravity, and other
options. It effectively freezes the particle motion; the particles will move
just as they did when the motion was saved. Changing the emitter
settings, clearing/adding wind and gravity controllers, and so on, all will
have no impact.
Save motion is a great time-saver for scenes that will be network-
rendered or scenes that require heavy calculations for collisions. Once
you’ve saved the motion, it doesn't need to be calculated again.
To use this feature, first, get your particles moving the way you want.
Then, make sure your scene plays back without any pauses—this means
that Particle FX has finished its calculations. Now, you can click the save
motion button to save out the .PFX file. (If you look at the emitter’s
Object Properties panel, you’ll see the .PFX file referenced in the FX
emitter custom object entry.) Now save the scene and you're done.
Remember, you can even clear wind, collision, and gravity controllers
without affecting particle motion.
L I G H T WAV E 3 D 7 17.15
When this feature is active, the save motion button will be ghosted.
To clear a loaded motion, click clear motion. You can also load the
motion file into another emitter using load motion.
The playback mode works with the motion and determines how it
will playback. The Normal mode indicates that it will playback normally,
starting at frame zero. With Key the motion will be started every time a
keyframe is encountered for the emitter. Parent-Key is similar, but uses
the parent item’s keyframes.
Parent Particles and Parent Particles (end) work like the identically
named Nozzle options. Of course, the particles come from the motion
file instead of emitter settings. Make sure that the parent’s Particle size
is set greater than 0.
Parent Recoded CP uses the Recode CP option on the Collision
controller, which must be the parent of the emitter. Playback will occur
when collisions are detected. Use this for effects like splashes in water
from rain drops, where one emitter provides the rain and another
emitter (with this option set) creates the splashes from the detected
collisions with a ground plane.
The copy and paste clipboard buttons allow you to copy the settings
of a controller and apply them to another. Use the save and load buttons
to add custom saved Particle FX controllers to your scene.
NOTE
The custom object bounding box will continue to appear.
WIND CONTROLLER
The Wind controller lets you add wind to blow your particles around.
The Wind controller appears in a Layout viewport as a cloud of wind
indicators—a bunch of short lines with pivot point dots at one end. The
the length of the lines indicates the force of the wind: the longer the line,
the more powerful the wind. The angle of the line indicates the direction
of the wind at the line’s location.
17.16 C H A P T E R S E V E N T E E N : PA R T I C L E F X
Wind object
Mode Tab
On the Mode tab, you set the basic characteristics of the Wind
controller.
The Wind mode setting determines the type of wind and how it
changes over time. You can get a feel for what the setting does by
looking at the wind indicators. There are a few special indicators,
however. If you select Turbulence, you can set the size of the effect and
direction using the turbulence settings on the Vector tab. If you select
Direction as the Wind mode, you can use a texture map (Texture button
on Vector tab) to control the wind power and turbulence. Animate the
texture to animate the wind. If you select rotation(y) or doughnut, use
the Spiral setting at the bottom of the panel to adjust the intensity of the
rotation.
L I G H T WAV E 3 D 7 17.17
The Blend mode sets how the wind blends with other overlapping
winds. Add is additive. Max means the highest wind controls. With
overwrite, the wind is replaced with itself. Heavy-wind disregards
particle weight.
If winds have different Blend mode settings, obviously only one can
control the blend. The priority order from highest to lowest is:
overwrite, max, add, and heavy-wind. So, if Wind1 is set to add and
Wind2 is set to max, the overlapping area will use max blend because it
has the highest priority.
The Size effect setting determines how scaling the Wind controller in
Layout affects the wind. Setting it to Wind scales the wind power. Setting
it to Region scales the overall size of the effect area.
The Falloff mode setting determines how the wind’s effect tapers off
at its region borders, if at all. Linear means the wind is the same
throughout its borders. The Inverse Distance setting tapers off the
wind’s power from its center. The Distance setting makes the wind falloff
towards its center. OFF means no falloff. With this setting, the particles
do not need to be within a controller region to be affected.
The Radius setting sets the radius of the controller region.
Use the Power setting to scale the overall force of the wind.
The Spiral Amount setting is used for the rotation(y) or doughnut
Wind modes.
17.18 C H A P T E R S E V E N T E E N : PA R T I C L E F X
Vector Tab
On the Vector tab, you set the direction and force characteristics of
the wind controller.
The Wind XYZ settings determine the basic direction and force of
your wind.
L I G H T WAV E 3 D 7 17.19
NOTE
Textures are three-dimensional.Thus, adding a texture adds it to all
channels. Also, for envelopes, make sure you have the correct channel
in the channel bin.
If you are using the Turbulence Wind mode, the Turbulence Vector
sets the direction and power of wind turbulence. Turbulence size sets
the wavelength of the turbulence.
GRAVITY CONTROLLER
Add a Gravity controller to add gravity-like effects to your particle
motions.
Gravity Controller
Point mode with Power = -100. Note how particles continue past center
The 2Pole Gravity mode creates two attraction points, one meter on
either side of the center. It can create magnetic or electric field effects.
The Falloff mode setting determines how the gravity’s effect tapers
off at its region borders. Linear means the effect is linear throughout the
controller’s region. The Inverse distance setting uses a one divided by
the radius of the controller region to taper off the gravity’s power from
the center of the region. Off means no falloff. With this setting, the
particles do not need to be within a controller region to be affected.
The Radius setting sets the radius of the controller region.
The Power setting scales the overall force of the gravity.
The Gravity XYZ settings determine the direction and force of your
gravity when Gravity mode is set to Direction. Normally, you’ll want to
set Y to something like -1.
COLLISION CONTROLLER
The Collision controller lets you add an element for the particles to
bump into.
Collision Controller
L I G H T WAV E 3 D 7 17.21
The Type setting controls the shape of the collision object. The
Sphere, Box, and Plane options can be used for basic primitive collision
shapes. The object, object-subdiv, and object-advanced settings are
used when you use a LightWave object for collisions, which is discussed
later. Use the Infinite setting for an infinite-sized collision area. This is
particularly useful with the Scatter and Attract modes. (Note that the
Bound and Stick modes will continue to respect the Radius/Level
setting.)
Use the Recode CP option to set up an event-like trigger to be read by
a child emitter’s Playback Mode, discussed earlier. As particles cross the
collision plane created by the collision item, this event triggers the
playback of a saved motion.
The InSide option causes the collision to occur inside the collision
object.
Using InSide
The Noshift option disables any offset the particles may generate in
the collision process. This ensures that the particles will collide directly
on the collision surface.
By activating the Change option, particles passing through the
collision item can switch to a different group, to be affected by a
different controller. The New Group defines which group the particles
will switch to.
The Mode setting determines what happens when a collision occurs.
The Bound option causes the collision to change the direction and
velocity of the particles. With Stick, the particles simply adhere to the
surface. Erase kills the particle upon contact. The event mode is used
when the emitter has its Generate by option set to collision event: it
creates particles at the time of collision. In Scatter mode, the collisions
occur within the interior of the collision object and not at its surface.
This causes the particles to scatter. The Attract mode causes the
particles to be attracted to the center of the collision object.
17.22 C H A P T E R S E V E N T E E N : PA R T I C L E F X
The Radius/Level setting sets the size of the collision object based on
this radius. If Type is set to Plane, this setting controls the level of the
plane. If you are using a LightWave object, this setting controls the
distance from the surface where the collision occurs.
Friction power adds friction to the collision surface when you use the
Stick mode, which slows the momentum of particles sliding over the
surface.
Fix power causes the particles to stick to the surface and not slide
around.
If you reduce the Probability setting below 100%, you reduce the
chance of a particle being treated as having collided with the collision
object.
NOTE
Generally, these modifiers are applied to objects, but they will also
work on cameras, lights, bones, and so on.
FX_Link
The FX_Link motion modifier links the motion of the particles with an
object. To use FX_Link, just add the modifier on the item’s Motion
Options panel (IK and Modifiers tab)
.
FX_Link panel
Select the emitter on the Particles pop-up menu. The Node setting is
the specific particle, and 0 is the first emitted. By activating the Show Id
option in the emitter’s particle tab, you can determine exactly which
particle you want to use.
The Rotation drop-list determines which rotation method the particle
will have when emitted. The default value, Non, has no rotation added.
The Random option gives the item a random starting rotation. Align to
Path(h) and Align to Path(hp) will rotate the item according to the
particle’s path.
Time shift moves the start of the item’s sizing/rotation motion
according to the settings in the drop-list. The Non value doesn’t alter the
timing of the item’s motion, it plays as it was originally keyframed. The
Start Shift and End Shift options move the item’s motion to the
beginning or end of the particle’s life. The Start Adjust (distance) and
End Adjust (distance) settings will alter the frame rate of the motion
according to the value in the Distance/Sec field. As the particle travels a
certain distance, a percentage of the motion is animated.
The Pre and Post Behavior settings indicate what the item’s
rotation/scaling state will be when the motion isn’t being animated. This
represents the time before the particle is born and after it dies.
The Stay behavior will hold the first frame of the motion for the Pre
Behavior and the last frame with the Post Behavior. The Original setting
returns the object to its original state in either the beginning or ending of
the animation. The Size Dissolve setting will dissolve the item in either
17.26 C H A P T E R S E V E N T E E N : PA R T I C L E F X
NOTE
Make sure your particles have some Particle Size on the Particle tab of
the Emitter property panel. By default, Particle Size is 0.
FX_Linker panel
To use FX_Linker:
1 Save your scene!
2 Load the target object.
3 If you plan to use the Size effect option, keyframe the size on this
object. Also, make sure your particles have some amount of size
(Emitter properties).
4 Choose Scene > FX_Linker and set the copy field to the number of
instances you want to create.
5 The Random, Time Shift, Pre/Post Behavior, Distance/Sec, Size
effect, and Make key options correspond to the same options on
FX_Link, see above. Check them if you want those options set.
6 If you are using Random or Size effect, you may set maximum and
minimum values in the provided fields.
7 Click OK. Depending on how many copies you make, it may take a
while before FX_Linker finishes.
WARNING
Using FX_Linker is a one-way shot.You can’t undo what it does after
you click OK.Therefore, you should definitely save your scene before
running this modifier.
FX_Motion
When you add the FX_Motion motion modifier to an item, you can
control it in a manner similar to particles.
17.28 C H A P T E R S E V E N T E E N : PA R T I C L E F X
FX_Motion
The initial Rotation(deg/s) HPB settings set the initial rotation. If you
want the rotation to begin at a random point, activate the Random
rotation start option.
NOTE
The Mode setting on the Mode tab determines whether or not these
initial settings have any effect. In other words, if you aren’t using a
rotation mode, the initial rotation settings don’t matter.
4 Set the mode to Particles dissolve and select the emitter from the
Particles pop-up menu. Enter the particle number in the
Node/numbers field; 0 is the first emitted.
5 Click OK. When that particle dies, the object will be dissolved to
100%.
FX_Link can also be used to vary a channel based on the number of
particles at the emitter.
To control a channel based on the number of particles:
1 Open the Graph Editor and select the desired channel in the Curve
bin.
2 On the Modifiers tab of the Graph Editor, add the FX_Link modifier.
Open its options panel by double-clicking its name in the list after it
has been added.
3 Set the mode to Particles numbers and select the emitter from the
Particles pop-up menu.
4 Click OK to close the panel and play your scene. The channel you
selected will be changed based on the number of particles in that
particular frame.You can scale the value by entering a number in the
Node/numbers field. The number of particles will be divided by this
value.
GETTING STARTED
Here are some very basic tutorials to get you started with particles.
2 Let’s use the new partigon object type. From the Add pop-up menu,
choose PolygonEmitter. This will add a PolygonEmitter controller to
your scene. It will also list this emitter in the Item pop-up menu on
the Particle FX Browser panel.
3 Click the Property button. This brings up the property panel for the
controller shown on the Item pop-up menu, in this case, the emitter’s.
4 Click the play button on the main Layout interface. This is the right-
facing triangle in the lower-right corner—changes you make to
controllers are updated in real-time. Right now, all you will see are the
particles being created inside the emitter; there is no movement.
5 Open the Surface Editor. The PolygonEmitter object will have a
default surface called Partigons. Just change the Color to a deep red.
You should see the particles change color.
17.32 C H A P T E R S E V E N T E E N : PA R T I C L E F X
6 Click the Motion tab on the emitter’s property panel. Set the Vector Y
value to 2 to give the particles some vertical movement.
7 On the Generator tab, decrease the Generator size values to .1, .1 , .1.
Notice the effect of changing the size of the emitter.
L I G H T WAV E 3 D 7 17.33
8 On the Motion tab, try different values for the Explosion and
Vibration settings and note the results. When you are done fooling
around, leave Vibration(m/s) at 1, Vibration(min) at 100%, and
Explosion at 0.
9 Go back to the FX Browser panel and from the Add pop-up menu,
choose Wind. This adds a wind controller to your scene. The
controller name, Wind, should appear on the Item pop-up menu, so
click the Property button to bring up its property panel.
17.34 C H A P T E R S E V E N T E E N : PA R T I C L E F X
11 Play the scene again and see the particles change direction due to the
wind.
Go ahead and play with the wind and emitter settings. It’s very easy.
Try adding HyperVoxels to the emitter object. Remember, if you don’t
want to see the (partigon) particles when using HyperVoxels, use Object
Dissolve on the emitter’s Object Properties panel.
Collision Detection
1 Start with the emitter from the preceding tutorial, but clear the wind
controller. (The wind controller can be cleared from the scene just
like any object using Items > Clear > Clear Selected Items.)
2 On the FX Browser panel, choose Collision from the Add pop-up
menu. This adds a collision controller to your scene. The controller
name, Collision, should appear on the Item pop-up menu, so click the
Property button to bring up its property panel.
L I G H T WAV E 3 D 7 17.35
4 Play around with the Collision properties and note the effects. Also,
adjust the emitter properties, like Vibration(m/s).
More Tutorials
Obviously, these tutorials barely get your feet wet. However, because
of the real-time feedback, you can mess around with the settings and get
a good feel for how everything works. There are several example Particle
FX scenes included on the CD. They will give you great insight as to how
you can use ParticleFX. Also, please visit LightWave3D.com for additional
tutorials.
17.36 C H A P T E R S E V E N T E E N : PA R T I C L E F X
chapter18
Motion Designer
L I G H T WAV E 3 D 7 18.1
C hapter 18:
Motion Designer
Motion Designer is a soft body dynamics engine that reshapes
objects according to wind, gravity, and object motions, by using elastic
body models to create animation data. You can easily achieve realistic
effects like draping cloth over objects, material flapping in the wind, or
jiggling jello, with Motion Designer. Because it is integrated into
LightWave, Motion Designer can automatically take into account motions
caused by displacement, bones, IK, and so on.
WARNING
Your Bounding Box Threshold (Display Options tab of the Preferences
panel) must be set high enough to display your Motion Designer
targets. If not, you may encounter a can’t scan objects... message dialog.
SETTING PARAMETERS
To change a parameter, select it in the list. The selected parameter’s
name will appear in the field beneath the list window. You change the
related value by entering a number in the input field to the right.
You can click some parameters in the list to toggle their state on or
off. For filename parameters, you can double-click or press ENTER to
bring up a file dialog.
NOTE
For On/Off parameters, a value of 1 means On and 0 means off.
L I G H T WAV E 3 D 7 18.3
NOTE
Activate and Deactivate essentially add and remove the MD_Plug
displacement map plug-in automatically for you.
Initially you’ll want the ALL option active so that all objects are listed
in the pop-up menu. Once you have defined the MD objects, you can
uncheck ALL to list only defined objects. This may be useful if you have
a lot of objects loaded into Layout.
Group
You can group MD objects with a user-defined name to prevent
unwanted interaction. This also works with Particle FX controllers.
Target
Target On means the object is an elastic body model and can be
influenced by other Target or Collision objects.
Collision Select
Normally, MD executes the collision calculation among all target and
collision objects. The Collision Select function lets you specify which
18.4 CHAPTER EIGHTEEN: MOTION DESIGNER
Collision-Detection
Use the Collision-Detection function to specify collision detection on
an object-by-object basis instead of surface-by-surface. If this parameter
is OFF, all of the object’s surfaces are treated as if the (Surface tab)
Collision-detection setting was OFF.
Pressure Effect
Pressure effect causes the object to maintain its volume during a
motion, as if it is filled with a stiffer gel, instead of, say, water. This works
best when the object is a closed volume and spherical in shape.
Fiber Structure
When Fiber structure is set to a value other than zero, the object
seems to be made of a fiber material. This function essentially weakens
the force when the motion direction is different from that of the virtual
fiber. When the value is 100%, the force is zero, except along the fiber.
This setting also weakens the force from the sub-structure.
DumpFileName
DumpFileName is a special file that sets up an initial pose for the
target object. This file is discussed below.
Collision
Collision On means the object is a collision object that will influence
target objects, if it collides with one.
NOTE
You cannot have Target and Collision both set to ON for the same
object.
L I G H T WAV E 3 D 7 18.5
MddFileName
Generally, this setting is for backwards compatibility with prior
versions of MD, which required you to manually specify motion data
files.
Motion Files
For Target objects, click SAVE MDD to save the generated motion to a
file, which will be used subsequently to deform the object.
Click DUMP to save the final pose (position, speed) of a Target object
to a file, based on the last frame calculated. In a subsequent session, you
can specify this file as the DumpFileName parameter for a Target object
and set a starting pose for the target. This is useful to have a realistic
beginning state for the target.
To use a dump file:
1 Set your Last Frame in Layout to the pose you want to start with.
2 Start the calculation.
3 After the calculation, click DUMP and save the Dump file.
4 Specify the saved Dump file for the DumpFileName parameter of the
Target object. The Target object will not begin in this state.
NOTE
If you do not want to use the Dump file, make sure you clear it from
DumpFileName.
Basic Settings
Weight
Weight defines the weight of the material. The flags below are the
same except for the Weight parameter. The flag on the right hangs down
more due to its weight and also will not flap as much.
Left:Weight = 1. Right:Weight = 2
18.6 CHAPTER EIGHTEEN: MOTION DESIGNER
Weight +-
Use the Weight +- parameter to add randomness to the Weight
parameter.
Left:Weight+- = 0. Right:Weight+- = 1
Spring
The Spring coefficient controls the springiness or stiffness of the
material. The flags below are the same except for the Spring parameter.
An extremely large Spring value on the right flag makes its cloth stiffer.
Viscosity
Viscosity controls the impact of a collision. The pieces of cloth below
are the same except for the Viscosity parameter. Here, a ball is moving
up, pushing the piece of a cloth. The cloth with the higher Viscosity
value tends to keep its shape more.
Left:Viscosity = 1. Right:Viscosity = 10
.
Left: Resistance = 1. Right: Resistance = 2
L I G H T WAV E 3 D 7 18.7
Parallel Resistance
Parallel Resistance controls the amount of air resistance parallel to
the surface. An object, such as a floor tile, will fall quicker if turned on
its edge. The default value of 100% for parallel resistance yields normal
results and should be used for items like falling leaves and flags. If for
some reason you do not desire this effect, reduce the setting.
Back-resistance
Back-resistance specifies the air resistance for the back of a surface
(i.e., opposite the surface normal’s direction). At 100%, the back side is
affected by wind the same as the front. At a value lower than 100%, the
back side is affected more by wind. This function can be effective when
your wind becomes weak due to overlapped objects.
The back side for these objects is the side closest to the center of this image.
Structure Settings
Fixed
The shape of polygons with Fixed On remains intact. The flag pole
below, for example, has Fixed On and the flag has it off.
Sub-Structure
The surface of a pure, elastic body model has a high degree of
freedom, which causes the object to easily distort. To prevent distortion,
you can apply an auxiliary MD form, called a Sub-structure, to restrict
the instability of the surface. This can improve your results with a two-
dimensional object (i.e., one with no thickness) making it act as if it has
some thickness. However, this reinforcement can require a high Sub-
structure setting that can take longer to calculate.
18.8 CHAPTER EIGHTEEN: MOTION DESIGNER
NOTE
Although you could also increase the Spring value to reduce
stretching, increasing that value can make the surface too complex and
cause other problems, like weird folds.
18.10 CHAPTER EIGHTEEN: MOTION DESIGNER
Compress Stress
Compress Stress controls the amount of compression a surface
exhibits as a result of stress. A soft fabric like cotton can be made using
a large Spring value and a low Compress stress setting. A stiffer fabric
would use a higher Compress stress setting.
Left: Compress Stress = 100%. Middle: Compress Stress = 10%. Right: Compress Stress = 1%.
Shrink
Shrink reduces the surface to a specified size. For example, a value of
90% reduces the size of the surface to 90%. Use Shrink to reduce the
looseness of a dress or to create frills.
Collision Settings
HINT
Try to use Self Collision and Collision Detection only on
necessary surfaces to minimize calculation time.
Self Collision
The Self Collision setting can prevent an object from crossing itself
when the object is transformed. Self Collision is calculated based on a
point on the target object and a polygon on the collision object. If a
surface has Self Collision and Collision Detection active, Self Collision
is computed on the same surface.
Self Collision works in much the same way Collision Detection does,
and there is no collision detection for polygon edges. As such, you may
also want to adjust Skin Thickness to avoid errant point penetrations.
Note that unlike Collision Detection, Self Collision is detected even if
the motion is from behind the polygon.
L I G H T WAV E 3 D 7 18.11
Collision Detection
Collision Detection reflects the influence of other objects upon the
motion of an object. This lets you create complex motions caused by
obstacles. The simulation is performed by taking an object that collides
(the collision object) with the elastic body model (the target object) into
the calculation.
Left: Surface normals with the same direction. Middle: Single-sided = ON. Right: Single-sided = OFF
Skin Thickness
You should understand that the collision is detected using a point on
the target object (elastic body model) and a polygon of the collision
object. As a result, a polygon of the target object can possibly penetrate
the collision object—usually an undesirable result.
18.12 CHAPTER EIGHTEEN: MOTION DESIGNER
NOTE
In the picture below, you can see the points on the cloth do not
penetrate the ball, but the surface between the points does.
Friction
Like real world friction, the Friction parameter makes the surface less
slippery. So if you want the target object to tend to slip off the collision
object, set Friction to 0. If you want it to stick more, increase the value.
Bound Force
Bound force adds a rebounding speed change at collision, if set
greater than 0. At 1, the speed is the same as the collision object. At 2, it
rebounds at the collision speed.
Action Force
Action force decides whether the colliding object receives the
reaction force at the time of the collision, or not. This function does not
affect the reaction force that the collision object receives.
Bind Force
Bind force causes the target to adhere to the collision surface.
If you have some level of Bind force, Fix Force will also be available.
Fix Force causes the target object to stick to the surface and not slide
around.
COPY/PASTE
Use the COPY and PASTE buttons to copy and paste the current
settings between surfaces.
SAVE/LOAD
Use the SAVE button to save the current surface settings to a file on
your hard drive. Use the LOAD button to load the settings from a
previously saved file.
If you save the files to the SURFACES subdirectory in your Content
directory, they will appear in the Material Library pop-up menu,
discussed below.
Material Library
This pop-up menu (located near the Hide button) contains pre-
defined sets of surface parameters.
Wind1/Wind2
Specify the direction and intensity of two winds along the world axes.
Turbulence
Specify the direction and intensity of turbulence along the world axes.
Wavelength
Specify the wavelength of the turbulence.
Wind Mode
The Wind Mode controls the repeating pattern for Wind1 and Wind2.
Random randomizes the pattern according to the specified Random-
ratio. The Cycle setting swaps Wind1 and Wind2 every Cycle-length
period, specified in seconds. Gust uses Wind2 only for the duration
beginning with Gust-start (in seconds) for the Gust-length (in seconds).
Wind1 is used at other times. Default ignores the Wind1 setting and uses
only Wind2.
SAVE/LOAD
Use the SAVE button to save the current environment settings to a file
on your hard drive. Use the LOAD button to load the settings from a
previously saved file.
HELPFUL TIPS
With Motion Designer, you can adjust motions intuitively since MD is
based on physical models. You can achieve heavy motions by increasing
the Weight value, and you can create light motions by decreasing
Weight.
Reducing the Spring coefficient creates soft motions, while raising
Spring produces motions with a stronger repelling force. Setting the
coefficient to an extremely large value creates stiff motions.
Since Motion Designer uses elastic body models as calculation
models, based on mass, spring, and resistance, unexpected vibration
may appear in the calculated motions. One of the following adjustments
may help correct the problem:
• Increase Resistance to make moving more difficult.
• Reduce the Spring coefficient. This will reduce the force that causes
vibration.
• Increase the Weight to stabilize the surface.
Abnormal motion, including vibration, may be the result of (gasp!)
calculation errors. Remember, the motion is approximated based only on
numeric values. This problem may be solved by adjusting the accuracy
of the calculations using the Calculate resolution setting on the Motion
Designer Options panel, discussed below.
18.16 CHAPTER EIGHTEEN: MOTION DESIGNER
OPTIONS PANEL
The Motion Designer Options panel is displayed when you click on
the Option button on the main Motion Designer panel.
NOTE
MD_Plug is automatically added to the Target when you click the
Activate button on the MD Property, Objects tab. It is removed if
Deactivate is clicked. As such, you will normally not need to add or
adjust this plug-in manually.
Setting Options
Double-click MD_Plug after it has been added on the Deformations
tab of the Object Properties panel to display its options panel.
The MDD Filename field specifies the Target’s MDD file.
The Action Start field indicates the time (in seconds) at which the
motions from the MDD file should start. This lets you delay the start of
the effect.
The End Behavior setting determines what happens after the motion
finishes. Stop holds the last state. Repeat repeats the motion from the
beginning. Use Composite if you wish to stack multiple instances of
MD_Plug and add the motions together.
If Key-Move is ON, keyframed motion is applied along with the MD
displacement motion. Since the motion data created with Motion
Designer (including MD_Scan) contains displacement of shapes using the
keyframes, setting this ON can cause a doubling up of the keyframed
motion. To prevent this problem, set Key-Move to OFF.
NOTE
When using MD with other displacement plug-ins (which should be
loaded after MD) be sure Key-Move is ON. Motion Designer ignores
any plug-ins loaded above MD_Plug.
18.18 CHAPTER EIGHTEEN: MOTION DESIGNER
MD_MetaPlug
MD_MetaPlug is a displacement map plug-in for extending MD_Plug
and applying a MDD file to the object in Layout without restricting the
shape or the number of points. This lets you create the animation, and
lets you completely separate the object for animation and the object for
rendering. For example, you might use this to add buttons on a dress
after the MD calculation.
Setting Options
Specify the target MDD file in the MDD Filename field. The details
include the number of MDD frames, recorded time, and the number of
points on the plug-in button. Verify the information.
Specify the object used for the calculation of the MDD file as Cage
Object. This object should be made up of triangles and quads. The
smooth reshaping is executed based on the lattice by polygons.
NOTE
You may run into problems if the Cage Object is too rough.
Subdividing the Cage Object may help.
MD_MetaPlug_Morph
MD_MetaPlug_Morph is a displacement plug-in that enhances the
functions of MD_MetaPlug. By itself, MD_MetaPlug cannot use normal
morphing information because it ignores bones, morph mapping, and
displacement maps. However, if you use MD_Plug with
MD_MetaPlug_Morph, you can use normal morphing data with Motion
Designer.
L I G H T WAV E 3 D 7 18.19
NOTE
Using MD_Metaplug_Morph is CPU intensive, so be sure to select the
appropriate Morph Mode.
MD_Scan
MD_Scan is a displacement map plug-in that incorporates motion data
from Layout into Motion Designer. MD_Scan can handle motions, such as
those of bones affected by displacement map plug-ins. The resulting data
becomes an MDD file to be used with the main Motion Designer plug-in.
The MDD Filename field specifies the MDD filename.
Scan Points displays the number of points in the object to be saved.
Specify the frame where you want to begin recording in the First
Frame field and the frame you want to end recording in the Last Frame
field.
Specify the number of frames for which data should be saved in the
MDD file in the Frame Rate field. Data for skipped frames is
automatically interpolated. Increasing this number can reduce the data
size when you save motions that are long but relatively slow.
Scanned Frame displays the fetched frame.
NOTE
When you use MD_Scan with other displacement map plug-ins, be
sure to add MD_Scan last.
To use MD_Scan:
1 Add MD_Scan to the Deformations tab of the Object Properties panel
for the object whose motion you wish to incorporate.
2 Double-click the added plug-in to open its Options panel.
3 Define the desired MDD filename and set the parameters. Click OK.
4 Click OK for the next dialog that appears.
5 Make a preview animation. (Yes, this is necessary!)
6 Open the MD_Scan Options panel again. This time a different version
of the panel will appear. Click OK to save the MDD file data.
18.20 CHAPTER EIGHTEEN: MOTION DESIGNER
TUTORIALS
Here are a few basic tutorials to get you started with Motion Designer.
Waving a Flag
1 In Modeler make a flag pole using the Disc tool. Use two Segments.
Name the surface Pole.
2 Using the Box tool, make the flag. It should use lots of X and Y
Segments and line up with the top and middle of the pole. Triple the
polygons (Construct > Subdivide: Triple). Select the flag polygons
and name the surface Flag. Make sure the polygons face towards you.
If they do not, flip them.
L I G H T WAV E 3 D 7 18.21
3 Zoom in and select the top-left point on the flag and then the nearest
point on the pole. Make sure only two points are selected and choose
Detail > Points: Weld.
4 Weld the bottom-left corner of the flag to the pole in the same manner
as above.
5 Save your object as MDFLAG.LWO and load it into Layout.
6 Choose Scene > Dynamics: MD_Controller. This brings up the
MotionDesigner Controller panel.
HINT
For easy access, you may want to assign the MD_Controller command
to a menu or keyboard shortcut.
8 Next, double-click the Target line to turn this option on. Additional
options will appear, but you can leave them at their default state.
NOTE
That is one click to select the option and another to toggle its setting.
This is the way all of MD’s On/Off settings work. If the item is already
selected, you need to click only once.
9 Click the Surface tab and then the MDFlag entry to display the two
surfaces: Pole and Flag.
11 Choose the Flag surface and click the Spring setting. This setting
requires a numerical input. Enter 1000 in the input field beneath the
list of settings. A value of 1000 will make the surface resist stretching
like a piece of cloth.
12 Click the Environment tab. Each setting has three fields that are for
the X, Y, and Z axes, from left to right. Set Gravity to 0, -1, 0; Wind1 to
1, 0, -1; and Wind2 to 1, 0, 1. Cycle-length should default to two
seconds; this value makes the environment settings repeat every two
seconds.
18.24 CHAPTER EIGHTEEN: MOTION DESIGNER
Go ahead and play with the surface settings to change the effect.
Collision Detection
In this tutorial, we will show you how to do basic collision detection.
1 Here we have a simple flat segmented box with tripled polygons and a
basic ball. The objects were modeled in these positions. The box
object is called mdcloth and has a surface named cloth. The ball
object is called mdball and has a surface named ball. (Clever naming,
eh?)
L I G H T WAV E 3 D 7 18.25
3 Activate the mdball object and turn the Collision option on.
6 You should notice that some parts of the cloth surface go inside the
ball. We can easily fix this by increasing the thickness of the ball
surface for calculation purposes only.
Select the ball surface and increase the Skin thickness to about .02.
7 Click Start again and the cloth surface should no longer go inside the
ball. If it still does, increase Skin thickness some more.
You should see your cloth slide off the ball towards the end of the
animation. Play with the surface settings to change the effect.
More Tutorials
Please visit LightWave3D.com for additional tutorials.
chapter19
Distributed Rendering
L I G H T WAV E 3 D 7 19.1
C hapter 19:
Distributed Rendering
LightWave allows you to use the processing power of other
computers on a network to render scenes. This is called distributed
rendering or sometimes a rendering farm. There are a few basic
approaches to distributed rendering with LightWave.
ScreamerNet uses Layout’s Network Rendering panel (Rendering >
Network Rendering) to control submitting scenes to networked
computers running the ScreamerNet process. ScreamerNet can control
up to 1,000 CPUs (Note: A single machine can have more than one CPU.
Each CPU is counted as one). Each will render a frame from the
animation until the scene is rendered.
NOTE
You can also use LightWave’s distributed rendering feature to batch-
render multiple scenes on a single machine.
RENDERING MODES
You can choose from two distributed rendering modes: Original
ScreamerNet and ScreamerNet II.
WARNING
Scenes, objects, and images should not have any spaces in their saved
names; use an underscore ‘_’ instead (e.g., MY_3DCAR.LWO instead
of MY 3DCAR.LWO).This is vital for dependable ScreamerNet
operation. If there are spaces in these names, ScreamerNet and
LightWave may read them as corrupt files.
SCREAMERNET CLASSIC
Original ScreamerNet is designed to be used with networked CPUs
that do not share directories. Original ScreamerNet has the disadvantage
of requiring you to load the scene to be rendered on the control machine
and sending the scene file, object files, and image files to each connected
19.2 CHAPTER NINETEEN: DISTRIBUTED RENDERING
NOTE
Original ScreamerNet is included primarily for backward compatibility
with older rendering engines.
SCREAMERNET II
ScreamerNet II does not require the scene be loaded on the control
machine. As long as the scene, object, and image files, (as well as the
save-to directories) are all accessible to each CPU on the network, each
individual node machine can load the scene and save images directly to
the shared drive(s). Additionally, ScreamerNet II can “batch render” up
to 100 separate scene files.
The process of using ScreamerNet II is basically to run the rendering
module (i.e., LWSN) on all of the computers that will be rendering. This
includes the designated control computer. You then run LightWave on
the control computer and identify the scene or scenes you want to
render.
Since ScreamerNet communicates by writing files, NetBEUI and
TCP/IP are not required. As long as each machine can see each other and
write files across the network, ScreamerNet should function properly.
The LWSN program is supplied with LightWave. However, you will
only receive the version appropriate for the platform for which you
bought LightWave. For example, if you purchase the Intel version of
LightWave, you will receive the Intel version of LWSN.
WARNING
All of the rendering nodes need not have the same architecture (i.e.,
Intel, Mac, etc.). However you must run the proper LWSN version on
each type of machine. In addition, plug-ins used in the scene must also
reside on each node. If not, some images would render using the plug-
in and others wouldn’t because they couldn’t.
Using Screamernet II
The Host is the machine with Lightwave installed on it. Nodes are the
other machines on the network used for rendering. Node machines do
not need to have any NewTek software or hardware on them.
L I G H T WAV E 3 D 7 19.3
NOTE
The Host machine can be a rendering node as well. It may be easiest
to use the same mapping technique described above, although you
could map everything locally if you want.
NOTE
Mac users should use a command-line file, discussed in the Appendix,
to set LWSN’s parameters.
NOTE
After you execute LWSN.EXE you may see a message like Can’t open
L:\ScreamerNet\Common\Job1.This will be normal until Lightwave
initializes ScreamerNet.
NOTE
ScreamerNet does not render out animations. It renders only
individual files.
WARNING
If you close the DOS shell on any of the render nodes, you may have
to restart all nodes and re-initialize them.
ScreamerNet II Syntax
The command line parameters for LWSN.EXE -2 are:
LWSN -2 [-C<CONFIG FILE DIR>] [-D<CONTENT DIR>] [-Q] [-T<CHECK INTERVAL>]
<JOB FILE> <REPLY FILE>
The check interval is defined in seconds. It specifies how often to
check for commands during rendering. If the -T parameter is not used,
rendering is uninterrupted and LWSN won't check the job file until its
current render job is done. With -T, it will check every so often during
rendering for only two commands: status and abort. (All other
commands are ignored). (The actual check interval may be longer than
specified, depending on what is currently being processed.)
TROUBLESHOOTING
If clicking the Screamer Init button doesn't find the other CPUs, go
back and start at the Host Machine Setup section.
If images seem to render unrealistically fast and no images are saved:
1 Check to make sure that you have full sharing access across the
network. This is done through Windows NT Explorer. You can check
this by copying a file at random back and forth across the network.
2 If the scene and/or objects were created without taking into
consideration the new drive path names, rendering may occur on
only the host machine.
The most common cause of ScreamerNet crashing is when too many
computers try to write or read their information to/from the Host
computers while the host renders.
• Do not use ScreamerNet to render on the host machine, but rather
use it only as a server where the hard drives are found.
• Map a drive from a different computer as drive Y:, for example, and
set your scene to save the animations to that drive. The computers
don’t know that drive Y: is not on the host, just that it’s present.
Another problem occurs when the hard drive where you save the
images or animation is full. This problem creates an error in LightWave
and each ScreamerNet node.
L I G H T WAV E 3 D 7 19.9
HINT
You can get the syntax for ScreamerNet by simply typing LWSN with
no arguments.
19.10 CHAPTER NINETEEN: DISTRIBUTED RENDERING
chapter20
LightWave 3D Modeling
L I G H T WAV E 3 D 7 20.1
C hapter 20:
LightWave 3D Modeling
LightWave Modeler lets you create objects from scratch or edit
existing objects. Object modeling is the design and creation of wireframe
objects from a simple shape, like an apple, to a complex shape, like a
finely-detailed sports car. In Layout, you are the interior designer moving
furniture and putting up pictures. In Modeler, you are the furniture maker
and the builder of the house.
COMPONENTS OF A 3D OBJECT
What makes up the 3D object? It has two traits: its physical shape and
its visual appearance. The physical shape of an object comprises points
joined by lines to form faces that we call polygons. The form that the
polygons present to us makes up an object’s shape.
MODELING IN 3D
How would you make a mug? It depends; if you were a sculptor, you
would mold a lump of clay. If you were a designer, you would draft it with
paper and a mechanical pencil. If you were an artist, you would probably
sketch it. But suppose you were using a computer. How would you make
a mug then? What tools would you use?
You want to portray the mug with realistic color, depth, and shading.
You need drawing tools, yes, but also power tools! With the computer,
you can create the mug in a variety of ways. LightWave recreates drafting
and workshop tools on screen so that people who are neither sculptors
nor traditional artists can use them just as easily. In fact, LightWave’s
tools do more than their real-life counterparts. There are several
bonuses to computer design also. You can undo a mistake, something
that is difficult to do in many of the arts. And there’s no mess to clean
up.
You create or edit all objects using the same XYZ coordinate system
used in Layout. The difference is that in Layout you are usually
positioning an entire object, whereas in Modeler you are positioning the
points that make up an object. Modeler also uses the XYZ coordinates 0,
0, 0 as the Origin.
NOTE
The Origin is the default rotation center (called the pivot point) for
objects in Layout. Keeping this in mind as you model your objects will
make the objects load into Layout properly without having to move
the pivot point.
EDITING OBJECTS
Generally, to build a 3D object, you create, combine, and modify
simple shapes into more complex shapes. This is known as editing. The
basic building blocks (i.e., primitives) include cubes, spheres, cylinders,
and other shapes. Using tools not unlike those found in a wood or metal
shop, you form a realistic representation of the envisioned object.
HAVE A PLAN
If you were building a desk, you would work from a sketch, a
photograph, plans, or a small model of the desk you intended to build.
This approach also works well for modeling 3D objects. Having the
actual shape or a representation of the object in front of you while you
design is invaluable, and it will aid you in determining size, shape, angle,
color, and more. Whenever possible, work from pictures or small-scale
models. Picture books, magazines, blueprints, and visual dictionaries are
useful companions to have nearby.
As in any project, you either begin from scratch or modify an existing
object. If you’re new to 3D, building from scratch will appear tedious at
first. The Modeler exercises start off by using existing objects so you can
get the hang of how modeling tools work.
The toolbar sits at the side of the screen. The buttons presented will
vary depending on which menu tab you select along the top. You can
completely hide (or unhide) the toolbar by pressing ALT+F2 (or choosing
Modeler > Interface > Hide Toolbar On/Off).
Without Toolbar
Viewport Titlebar
You can change the View Type and Rendering Style of a viewport
without going to the Display Options panel by using the pop-up menus
on the left side of each viewport titlebar. The buttons on the right side
affect panning, rotating and zooming your view. See Chapter 27 for more
information.
L I G H T WAV E 3 D 7 20.5
Modeler Menus
Most of the menus should be fairly obvious. The Construct menu
contains commands that perform large-scale operations, grouped by
action type. The Detail menu contains commands that change the
properties of objects, grouped by object type.
Generally, menu group names that are verbs contain commands
based on the type of action they perform. Menu group names that are
nouns contain commands based on the type of object they affect. The
menu tab names are all intended to be read as verbs. So, to create your
object you would start on the Create menu tab; to detail your object,
you would move to the Detail menu tab, and so on.
The Utility group, at the bottom of the Construct menu, contains
miscellaneous commands that do not fit elsewhere on the menus. The
Additional pop-up menu resides here for unclassified commands.
Make particular note of the Mode menu along the bottom border. It’s
got some important stuff on it and is easily missed.
above the grid display is an information display. Most of the time this
gives you feedback on the position of your mouse. However, depending
on what you are doing, it can also display a variety of other information.
To the right of the grid display are the three mode buttons. These are
mutually exclusive buttons, so only one can be active at any one time.
These determine when you are editing points, polygons, or a user-
defined area. Above them is the selection info display, which normally
tells you how may points/polygons you have selected.
Along the bottom-right are the cut-and-paste buttons, as well as the
undo/redo buttons. In the row of controls above this is the tool tips
display and the Vertex map mode (W, T, and M) controls.
RESETTING TOOLS
Non-interactive areas (e.g., not a button) on the toolbar and bottom
border (including the left-corner information display and grid size) act as
a reset button, much like you might use the ESC key on other
applications. What happens when you click in a reset area depends on
the current state of tools. For example, if you have points/polygons
selected and you are in the Point/Polygon Selection mode, they become
unselected.
All built-in tools (i.e., primitive and modifying) maintain their state, if
they are used, unselected, and then used again. The default state of the
tool can be recovered by dropping (clicking in a reset area or choosing
Modes > Drop Current Tool when a tool is selected, but inactive. If the
tool is active, the first drop deactivates the tool, keeping the current
settings. The second drop would then reset to the default settings.
You can also choose Modes > Deselect Tool. This is just like clicking
the active tool button, making it inactive.
FOUR VIEWPORTS
The largest part of the interface consists (by default) of four
viewports. You can edit in any viewport. The default three viewports
starting in the top left and moving counter-clockwise are labeled Top,
Back, Right, and Perspective. The Top view is an overhead point of view
looking down on the object. The Back view looks directly at the object
from the rear. The Right view is positioned as if you stood to the object’s
right. Perspective is a forced perspective view that you can rotate by
holding the ALT key and dragging your mouse on it.
L I G H T WAV E 3 D 7 20.7
You can change the relative sizes of the windows by dragging any
border between the viewports.
As you grow familiar and gain experience with Modeler, you will find
yourself switching back and forth among these viewports, changing their
size, position, and function, and even changing the number, to get the
best view from which to use a particular tool. You can adjust the screen
to see as much or as little detail as you want, by using various options.
20.8 C H A P T E R T W E N T Y : L I G H T WAV E 3 D M O D E L I N G
NOTE
See Chapter 27 for information on how the viewports operate and
options that allow you to change them.
NOTE
When loaded into Layout, individual layers of a MultiMesh are treated
as individual objects.
Multi-document Environment
Like files in your wordprocessor, multiple object files can be loaded
simultaneously. The Current Object pop-up button to the left of the layer
buttons switches from object to object. Object names listed with an
asterisk (*) have been changed and may need to be saved. Attempting to
close the application triggers a request to save all changed objects.
Ghosted objects are ones that have been loaded into Layout, but not into
Modeler. Choosing a ghosted object from the pop-up menu will load it.
L I G H T WAV E 3 D 7 20.9
Layout Communication
If the Hub (see Chapter 3) is running, a small pop-up menu button
appears in the top-right corner of the interface, just to the right of the
layer buttons.
Layer Navigation
You can use the layer buttons in the top-right corner of the main
interface to work with layers in banks of ten. You can apply most
modeling functions across multiple layers simultaneously by placing
them in the foreground. You do this by clicking the top part of a layer
button; all other layers are unselected, whether they are in the
20.10 C H A P T E R T W E N T Y : L I G H T WAV E 3 D M O D E L I N G
NOTE
You can quickly swap the state of foreground and background layers by
pressing the apostrophe key (‘).
The List view just lists the layers. In the Hierarchy view, the layers of
an object are shown in their parental relationship, and that can be altered
by dragging and dropping layers. Layers cannot be moved between
objects and all children at the same level are shown in numeric order.
Parenting layers
The ALT+# (1 through 0) keyboard shortcut will place a layer into the
background. Note that if only one layer is active, it cannot be placed into
the background.
All of the currently loaded objects will be listed. Click on the white
triangle to expand or contract the layer listing for a particular object.
Layers in the foreground will have a checkmark in the corresponding F
column. Clicking in the F column for a different layer will place that layer
by itself in the foreground. To add to the current selection, hold the SHIFT
key as you click. The B column works similarly on background layers.
20.12 C H A P T E R T W E N T Y : L I G H T WAV E 3 D M O D E L I N G
The Visibility flag can be toggled on/off for each layer by clicking in
the column. A layer is invisible to Layout when the (Visibility flag) dot
does not appear. You may want to use this on scratch layers and cutting
objects used for booleans. This setting has no effect on Modeler.
NOTE
A few empty layers are always listed after the last occupied layer.
HIDING PANELS
Since your screen can often get cluttered with open panels, you can
quickly hide/show these floating windows by pressing the ALT+F1.
NOTE
You may select multiple objects, if supported by your platform’s file
dialog, or select VBFileRequester as your File Dialog on the
Interface tab of the Display Options panel (Display > Viewports: View
Options).
Choose File > Load Object into Layer to load an object file into the
currently selected layer. If the file contains multiple layers, they will all
be loaded into the same layer.
Choose File > Revert Current Object to put the current object in its
last-saved state. Essentially, this is like closing and reloading the object.
L I G H T WAV E 3 D 7 20.13
NOTE
If the EPS uses a gradient fill, you will need to convert it to a solid fill
(e.g., using Illustrator) before using this loader.
The Curve Division Level option sets the desired level of detail.
The Convert to pop-up menu sets the type of object that will be
created.
The EPS file is defined by either typing the full path in the EPSF File
input field or using the requester button to bring up a file requester.
Auto Axis Drill will attempt to automatically drill holes in faces,
where appropriate. (e.g., the two holes in the number 8).
Auto Centering will center the resulting geometry.
NOTE
Due to the inherent differences between 2D structured drawings and
3D objects, there will usually be some amount of cleanup required.
NOTE
This command has been tested with Illustrator files up to version 8.
NOTE
An asterisk will appear next to the names (on the current pop-up
menu) of objects that have been modified since their last save.
EXPORTING OBJECTS
The File > Export menu has several options to export your LightWave
object into different formats. They are discussed in the Appendix under
the heading Foreign Object Support.
Enter the path and filename in the file input field or click the Export
File button to bring up a file dialog. Define the size in inches of the
resulting drawing using the W and H field.
L I G H T WAV E 3 D 7 20.15
WARNING
Objects revert to their on-disk version in other Hub applications (e.g.,
Layout) when you close them or exit Modeler and do not save them
first.This will cause you to lose unsaved attributes like surface
changes.
CUSTOM PREFERENCES
You can use Modeler > Preferences > Import Preferences File and
Modeler > Preferences > Export Preferences File to load and save,
respectively, preference settings. Use this feature to access special-
purpose preference settings you might set up. You can also use Modeler
> Preferences > Revert to Startup Preferences to go back to the settings
that existed when you first started Modeler.
NOTE
The preference settings that exist when you shutdown Modeler will
become the startup settings for your next session.
USER COMMANDS
User commands are user-defined names that are associated with a
particular plug-in. You can also provide arguments for the plug-in. Once
defined, they can be used as standard commands and assigned to a
menu and/or key.
20.16 C H A P T E R T W E N T Y : L I G H T WAV E 3 D M O D E L I N G
NOTE
You can set up multiple user commands using the same plug-in with
different arguments.
NOTE
The command arguments can be derived from the LScript
documentation on the LightWave CD.
2 Enter the name you want to use. We suggest you also use the prefix
CMD (e.g., CMDSTRETCHPRINCESS). This will keep all of your defined user
commands together when they appear in a list together with standard
commands.
3 Select the command you want to use on the Action pop-up menu.
4 If the plug-in requires arguments, enter them in the Argument field.
5 Click the Add button. Your command will appear on the User
Command pop-up, along with any other user commands you have
created.
Click Delete to delete the selected User Command. Selecting the
Clear All button will delete all defined user commands, but don’t
click this unless you really mean it! There is no implicit undo for this.
You will have to either re-add commands manually or use Modeler >
Preferences > Revert to Startup Preferences.
L I G H T WAV E 3 D 7 20.17
6 Click OK to close the dialog. The user command will now appear in
any command lists.
NOTE
If you need to change the plug-in associated with a user command, you
must delete it and then re-add it.
Execute Command
The XCommand function (Construct > Utility: LScript) lets you
directly enter a user command to be executed.
GENERAL OPTIONS
You can access the General Options panel by choosing Modeler >
Options > General Options.
20.18 C H A P T E R T W E N T Y : L I G H T WAV E 3 D M O D E L I N G
Content Directory
The Content Directory (see Chapter 6) is a central file path for
loading objects, images, and scenes. Note that this setting is shared by
all LightWave applications.
HINT
To create optimal objects, your goal is to keep the polygon count
down.They will load and render faster than bloated objects, with no
visible difference. As such, Quadrangles is the suggested setting for
most cases.This lets you manually choose the areas that require
triangles.
Flatness Limit
The Flatness Limit setting determines whether Modeler regards a
polygon as planar or not. Note that a non-flat polygon within this setting
can still cause rendering errors. (See Chapter 21, “Non-Planar Polygons.”)
NOTE
When you create a surface using the Change Surface dialog (Detail >
Polygons: Surface), the option (Make Default) automatically sets the
default surface name.
Curve Divisions
The Curve Divisions setting determines how smoothly a curve (e.g.,
spline curves, text, etc.) should be interpolated. The finer the setting,
the greater the number of polygons used, and the smoother the resulting
curve division.
Patch Divisions
When a SubPatch object is frozen with the Freeze command, it is
converted into a polygonal object. The Patch Division setting
determines the level of detail used in the resulting object. The number
entered in the Patch Division field must be 1 or greater and is restricted
to whole numbers. (See Chapter 29, “Patch Level and Conversion to
Polygons.”)
The number of polygons per SubPatch surface will be equal to the
square of the Patch Division number. For example, if set to 4, each
SubPatch surface will be converted into 16 polygons arranged in a 4 by 4
array. A setting of 2 would result in 4 polygons arranged in a 2 by 2 array.
The higher the setting, the higher the number of polygons used.
Because of LightWave’s surface smoothing capabilities, you can often get
away with a setting of 2 and sometimes even 1, which will keep the
polygon count of your objects to a minimum.
Metaball Resolution
The Metaball Resolution setting determines the amount of detail
used to display metaballs. (See Chapter 29, “Metaball Resolution.”)
Undoing Operations
LightWave Modeler offers an undo function that lets you take back
the last change you made while working on an object. The Undo button
(U) is located along the lower edge of the interface. The number of undos
is determined by the Undo Levels setting. The maximum value is 128,
but you can also be limited by your computer system RAM. However,
minimally-configured systems should be able to go back several steps if
necessary. Even power-users should find 10 undo levels sufficient.
Undoing the Undo
It’s possible to go too far unintentionally and undo too many steps.
To correct for this error, click the Redo button located next to the Undo
button. As long as you have made no editing changes, you can redo all
the way back to your last modeling operation.
20.20 C H A P T E R T W E N T Y : L I G H T WAV E 3 D M O D E L I N G
WARNING
If you undo back five steps, then use a new tool, you will no longer be
able to redo those steps. Undo is a kind of history that unfolds as you
model. If you go back and change the model, then you have changed
the course of history in a fundamental way.The structure of the model is
now different, and redo will be unable to restore it. (You aren’t Marty
McFly.)
chapter21
Points and Polygons
L I G H T WAV E 3 D 7 21.1
C hapter 21:
Points and Polygons
The process of object editing involves manipulating points and
polygons. It will include selecting some portion of an existing object,
choosing the operation to perform, adjusting any parameters for that
operation, then carrying out the operation.
The concept of selecting is very important to Modeler. Selection is the
act of specifying either the object itself, or a portion of it, that you intend
to edit next. The most basic elements you can modify include points and
polygons—the dots and multi-sided shapes that make up all objects. Any
number of points, polygons, or objects, in any combination, may be
selected for a specific operation.
NOTE
Everything in a layer is considered selected when nothing is selected.
NOTE
When selecting and unselecting, make sure that no modeling tool is
currently active.You can usually tell if a tool is active based on the
mouse pointer.You can quickly deactivate any tool by pressing the
SPACEBAR; however, if no tool was active, you will change the edit mode.
You can also choose Modes > Deselect Tool.
POINT SELECTION
Points generally appear in two ways on screen, selected and
unselected. Selected points are highlighted, while unselected points
remain small dots.
21.2 CHAPTER TWENTY-ONE: POINTS AND P O LY G O N S
To select points:
1 Use Point Selection mode (Point button or CTRL+G). The mode
selection buttons are located at the bottom-left of the screen.
2 Drag your LMB over points in an object and then release the mouse
button to select those points.
NOTE
Once you have selected points and released the mouse button, you
cannot select additional points in the same manner.
HINT
If you know the number of points you want to select, check the
information display above the Point (Selection mode) button. It shows
you the number of selected items.
L I G H T WAV E 3 D 7 21.3
To unselect points:
If selected points exist (and you have released the mouse button),
dragging over them with your LMB will unselect them. You can also use
the lasso by dragging with your RMB.
To unselect all points:
Click in any non-active (i.e., not a button) area on the toolbar to
unselect all points. You can also use the Drop Current Tool command (/).
NOTE
See Chapter 27 for additional selection commands.
POLYGONS
As discussed briefly in the prior chapter, a polygon is some number of
points joined by lines to form a solid face. A triangular polygon is a
three-point polygon. A quadrangular polygon is a four-point polygon. A
multi-sided polygon (some programs call these n-gons) is a complex
polygon, one with many points. As long as the points that make up a
polygon remain in one (flat) plane, the polygon will render properly. If
not, polygons can fall victim to unpredictable rendering errors. Even if a
polygon is flat when modeled, it can become “unflat” (non-planar) if a
displacement map, bones, or other effects that move points non-
uniformly are applied to the object during an animation.
21.4 CHAPTER TWENTY-ONE: POINTS AND P O LY G O N S
Polygon illustrations
Non-planar Polygons
Non-planar rendering errors can be eliminated by using triangles.
Why use triangles? Well, say you had a square piece of glass laying on a
table. It’s physically impossible to lift just one corner without also lifting
at least one of the other corners, right? However, if the glass is
triangular, we can easily lift one corner and leave the other two still
resting on the table. A non-planar polygon is like our square piece of
glass with just one corner lifted in the air—impossible for you and
LightWave’s renderer. Although you can make objects with non-planar
polygons, they will likely cause sporadic rendering errors.
If we split the glass square in half from one corner to another, we end
up with two triangles sharing a single side. (In Modeler speak, this is called
tripling polygons.) We can then, in effect, lift one corner without a problem
because the shared side would act like a hinge.
L I G H T WAV E 3 D 7 21.5
Tripled polygons
Flatness
Whether Modeler regards a polygon as planar or not depends on its
flatness value and the Flatness Limit on the General Options panel
(Modeler > Options > General Options) setting. If a polygon’s flatness
exceeds the limit, then it is considered non-planar. A polygon’s flatness
can be determined by selecting the polygon and opening the Polygon
Info panel (Display > Selection: Info). It is unlikely that you will ever
need to adjust the Flatness Limit default setting of .05%.
NOTE
If a polygon is non-planar, but within the Flatness Limit, it may still
cause rendering errors.
POLYGON EFFICIENCY
So why not just use triangles exclusively? Well, the more polygons
your object has, the longer it takes to render. Polygons with more than
three points are still useful when they will not be bent or twisted—
bending or twisting these types of polygons usually results in non-planar
polygons, which cause rendering errors. It is best to use a combination
of polygons when you model, using three-, four-, and greater-sided
polygons where necessary. Use the type of polygon that best fits the
needs of the animation and model.
SPECIAL-USE POLYGONS
A few types of polygons are useful for very specific purposes. Single-
point polygons appear to be normal points, except that you can select
them and assign them surface qualities like any polygon. However,
unless single-point polygons are assigned luminous or motion blur
attributes (or are used with HyperVoxels), generally they are not visible
when rendered. With luminosity and/or motion blur, they appear as a
pinpoints or streaks of lights in images or animations. This is highly
useful for emulating rain, stars, fireworks effects, and more.
21.6 CHAPTER TWENTY-ONE: POINTS AND P O LY G O N S
NOTE
See the discussion on Particle/Line Thickness; this feature is on
Layout’s Rendering tab on the Object Properties panel, see Chapter 9
for more information.
POLYGON SELECTION
Polygons generally appear in two ways on screen, selected and
unselected. A selected polygon will appear highlighted with outlines in
yellow. You will see that selecting polygons is very similar to selecting
points.
L I G H T WAV E 3 D 7 21.7
NOTE
Once you have selected polygons and released the mouse button, you
cannot select additional polygons in the same manner.
HINT
If you know the number of polygons you want to select, check the
information display above the Point Selection mode button. It shows
you the number of selected items.
To unselect polygons:
If selected polygons exist (and you have released the mouse button),
dragging over them with your LMB will unselect them. You can also use
the lasso by dragging with your RMB.
NOTE
Selecting a group of polygons and then deselecting the ones you don’t
want is often the only way to select the ones you do want.
NOTE
See Chapter 27 for additional selection commands.
SYMMETRICAL SELECTION
When you select polygons/points on the positive X axis and
Symmetry mode (Symmetry button) is active, polygons/points on the
negative X axis are also selected (or deselected). Polygons/points must
be exactly opposite each other on the positive and negative sides of the
X axis for this command to work properly.
21.10 CHAPTER TWENTY-ONE: POINTS AND P O LY G O N S
NOTE
Generally, you should perform all of your edits on the positive side of
the X axis when using Symmetry. Using the negative side may lead to
unpredictable results.
NOTE
Symmetry also affects polygon editing.
2 The initial state of the Volume select is usually Exclude. This means
polygons touching the bounding box are excluded. Clicking the
Volume button again will toggle to the Include state where polygons
touching the bounding box are included in the selection. You can also
judge the state by looking at the small text field right above the Point
Selection mode button.
3 Drag out a bounding box in a viewport with your LMB. If one already
exists, you can drag it around from the center or drag the edges and
corners to re-size. You can reset the bounding box by clicking in an
inactive part of the interface.
HINT
If you are selecting from among many items within a cluttered space,
it’s probably easier to use the lasso tool for Polygon Selection mode
(i.e., RMB).
HINT
Press the SPACEBAR to cycle through the Selection modes (Point,
Polygon, and Volume). Note that it will also first drop any modeling
tool that may be active.
SELECTION BY CRITERIA
The Polygon Statistics panel (Modeler > Windows > Statistics
Open/Close) includes some tools that simplify your life when you select
polygons.
L I G H T WAV E 3 D 7 21.13
Polygon Statistics panel. Pop-up button for surface, part, and sketch color selection are circled
Left: Selecting surface. Right: Surface now available for polygon selection
NOTE
The information presented on the Statistics panel will vary depending
on the editing mode (i.e., Points, Polygons, or Volume).
21.14 CHAPTER TWENTY-ONE: POINTS AND P O LY G O N S
HINT
Leave the Statistics panel open all the time for easy access.
SURFACE NORMAL
The surface normal—admittedly an unusual-sounding name—has
great importance in 3D. Here’s why: A feature of polygons is that they
can be one-sided or double-sided. They have the unique ability to be
invisible from one side while visible from the other, or they can be
visible from both sides. The surface normal, which appears whenever a
polygon is selected, projects away from the visible side of a polygon.
NOTE
Even if you have not modeled double-sided polygons, you can still use
the Double Sided surface attribute when rendering.
NUMERIC PANEL
The Numeric panel is a multi-functional non-modal window. Its
contents and abilities change depending on what tool is selected. When
you create primitives, it lets you refine graphically set values. When you
use modifying tools, it lets you change various settings that affect how
the tool performs. It is displayed by choosing Modeler > Windows >
Numeric Options or by just pressing the N key. It may be left open
continuously.
Use the Actions pop-up menu to Reset the fields to their default
settings or to Activate the tool. (You can also press the N key to activate
the tool.) Generally, activating a tool turns on its interactive handles, if
any, in the viewports. This can be for primitive shape, influence range,
and so on. It will also activate the numeric fields, if they are ghosted.
Activate option
NOTE
You can also reset to defaults by clicking a reset area when a tool is
selected, but not activated.
21.16 CHAPTER TWENTY-ONE: POINTS AND P O LY G O N S
chapter22
Creating Geometry
L I G H T WAV E 3 D 7 22.1
C hapter 22:
Creating Geometry
As you might expect, no one is going to create a starship by
individually creating each and every point and polygon. You create most
of your objects with primitives, that is, boxes, balls, discs, and cones.
Look around the room. Nearly everything in it can be broken down
into one or more of these primitive shapes. Your monitor is basically a
box, your desk is made up of several boxes, your trash can is an
extruded disc, and so on.
The modeling process normally starts with a primitive and you just
modify and add to it. So, the better you get at breaking down objects
into primitives, the better modeler you will become.
You’ll probably use the Box tool most often, because most objects are
box-like in general form. The Ball tool is great for creating anything from
a tiny pea to a giant planet. The Disc tool is used to form cylinder-
shaped objects like coins or tubes. The Cone tool is perfect for making
delicious ice cream cones...mmmmmm.
To create a primitive:
1 Select the primitive tool button on the Create menu (i.e., Box, Ball,
Disc, or Cone).
2 Drag out the initial 2D shape in any viewport with your LMB. This
activates the tool. Pressing the CTRL key before you click and holding
it while you drag will symmetrically constrain the shape. The
dimensions of your outline are shown in the lower left corner.
3 After you release the mouse button, you can adjust the shape by
dragging any of the sides or corners. You can reposition it by
dragging the center.
L I G H T WAV E 3 D 7 22.3
4 Go to another viewport and drag to extend the shape into the third
dimension. Release the mouse button.
NOTE
If you find you need to start over from scratch, just click in an inactive
toolbar area or use undo.
Creating in Perspective
You can create primitives in a perspective viewport pretty much as
you would in a 2-D viewport. You will see highlighted control points at
the corners, sides, and center. You will also notice that you can see
(fainter) hidden sides and control points. You can also drag any of the
control points. Dragging a side control point will move the
corresponding side along its perpendicular axis.
22.4 C H A P T E R T W E N T Y - T W O : C R E AT I N G G E O M E T R Y
Creating in perspective
NOTE
Remember, you can rotate your view by holding the ALT key as you
drag.
You have two different ways to adjust the shape of your box, the Size
and Range modes. With the Size tab selected, you can adjust the Width,
Height, and Depth of your box dimensions. The Center XYZ settings set
the position of the center of the box.
With the Range tab selected, you can adjust the positions of two
opposing corners of your box using the Low XYZ and High XYZ settings.
You can round off the edges of the box by setting the Radius to a
value greater than 0. The Axis sets the direction of the radial polygon
pattern used to round the edges. Use the Sharp Edge option to smooth
or unsmooth the edges.
22.6 C H A P T E R T W E N T Y - T W O : C R E AT I N G G E O M E T R Y
Rounded-edge box
HINT
Use a Tessellation ball if the camera will be close to the object and
the surface is smooth.
Axis (Globe) determines the major axis for the ball. This is
also set when you click to first create the ball using the
axis perpendicular to the (orthogonal) viewport.
Sides (Globe) determines how many segments should be used
around the ball.
Segments (Globe) sets how many vertical segments should be
used. Three-sided polygons are always used at the top
and bottom. Elsewhere, the polygons used are dependent
on the Polygons setting on the General Options panel
(Modeler > Options > General Options).
(Tessellation) sets the number of segments along the
edges between the twelve polyhedral vertices. Higher
settings will increase the complexity of the triangle
matrix, taking longer to create and requiring more RAM.
Center The XYZ coordinates of the center of the ball.
Radius The radius of the ball along the X, Y, and Z axes.
NOTE
Most tools allow numeric input.Thus, the contents of the numeric
dialog will change as you select different tools.You may find it handy to
just leave the numeric dialog open.
You can use standard drag handles to manipulate the shape and
position interactively. The numeric panel provides more detailed control.
A perfect circle—looking along the set Axis—can be made by setting
the Side Bulge to 2. A value of about 5 yields a rounded square shape.
22.10 C H A P T E R T W E N T Y - T W O : C R E AT I N G G E O M E T R Y
NOTE
If you must know, a quadric is a shape made of the squares of the
coordinates, a generalization of a sphere, which is x2 + y2 + z2.
Gear
Wedge
Plot1D Function
Plot1D Function
Plot2D Function
In the fields labeled X Min, X Max, Y Min, and Y Max, enter the
boundaries for the surface. In the XMesh and YMesh fields, enter the
number of divisions along that axis.
22.16 C H A P T E R T W E N T Y - T W O : C R E AT I N G G E O M E T R Y
Plot2D Function
NOTE
If the Text tool button is ghosted, make sure you have added some
fonts, as discussed below.
Use the Font pop-up menu to select the font for your object. Clicking
the Load Type-1 button brings up a file requester where you can load a
PostScript font. If you have PostScript fonts, the files often have a .PFB
filename extension. Clicking the Add True-Type button brings up a font
selection requester you can use to select a font. (Note: the point size is
irrelevant.)
Click Clear Entry to remove the selected font from the font list. Clear
List will purge the entire list. Load List brings up a file requester where
you can load a previously saved font list file. This can be the LWM.CFG file.
Save List brings up a file requester for saving the current font list to a
file. Note that the font list is automatically saved when you exit Modeler,
so it is not mandatory that you save the list. Use this option to create
custom file lists for special purposes.
NOTE
The clearing operations do not affect the actual files stored on your
hard drive. Also fonts in the list utilize no RAM until used.
You can use the BACKSPACE or DELETE keys to clear the last character
typed. To clear the entire text line, press SHIFT + BACKSPACE or SHIFT +
DELETE. If you need to use a Modeler keyboard shortcut, like the N key,
while using the Text tool, first press the ESC key to exit the Text tool,
then press the desired shortcut key.
L I G H T WAV E 3 D 7 22.19
NOTE
The sizing handle cannot be dragged past the bottom.
Text will be aligned with reference to the vertical bar. Pressing the TAB
key will cycle through the alignment options.
You can cycle through the font list using the UP and DOWN ARROW keys
or you can use the numeric requester. If you have already started a
template, the font will change.
You must deselect the Text tool or select another tool to actually
create the object. Alternatively, clicking your RMB will create the object
and also move the template to your mousepointer position. You can
quickly make unlimited copies of the text in this manner.
The number of points used to approximate curves in characters
depends on the setting for Curve Division on the General Options panel
(Modeler > Options > General Options).
NOTE
The characters that are available within the selected font may be
limited.You may or may not have all possible characters allowed by the
PostScript format depending on whether those characters were
created in the font originally.
From the Font pop-up menu, you can select any of the fonts defined
in the previously discussed Fonts List.
Some fonts, when converted into 3D objects, have additional points
near their corner vertices. When these polygons are beveled, these
additional points can cause beveling inaccuracies. Use the default
setting, Sharp, for the majority of your text generation, as this will avoid
the creation of such points. The Buffered setting allows the additional
points to be created, should you decide that you wish it.
The Alignment setting determines how the text is aligned around the
text insertion pointer. Center is the XYZ position of the insertion point;
however, it is usually set interactively by clicking the mouse in a view
window. The Scale value sets the general height of the text; however, the
actual size may be less and will vary from font to font. Kern sets the
spacing between fonts and depends on the font’s own characteristics.
Negative numbers are allowed to bring characters closer together.
NOTE
The Scale setting (numeric panel) cannot be set to zero or a negative
number.
3 Drag out the desired shape. (It is not necessary to touch the
beginning of the line with the end. The polygon is closed
automatically.) When you release your mouse button, a polygon is
created using the shape you sketched out. The polygon is always
centered in the depth dimension of the viewport.
Sketching Curves
You can use the Curve option on the numeric panel of the Sketch tool
to create a spline curve instead of a polygon. The tool operates exactly
as previously described, except an open spline curve is created instead
of a polygon.
To sketch a curve:
1 Click Create > Elements: Sketch.
2 Open the numeric panel and select Curve as the Type.
3 Drag out the desired shape. When you release your mouse button, a
curve is created using the shape you sketched out. The curve is
always written on a plane positioned at 0 of the viewport’s
perpendicular axis.
22.22 C H A P T E R T W E N T Y - T W O : C R E AT I N G G E O M E T R Y
NOTE
You may be already familiar with curves like these since many desktop
drawing programs use them. Spline curves will be discussed in detail
later.
Bezier Tool
NOTE
Once you drop the Bezier tool, a normal Modeler curve is created. As
such, you cannot re-edit the curve using the Bezier tool.
On the numeric panel, you can set the subdivision level (for smoother
or less smooth curves), create a closed curve, and delete the last
tangent point.
L I G H T WAV E 3 D 7 22.23
SPLINE CURVES
In addition to making polygons from points, you can also create
curves. Curves are a powerful modeling tool and help you create smooth
edges and flowing organic objects or object details. They are also used
for some modeling tools as a directional path.
You can create curves using a minimal number of points, yet achieve
a smoothness that would take many times the number of points if you
attempted to mimic the curve with a polygon. Moreover, with fewer
points, it is easy to subtly or dramatically change the curve’s shape.
However, by themselves, curves will never render in a finished image.
They are essentially a free-form modeling tool used to create polygonal
objects.
There are basically two types of curves: open and closed. An open
curve has a beginning and an end—essentially a curving line. A closed
curve has no beginning or end; it is a closed loop. A circle is a closed
curve.
Its numeric panel offers options for making control points, discussed
later, and deleting the last point from the curve. Changing the Curve
Points value will resample the curve into more segments. Note that
resampling the curve can change its shape, particularly if the number is
22.24 C H A P T E R T W E N T Y - T W O : C R E AT I N G G E O M E T R Y
To create a curve:
1 Create a few points. Clicking with your RMB using the Points tool
(Create > Elements: Points) will work.
2 Your points must be selected in the order you want the curve to flow.
However, if you immediately go to—or were using—the Point
Selection mode, the points should already be in the selected state. If
not, select them in the desired order.
3 To create an open curve from the points, click Create > Elements:
Make Curve > Make Open Curve or press CTRL + P.
L I G H T WAV E 3 D 7 22.25
To create a closed curve from the points, click Create > Elements:
Make Curve > Make Closed Curve or press CTRL + O (the letter o).
You can modify the curve’s shape by simply moving the individual
points. Notice how the curve flows smoothly through the interior
points. It is easiest to see this as you drag points on either side of a
point. If you need additional control, you can add additional points to
an existing curve.
Curve Direction
Curves also have a head and tail. This is important for certain
modeling operations discussed elsewhere. When the curve is selected in
the Polygon Selection mode, the head is indicated by a small diamond; it
is the first point you selected when creating the curve.
You can flip the head and tail around by using the Flip command
(Detail > Polygons: Flip).
control an open curve’s shape, it can be difficult to get the desired result
at the ends of a curve. Fortunately, Modeler lets you have extra “control”
points at each end, which affect the curve shape, but don’t actually
become part of the curve’s modeling characteristics.
To activate control points on a curve:
1 If you have more than one curve, select your desired curve first using
the Polygon selection mode.
2 Choose Detail > Curves: Control Points > Begin Control Point to
detach the first point from the curve. It is your starting control point.
Dragging this point will change the shape of the curve at the new
starting point.
3 Choose Detail > Curves: Control Points > End Control Point to
detach the last point from the curve. It is your ending control point.
Dragging it will change the shape of the curve at the new ending
point.
The control points commands will also toggle the control point state
off, if selected again.
NOTE
It is perfectly legal to have only a beginning or ending control point on
a curve.
HINT
If you plan to use control points on a curve, you should add an extra
point at the beginning and end of a curve for that purpose.
NOTE
Make sure that the point they share is in fact one point. (If not, merge
the points into one.)
The number of points that Modeler will use to approximate the curve
depends on the setting for Curve Division on the General Options panel
(Modeler > Options > General Options).
To create a point:
1 Choose Create > Elements: Points to activate the Points tool.
2 In any viewport, with your LMB drag the large crosshairs to the
desired position (you can reposition in any viewport). The
information display (bottom-left corner) will give you position
feedback as you move your mouse.
3 Click the RMB to create the point. Be careful not to move your mouse
pointer. Deselecting the Points tool will also create the point, if you
don’t have a steady hand. Deselecting and then reselecting the Points
button will create the point and keep you in the create point mode.
4 You can also position the point by dragging with your RMB. However,
the points will all be created along the same plane (when you release
the RMB).
L I G H T WAV E 3 D 7 22.29
Spraying points
You can control the flow (Rate) and Radius of the spray on the
numeric panel, as well as specify a color vertex map and color.
MAKING A POLYGON
As we have discussed, polygons are made up of points. Excluding the
one and two-point specialty polygons, polygons should contain at least
three points. You will likely find that your finished objects are
constructed of a variety of polygons with different numbers of points.
NOTE
Don’t get discouraged if making polygons seems very tedious. Not that
it isn’t, but most of the time you’ll create your objects by starting with
primitives. Happily, creating polygons from points is the exception
rather than the rule.
22.30 C H A P T E R T W E N T Y - T W O : C R E AT I N G G E O M E T R Y
NOTE
Once you create a polygon, you’ll want to view it in the Polygon
Selection mode to see if its surface is facing the correct direction
based on the normal, discussed later.
SINGLE-POINT POLYGONS
Sometimes you will want to turn single points into polygons. This is
necessary for objects like stars in a starfield, since you cannot assign
surface attributes to a point. Choose Create > Elements: Points to Polys
to turn selected points into single-point polygons.
RANDOM POINTS
Use the Random Points command (Create > Elements: RandPoints) to
create a defined number of points distributed randomly. You can choose
between a Square or Sphere shape. Constant generally confines the
points to the selected shape, while Falloff tapers off the point
distribution along the perimeter.
Random Points
L I G H T WAV E 3 D 7 22.31
RANDOM PRICKS
Create > Elements: RandPricks creates random surface points on
polygons. Use this to add detail to an object where you will later kill all
of its polygons.
Random Pricks
STIPPLE
Create > Elements: Stipple creates a grid of regularly spaced points
over the surface of the object in the active layer. The Spacing fields are
for separate XYZ point spacing settings.
Stipple
22.32 C H A P T E R T W E N T Y - T W O : C R E AT I N G G E O M E T R Y
TRIANGLES
You can use the Triangle Fan command (Create > Elements: Make
Fan) to create a subdivided polygon from selected points. (Selecting in a
clockwise fashion works best.) The triangles will share the first point
selected.
A triangle fan
A triangle strip
CAGE
Create > Elements: Cage creates a cylindrical spline cage (connected
curves) using Axis, Sections (i.e., segments + 1), Sides, Top, Bottom, and
Radius settings.
L I G H T WAV E 3 D 7 22.33
Cage dialog
Cage result
Platonic Solid
22.34 C H A P T E R T W E N T Y - T W O : C R E AT I N G G E O M E T R Y
Top to bottom, left to right: Tetrahedron, Cube, Octahedron, Cubeoctahedron, Icosahedron, Dodecahedron and
Icosidodecahedron
Primitives
Choose Construct > Utility: Additional > Primitives to display a menu
for the following six commands: Toroid (Donut), Wedge, Cage (Spline
Cage), RandPricks (Random Points), Gear, and Platonic (Platonic Solid).
Primitives
Teapot
Spot o’ tea anyone? Generate a quick teapot by choosing Construct >
Utility: Additional > Teapot.
Teapot
chapter23
Modifying Geometry
L I G H T WAV E 3 D 7 23.1
C hapter 23:
Modifying Geometry
Moving, rotating, and scaling points and polygons is easy with the
tools (and functions) available on the Modify menu. Generally, the tools
work on points or polygons, depending on what edit mode you have
active.
HINT
Modeler tools can be deselected by clicking the highlighted button
again or, if it appears in a menu, by selecting it again. An easier method
is to just hit the SPACE key, which is mapped by default to Change
Selection Mode.
WARNING
If your object uses polygons with more than three sides, you will likely
see the effects of non-planar polygons created as you apply some
tools.You may need to triple your polygons as a final step.
FALLOFF MODE
As you will notice, many tools are just variations of the same
movement and differ only by how the tool’s effective range falls off. Take
the Move tool for example. It simply repositions the selected items
equally to a new location will no falloff. With Shear, the range of the
23.2 CHAPTER TWENTY-THREE: MODIFYING GEOMETRY
effect varies along a linear axis. Magnet is similar, but the effect falls off
in a radial pattern. DragNet is much like Magnet except that the center of
the radial pattern is at the point you drag. Finally, Drag is a move, but
the range is only a single point.
NOTE
The tools on the Modify menu are grouped by movement (Move,
Rotate, etc.)
Falloff Meanings
None None means no falloff. Thus, your basic Move, Rotate,
Size, and Stretch tools are set to this by default.
Linear Linear makes the effect falloff along a linear axis, so it is
the default for Shear, Twist, Taper1, and Taper2.
Point Point means falloff is immediate around a point, so you
can move only a single point. This mode is used by Drag.
Point Radial Point Radial is similar to Radial except that the center of
the falloff is at the point being dragged. DragNet uses this
setting.
Polygon Polygon means falloff is immediate around a polygon, so
you can move only a single polygon.
Radial Radial means the effect will fall off in a radial pattern (in
a cylindrical or spherical shape), so it is the default for
Magnet, Vortex, Pole1, and Pole2.
L I G H T WAV E 3 D 7 23.3
Weight Map Weight Map uses the selected Weight map for the falloff.
Unweighted points will not move at all, while heavily
weighted points will move the most. Negatively weighted
points will move inversely. This allows you to use an
irregularly shaped falloff. (See Chapter 28.)
NOTE
Interestingly, you can actually rotate a single point using the Rotate
tool and Falloff set to Point; however, it will have no meaningful
effect.
To use the tool in the Automatic mode via the numeric panel (by
clicking the Apply button), select the perpendicular Axis. (If the axis has
not been set either manually or by a previous mouse-based modify
operation, the Axis setting is used to compute the falloff when you click
Apply.)
HINT
Using the Automatic range is the simplest method.Thus, if possible
model your object along one of the three axes.
The XYZ positions of the starting and ending points are reflected in
the numeric panel. You can edit these values, if necessary.
In the image that follows, we used the Bend tool. Notice the impact of
the fixed range. Geometry from the wide end of the axis tree and beyond
is 100 percent impacted by the tool. The opposite end is not affected at
all, with a falloff in between.
L I G H T WAV E 3 D 7 23.5
You can adjust how the effect falls off using the two sliders, which act
like tension spline controls for the beginning (upper slider) and ending
(lower slider). You can quickly set up some common curves by selecting
from the Preset pop-up menu. The graph on the numeric panel, as well
23.6 CHAPTER TWENTY-THREE: MODIFYING GEOMETRY
as the outer edges of the axis tree (when using a fixed range) gives you a
visual picture of the falloff. You can also use the UP and DOWN ARROWKEYS
to cycle through the Preset selection.
Axis tree
NOTE
The falloff settings apply equally to an automatic range.
NOTE
The Bend tool does not have falloff options.
something other than directly along the X, Y, or Z axis. Thus, you can
align your object so that it is perpendicular in the viewport and just use
the Automatic Range.
Automatic range
2 Resize the initial area as needed by dragging the outline edge handles
with your RMB or reposition by dragging the center handle.
3 To limit the depth of the area, drag out the outline in a different
viewport. The amount of influence is strongest at the center and
diminishes towards the edges. Polygons with all points outside of the
area will not be affected.
L I G H T WAV E 3 D 7 23.9
NOTE
Creating the radial-falloff influence area is similar to creating a Box
primitive, particularly in a perspective viewport.
SYMMETRICAL EDITING
The Symmetry mode (Symmetry button, located along bottom edge)
not only works on selection, but also on editing. Operations on the
positive side of the X axis also inversely affect the negative side of the X
axis. When this mode is active, your object is theoretically split in half at
X=0.
Generally, you should perform all of your edits on the positive side of
the X axis when using Symmetry. Using the negative side may lead to
unpredictable results.
If you get unpredictable results, make sure the negative-side
geometry is exactly the mirror of the positive-side geometry with X=0 as
23.10 CHAPTER TWENTY-THREE: MODIFYING GEOMETRY
the center point. If the negative-side geometry is the slightest bit off, it
will not be affected. Generally speaking, this mode was meant to be used
where the geometry to the left and right of X=0 mirror each other.
(However, all of the geometry does not need to be a mirror image, only
the portion you want to work on symmetrically.)
NOTE
The Fit Selected command (SHIFT + A) respects symmetry. If both
sides of an object are selected and Symmetry is active, then only one-
half of the selection is used to compute the fit.
3 Hold the CTRL key before you drag to constrain the movement along
one of the axes.
NOTE
To directly set a point’s location, see Chapter 27, “Point Information.”
If you set Drag Set to One Point on the numeric panel, only the single
point will move. If you choose Connected Points, points that are
connected to the point being dragged will also move. If you choose All
23.12 CHAPTER TWENTY-THREE: MODIFYING GEOMETRY
Points, all points will move. As with other tools, you can use selection to
limit which points are affected. Snap makes it easy to manipulate
unconnected parts without having to make explicit selections.
With View Alignment, points will be snapped to approximately align
with the other points along an axis perpendicular to the viewport, but
not fully in three dimensions.
NOTE
Although this tool works on individual points, selecting polygons and
working in the Polygon Edit mode will limit its effect to points that
share a vertex with the selected polygons.
The influence area is defined by the Radius around the initial pointer
position. You can graphically set this by dragging out a circle with your
RMB.
The Offset X, Y, and Z values on the numeric panel reflect the amount
of movement along those axes for the tool’s last operation. You can edit
the values and then click the Apply button to apply them, which you can
do multiple times.
The Offset X, Y, and Z values on the numeric panel will reflect the
amount of movement along those axes for the tool’s last operation. You
can edit the values and then click the Apply button to apply them, which
you can do multiple times.
L I G H T WAV E 3 D 7 23.15
The information display tells you how much Offset you applied along
two of the three axes, depending on the view you edit in. Hold the CTRL
key down while dragging to constrain the shear to your initial dragging
axis.
The Offset X, Y, and Z values on the numeric panel will reflect the
amount of movement along those axes for the tool’s last operation.
23.16 CHAPTER TWENTY-THREE: MODIFYING GEOMETRY
Center Data
The Center Data command (Modify > Move: Center) centers the
contents of the foreground layer(s) around the Origin (i.e., 0, 0, 0).
Center1D
The Center1D command (Modify > Move: Center1D) is similar to
Center, except a requester will appear that lets you center along a single
axis. The center of the object is placed at the 0 position for the selected
Axis.
Rest_On_Ground
The Rest_On_Ground command (Modify > Move: Rest_On_Ground)
will move selected polygons so that they rest on a defined ground plane,
that is, where X, Y, or Z equals 0.
The Rest Axis is the axis perpendicular to the plane you want the
object to rest on. You may also Center the object on any of the axes. The
L I G H T WAV E 3 D 7 23.17
Sense option rests the object on the positive (+) side of the plane or the
negative (-) side. The default setting would be ideal for, say, centering a
vehicle around the Origin and placing it so it sits flat on the Y axis plane.
Aligner
Aligner will align geometry not only with axes, but also other
geometry. The Mode setting determines what type of alignment you
want.
The World mode will align geometry in the foreground to the X, Y and
Z axes. The c setting will center on the axis. The minus (-) or plus (+)
setting will place the geometry on the negative or positive side of the
axis. Off disables that axis. So if you had a “floor” at Y = 0 and you
wanted the object centered, but resting on this floor, set the Z and X
axes to c and the Y axis to +.
In the F.G.->B.G. mode, the foreground is aligned to the background.
This mode uses a bounding box around all of the geometry in the
reference layer (the background). You can center or position on the
negative or positive side of the reference. The -+ setting will align the
right edge of the geometry with the right edge of the reference layer. The
+- setting will align the left edge of the geometry with the right edge of
the reference layer. You may also scale the geometry to the reference
layer. Select the axis or axes to scale using the Scale Axis pop-up menu.
The B.G.->F.G. mode works just like F.G.->B.G., but uses the
foreground as the reference for the background.
The Absolute mode works like the World mode except you can
numerically define where the center is. In other words, you can make it
something other than 0, 0, 0.
23.18 CHAPTER TWENTY-THREE: MODIFYING GEOMETRY
HINT
In any viewport, pressing the R key will rotate an object clockwise 90
degrees around a perpendicular axis located at the current mouse
pointer location.
The information display tells you the Angle of bending, that is, the
number of degrees you bent the object. Hold the CTRL key while dragging
to constrain movement to increments of 15 degrees—this makes it much
easier to bend along a single axis.
The Angle value on the numeric panel will reflect the degrees of
rotation.
The information display tells you the Angle of twisting, that is, how
many degrees you twisted. Hold the CTRL key down while dragging to
twist in increments of 15 degrees.
The Angle value on the numeric panel reflects the degrees of
rotation. The Axis buttons relate to the rotational axis. If you use an
arbitrary axis (i.e., twist in a perspective viewport), no Axis buttons are
selected. The Center X, Y, and Z values indicate the center point of
rotation, through which the axis runs.
HINT
You might use Vortex to create a swirl on an ice cream cone, a
whirlpool in an ocean, or a cosmic whorl of stars.
L I G H T WAV E 3 D 7 23.21
Dangle
Dangle will rotate a layer or selection relative to a rotation center. The
Reference is what determines the axes used for rotation. Selection is a
bounding box around the selected geometry, World is the Origin, and
B.G. Layer is a bounding box around the background layer geometry.
23.22 CHAPTER TWENTY-THREE: MODIFYING GEOMETRY
Dangle
RotateAnyAxis
The RotateAnyAxis command (Modify > Rotate: RotateAnyAxis) lets
you rotate the contents of a layer around an arbitrary axis defined by a
two-point polygon in the background layer. The rotation is centered on
the axis point nearest to the Origin.
RotateHPB
The RotateHPB command (Modify > Rotate: RotateHPB) lets you
rotate the contents of a layer using heading, pitch, and bank values, like
in Layout.
Rotate-About-Normal
The Rotate-About-Normal command (Modify > Rotate: Rotate-About-
Normal) will rotate selected polygons using the surface normal of the
first selected polygon as the perpendicular axis of rotation.
Rotate-Arbitrary-Axis
The Rotate-Arbitrary-Axis command (Modify > Rotate: Rotate-
Arbitrary-Axis) will rotate selected polygons around an arbitrary axis
defined by a two-point polygon in the background layer.
Rotate-To-Ground
The Rotate-To-Ground command (Modify > Rotate: Rotate-To-
Ground) will rotate and move selected polygons to a defined ground
plane based on the first polygon selected. The Rest Axis is the axis
perpendicular to the plane you want the object to rest on. The Sense
23.24 CHAPTER TWENTY-THREE: MODIFYING GEOMETRY
option rests the object on the positive (+) side of the plane or the
negative (-) side.
Rotate-To-Object
The Rotate-To-Object command (Modify > Rotate: Rotate-To-Object)
will rotate relative to a polygon. The first selected polygon defines the
target orientation. The second and any other selected polygons will
rotate and align to the first selected polygon.
To stretch an object:
Select the Stretch tool (Modify > Stretch: Stretch) and drag your
mouse right or left to increase or decrease the size along the horizontal
axis. Moving up or down will increase or decrease the size along the
vertical axis. The center of the effect is determined by the Action Center
setting, discussed previously. The information display will tell you the
scaling factor you have applied. Hold the CTRL key while dragging to
constrain movement along the initial dragging axis.
Tapering Objects
The Taper Evenly tool (Modify > Stretch: Taper 1) will resize an
object at one end. You could use this tool to turn a box into a pyramid.
Think of Taper Evenly as Size with axial falloff. That is, the strength of
the sizing influence is not equal across the object, but gradually falls off
along a selected axis.
To use the Taper Evenly tool:
Select Modify > Stretch: Taper 1 and drag your LMB left/right to
apply the scaling. The center of the effect is determined by the Action
Center setting, discussed previously.
The information display tells you the Scale factor you applied.
The Factor value on the numeric panel reflects the amount of scaling.
The Center X, Y, and Z values indicate the center point of scaling.
L I G H T WAV E 3 D 7 23.27
Taper Take 2
The Taper tool (Modify > Stretch: Taper 2) is very similar to the
Taper Evenly tool. The difference is you can scale the affected end
independently on the two axes. Basically, Taper is to Taper Evenly, what
Scale is to Size. Think of Taper as Stretch with axial falloff. That is, the
strength of the moving influence is not equal across the object, but
gradually falls off along a selected axis.
To use the Taper tool:
Select Modify > Stretch: Taper 2 and drag your LMB left/right to
apply the scaling horizontally. Drag your LMB down to apply it vertically.
The center of the effect is determined by the Action Center setting,
discussed previously.
The information display tells you the Scale factor you applied along
the two affected axes. Hold the CTRL key down while dragging to
constrain the tapering to your initial dragging axis.
The Factor value on the numeric panel reflects the amount of scaling.
The Center X, Y, and Z values indicate the center point of scaling. You
can edit the values and then click the Apply button to apply them, which
you can do multiple times.
Absolute Size
Absolute Size allows you to scale geometry with great flexibility and
precision. When the Values setting is Independent, the object can be
scaled independently on each axis. If Locked is used, the aspect of the
geometry is maintained—only change one axis value in this mode.
23.30 CHAPTER TWENTY-THREE: MODIFYING GEOMETRY
Absolute Size
Smooth Scaling
A variant of the Stretch tool is the Smooth Scale command (Modify >
Stretch: Sm Scale). This command will scale selected polygons, but
attempt to smooth things out as it scales. No new geometry is added, so
the smoothing is done using existing points and polygons. The Offset
value, editable on the numeric panel, is the exact amount that the object
will increase in size overall; however, due to the smoothing effect, not all
parts will increase this much. Negative numbers are also allowed, which
reverse the effect.
HINT
Smooth Scale is great for use on SubPatch objects. Use it on the
stomach of a figure to give it a beer belly.
L I G H T WAV E 3 D 7 23.31
selected weight map instead. Essentially, it sets the values based on the
reshaped curve. Move them closer to the center axis for negative
weights, farther for positive.
If you activate Make Curve, a curve polygon will be created from the
guide curve when you deselect the tool. Use this to save the guide curve
shape. This curve can be placed in a background layer and loaded into
the guide curve by clicking Get Background Curve.
Click Keep Edit to accept the current changes without resetting the
curve. This is useful if you want a certain curve to be applied in
subsequent operations.
Changing the Curve Points value will resample the curve into more
segments. Note that resampling the curve can change its shape,
particularly if the number is incremented gradually, like with the mini-
slider. If you want a more refined curve that accurately matches the one
you have drawn, enter the new number directly into the field to avoid
the intermediate curves.
CenterStretch
The CenterStretch command (Construct > Utility: Additional >
CenterStretch) will stretch objects in the current layers along one of the
axes about the object’s implied center by a given Factor. The factor and
axis can be specified as a User Command argument (e.g., Y 0.3333), in
which case no requester will appear.
NOTE
Smooth is most effective when Iterations is set to a high value.
HINT
For more drastic smoothing, you might use Metaform (Construct >
Subdivide: Subdivide) instead; however, this tool increases the
number of points and polygons.
23.36 CHAPTER TWENTY-THREE: MODIFYING GEOMETRY
C hapter 24:
Multiplying Geometry
Modeler features some great tools for multiplying your geometry and
automatically creating additional points and polygons. There are tools to
add a bevel, extrude existing geometry, clone polygons, model using
background geometry, create mirror images, and more.
to using the Extrude tool, but there will be no polygon at the position of
the original polygon. When applied to multiple polygons, each polygon
receives its own bevel—even on a double-sided polygon.
Dragging your pointer after activating the tool lets you graphically
place the bevel. Deactivating Bevel or selecting another tool makes the
bevel. Click on an open area of the interface to cancel the bevel before it
is made or use Undo.
Dragging up/down lets you interactively change the Shift amount, the
distance that the selected polygon will move along its surface normal.
On the numeric panel, positive values make the bevel move in the same
direction as the normal. Negative values make it move the opposite
direction.
Dragging left/right lets you interactively change the Inset amount, the
distance that the edges of the polygon will move in the same plane as
the polygon. On the numeric panel, positive values move inward and
negative values move outward.
Drag at an angle to simultaneously change Shift and Inset. Hold the
CTRL key to constrain to Shift or Inset, depending on which direction you
drag initially.
If you select polygon(s), the top polygon will remain selected so you
can perform bevel operations one after another. Click your RMB to
accept the current bevel and begin a new bevel operation. You can also
press the B key twice to make and start a new bevel.
L I G H T WAV E 3 D 7 24.3
HINT
To avoid negative random values, make sure the +/- value is always less
than or equal to the related Inset or Shift value.
Inner is the default Edges setting and bevels the polygon inward and
forward along the surface normal. Outer will bevel outward and
backward; however, the original polygon does not move and the new
beveled edges extend away from the surface normal. This option
reverses the mouse movement effects. In most cases, you use Inner.
By default, the surface name of the source polygon is used for the
new geometry. If you select New Surface, you can enter a surface name
(even an existing one) in the input field. You can change this setting
anytime before accepting the bevel.
24.4 C H A P T E R T W E N T Y - F O U R : M U LT I P LY I N G G E O M E T R Y
NOTE
Note that the selected polygon retains its surface name; only the new
edge polygons receive the defined name.
Beveling Tips
• After performing a bevel, the selected polygon remains selected. To
accentuate the beveled edge when the surface uses the Smoothing
surface option, perform a quick cut and paste to separate the
selected (top) polygon from the added sides. This action precludes
LightWave from smoothing over the beveled edge. You may also want
to cut and paste the original polygon (before performing the bevel).
Make sure you do not merge points after doing this!
Left: Polygons not separated. Right: Starting and top polygons separated
• If you use the same surface, which uses Smoothing, and the geometry
goes from straight to curved, you may want to separate the polygons
(with a cut-and-paste) at the transition point to get a clean edge.
• Cut and paste a polygon (like one side of a box) away from its host
and bevel it a very small amount. Then, cut and paste the top
polygon as well. This makes a nice clean edge that catches specular
glints.
• When you bevel polygons with sharp edges, you can often run into
the problem of points being too close at the corners—very common
when you bevel text characters. One solution is to delete
unnecessary points near the corners prior to beveling. Don’t be too
scared about deleting too many points; the change is usually so slight
that no one will notice, particularly if the text is animated.
NOTE
Sometimes you also need to manually drag points on the new polygon
away from the corner.
24.6 C H A P T E R T W E N T Y - F O U R : M U LT I P LY I N G G E O M E T R Y
• Another corner-fixing trick is to bevel out instead of in. This has the
benefit of not requiring you to mess with any points, but it affects the
spacing between characters, if you are working with text. For this, use
the Outer setting for Edges in the Bevel numeric panel.
The initial dragging point is not significant, only the distance and
direction matter. In fact, when you release the mouse button, the axis
will reposition itself starting at the object. You can further manipulate
the axis by dragging its end in any viewport.
When you are satisfied, simply click Multiply > Extend: Extrude again
(or select another tool). To reset, click a non-active part of the interface
or click Undo.
The numeric panel for Extrude defines the relative XYZ coordinates
for the end of the axis in the Extent fields. You can change the number of
Sides created on the panel, which can be useful for multi-segmented
items like snakes, or objects you wish to bend or twist.
L I G H T WAV E 3 D 7 24.7
NOTE
With this tool, polygons may end up flipped the wrong way.To correct
them, simply hit the F key.
If you wish to change the number of sides in the lathed object (like
the number of slices in a pie), you can use the LEFT and RIGHT ARROWKEYS.
If you’d prefer to lathe less than a full 360 degrees, you can drag the
handles as indicated in the following illustration. (Note: If the two
handles are overlapped, you can still drag to separate them.)
24.8 C H A P T E R T W E N T Y - F O U R : M U LT I P LY I N G G E O M E T R Y
You can also open the Lathe tool’s numeric requester to numerically
change settings. The Start Angle and End Angle fields let you enter the
degree of lathing, Sides sets the number of sides, and Offset will shift the
shape along the lathe axis. The Center values define the center of
rotation coordinates.
HINT
To create a coiled spring: create a disc with, say, a one meter diameter.
Select Lathe and place the axis about one meter to one side of the
disc.Then, open the numeric requester and set the End Angle to 720
degrees (two full rotations), Sides to 48, and Offset to 2m.
HINT
If you have multiple profiles in different layers, you can apply them one
after another by selecting them (one at a time) as the background
layer while using Rail Bevel.
HINT
To achieve what amounts to a group-bevel,—where the selected
polygons are treated as one instead of individually—use Smooth
Shift with an Offset of 0.Then, manually move the polygons (which
will still be selected).
L I G H T WAV E 3 D 7 24.11
Enter the First and Last frames of the motion path you wish to use
(the values default to the entire length of the path). Step indicates how
many segments to clone in terms of frames (a Step value of one will
create one segment for each frame). So a motion path that takes 30
frames with a Step of 1 will have 30 segments. The same motion path
with a Step of 2 will have 15 segments.
Left: Object motion path in Layout. Right: Flat box extruded along same path
NOTE
The motion path for an item in Layout can be saved by selecting it and
then choosing File > Save > Save Motion File.
Single Curve
The Rail Extrude: Single dialog will appear when a single curve is in
the background.
Segments Segments is the number of segments in the resulting
object. Select Automatic to distribute a number of
segments along the rail curve (based on the Curve
Divisions setting on the General Options panel)
according to the curve’s knot (point) spacing.
Select Uniform Lengths to distribute some number of
segments (which you specify) evenly along the length of
the entire curve. No matter what the knot spacing is, the
segments will remain evenly spaced.
Select Uniform Knots to distribute some number of
segments (which you specify) evenly between the knots
L I G H T WAV E 3 D 7 24.13
A one-rail example
Multiple Curves
The Rail Extrude: Multiple dialog will appear when multiple curves
are in the background. In practice, one curve will act as the main cloning
curve and the other(s) act as shaping curves. The effect of the shaping
curves is determined by the distance from the main curve. However, you
may change the effect by moving the polygons closer or farther away
from any of the curves.
Segments Segments is the number of segments in the resulting
object. Select Automatic to distribute a number of
segments along the rail curve, based on the Curve
Divisions setting on the General Options panel. If you
also select Knot, segments are distributed with regard to
the curve’s knot (point) spacing. If you use Length, knot
spacing is disregarded.
24.14 C H A P T E R T W E N T Y - F O U R : M U LT I P LY I N G G E O M E T R Y
Left: Disc and two curves in background. Right: Result with Scaling off
L I G H T WAV E 3 D 7 24.15
Left: Extender executed on selected points. Right: Cloned points moved away from original positions
The SeaShellTool
The SeaShell tool (Multiply > Extend: SeaShellTool) lets you
interactively make seashell shapes. Essentially, this is like using the
Lathe with a scaling factor on an object.
24.16 C H A P T E R T W E N T Y - F O U R : M U LT I P LY I N G G E O M E T R Y
Open the numeric panel to set options. Axis is the perpendicular axis
around which the shell is twisted. # of Loops is the number of times the
source polygon is twisted fully. Sides per Loop is the number of
segments to use per loop. Shift per Loop controls the vertical shifting of
the loop. Scale per Loop is the scaling factor achieved after each loop.
SeaShell also has automatic UV creation options. Like any tool, you must
deselect it to make your object.
HINT
To get a twist effect, rotate the source or target polygon a little.
NOTE
As with the morphing function in Layout, the Morph Polygons
command is dependent on point order. As such, you should create the
source and target from the same polygon.You will probably need to flip
some polygons after using this command.
ways. Like the drilling tools, you must have an object in the background
layer. The major distinction of Boolean is that it treats the foreground
object as a solid mass and thus creates inside surfaces along cut edges.
With Boolean, some portion of the foreground and background
objects must physically overlap in 3D space.
Union Union joins the background layer with the foreground
layer, taking the solid objects and combining them into a
single object. Interior faces are removed and no new
polygons or surfaces are created; therefore, all surfaces
will retain their original names.To work properly, both
objects must be closed 3D solids.
Now say there are two spheres made of single-sided polygons, one
sphere being smaller than the other, with the smaller one inside the
other (normals facing in). You pass through the first polygon—from air
to solid—then through a second polygon—from solid back to air. You
would now be inside a hollow core inside the inner sphere. A Boolean
knife slicing through this sphere would leave a hollow core.
NOTE
Boolean will usually not operate as expected if the foreground and
background objects are both double-sided.
NOTE
If your drill bit is an open curve, Modeler will treat it as a closed curve
with its endpoints joined.
Stencil The Stencil option stencils the drill bit’s shape onto any
intersecting polygons. It also names all of the polygons that
fall within the bit’s shape. You can either enter a surface
name in the field or select an existing name from the pop-up
menu.
To drill an object:
1 Place the target object in a layer.
2 Place your bit object in another layer and put the target object in the
background.
3 Position the bit object as desired. Use the viewport whose
perpendicular axis (i.e., the axis you can’t affect) is the one you want
to drill along. For example, if you wanted to drill along the Z axis,
position the bit object in the Back type viewport.
24.26 C H A P T E R T W E N T Y - F O U R : M U LT I P LY I N G G E O M E T R Y
4 Swap foreground and background layers using the apostrophe key (‘)
shortcut.
5 Choose Multiply > Combine: Drill.
6 Select the drilling Axis and the type of drilling Operation. Click OK.
NOTE
The objects in the foreground and background layers must physically
overlap for the tool to work properly.They cannot be just lined up on
an axis.
NOTE
Both the drill bit and the item to be drilled must be closed solids. A
hemisphere with one open side, or a hollow tube, would not qualify,
but a closed hemisphere or a tube with sealed ends would.
Patches Menu
The commands in the Multiply > Combine: Patches menu are covered
in Chapter 29.
L I G H T WAV E 3 D 7 24.27
When you are satisfied, simply click Multiply > Duplicate: Mirror
again (or select another tool). To reset, click a non-active part of the
interface or click Undo.
NOTE
If adjusting the axis rotation handle only resizes the fence, try adjusting
the handle in the perspective view.
The numeric panel defines the XYZ coordinates of the Center point
(where the position handle is). The Axis, if any, is the axis perpendicular
to the fence. If the Merge Points option is active, any overlapping points
are merged automatically. Use this if you are mirroring two halves of an
object together.
Paste Tool
The Paste tool (Multiply > Duplicate: Paste) lets you interactively
paste whatever is in Modeler’s copy buffer (i.e., something you
previously cut or copied). Once you click in a viewport, you can position
the geometry by dragging your mouse. Like most tools, drop it or select
another to make the geometry, or click your RMB to create the geometry
without dropping the tool.
Using the numeric panel, you can even scale the size of the geometry.
L I G H T WAV E 3 D 7 24.29
NOTE
The Paste tool has no effect on the actual contents of the copy buffer.
NOTE
Using Automatic on a 2-D object will cause the copies to be on top
of each other along the missing dimension axis.
Radial Array
Radial Array creates an array of geometry around the Center position
using the specified Axis. The Count setting sets the number in the final
array.
Radial Array
of distance, rotation, and scaling. You can create a spiral staircase out of
a single step, or a wood screw out of a triangular polygon outline, for
example.
NOTE
The effect is progressive, so the change is applied to each clone based
on the previous clone. So, for example, with scaling, the copies will get
progressively larger or smaller.
The Center fields define the coordinates to use as the center point,
around which the operation takes place.
HINT
If you plan to clone with rotation, try to build your base object so that
the rotation can happen around the Origin whenever possible.
HINT
To evenly space objects around an axis, take the number of total
objects you want to end up with and divide it into 360. (You can even
enter the formula into the input field.) This gives you the incremental
rotation.Then set the Number of Clones to the total objects minus
one.
Left: Object motion path in Layout. Right: Flat box cloned along same path
L I G H T WAV E 3 D 7 24.33
Left: Starting object in foreground and curve in background. Right: Result with Automatic mode
Left: Disc and two curves in background. Right: Result with Scaling on
Symmetrize
Point-Clone-Plus
The Point-Clone-Plus command (Multiply > Duplicate: Point-Clone-
Plus+) will clone objects in the foreground to the locations of points in
the background. You can randomize the rotation, scale, and centering
independently for every axis between two values. Random Size will
randomly change the overall scaling of objects. The XYZ Axis options
specify whether the objects should be centered on the points or flush on
one side or another. To specify static values, enter the same number in
the Min and Max fields.
L I G H T WAV E 3 D 7 24.35
This command is great for cloning and placing, say, tree objects on a
landscape or putting hair on a head.
24.36 C H A P T E R T W E N T Y - F O U R : M U LT I P LY I N G G E O M E T R Y
chapter25
Constructing Geometry
L I G H T WAV E 3 D 7 25.1
C hapter 25:
Constructing Geometry
So far, we’ve covered modeling tools that create an object by adding,
rearranging and duplicating points/polygons. In this chapter we will
cover some basic point and polygon maintenance tools as well as some
time-saving ways to add and remove points and polygons. We’ll also
discuss some tools where you can use other objects and curves as
modeling tools.
NOTE
Geometry cut (or copied) to the memory buffer loses its association
with geometry it is cut away from, even when it is pasted back in.
NOTE
For interactive pasting, use the Paste tool (Multiply > Duplicate:
Paste) discussed in Chapter 24.
25.2 CHAPTER TWENTY-FIVE: CONSTRUCTING GEOMETRY
HINT
An easy way to remember this keyboard shortcut is to think of it as
“killing” the polygons.
Left: Overlapping points cause visible seam. Right:After merging points there is no visible seam or panty line
HINT
To speed the operation, select the points you wish to merge before
using this command. (It’s OK if you select more than you need.)
L I G H T WAV E 3 D 7 25.5
NOTE
See also the Weld command, in Chapter 26.
COLLAPSE POLYGONS
The Collapse Polygons command (Construct > Reduce: Collapse Pols)
replaces selected polygons with a single point at their average position.
It is like moving all of the points for the selected polygons to their center
and then merging the points.
Introduction
Many 3D models contain a large number of polygons, especially
algorithmically created models (such as those created by implicit
surface construction techniques) and models created with 3D scanners
and digitizers. Polygon reduction in these types of models is currently a
very active research area in computer graphics. Obviously, rendering 3D
scenes is much faster when the models contain a minimum number of
polygons. Also with the current trend towards sharing 3D worlds over
the Internet using VRML, level of detail models (LOD) are becoming
absolutely necessary for creating worlds in which the user can browse
and interact in a reasonable manner.
This plug-in provides polygon reduction on objects within Modeler.
Only one parameter, the reduction Goal, must be set by the user, the
remaining default values should provide good reduction for many
objects with a high polygon count. However, to get the best results, the
user must understand some of the basic concepts behind the algorithm.
Terminology
The simplification algorithm is based on contractions of vertex pairs.
It supports two types of contractions: edge and non-edge contractions. An
edge contraction occurs when the vertex pair shares an edge. This is the
L I G H T WAV E 3 D 7 25.7
primary type of contraction that occurs during the reduction stage (in
fact, non-edge contractions are turned off by the default parameters).
The following figure shows an example of an edge contraction where
vertex v1 and vertex v2 are joined to form a new vertex v3. Since v1 and
v2 share an edge (highlighted below), one or more triangles will always
be removed during this contraction. In this example, two triangles are
eliminated from the mesh.
Edge Contraction
Non-edge Contractions
WARNING
Always save your objects before you run qemLOSS2!
Using qemLOSS2
Make sure you have an object in the current foreground layer(s) of
Modeler. You also need at least one empty layer, because the existing
object remains unchanged, and the reduced object is placed in the first
available empty layer. Choose Construct > Reduce: qemLOSS2 and you
are presented with the following panel.
L I G H T WAV E 3 D 7 25.9
NOTE
qemLOSS2 ignores any polygon selections and works only on the
entire object in the foreground layer, including any hidden polygons.
Goal lets you set the final number of polygons you would like in the
simplified object. You may enter either a desired polygon count (an
integer such as 1000), or a percent based on the number of polygons
found in the original object (a real number with a percent sign at the
end, such as 65.2%). If you enter a percentage, it will simply calculate the
polygon goal by multiplying that percentage by the total polygon count
in the original object. So 100% will mean no reduction takes place, and
0% means the object will disappear completely.
The first major step qemLOSS2 takes is to triple your polygons, which
will increase the polygon count, if your model contains non-triangular
polygons. A Goal of 100%, however, will reduce the number of polygons
back to the original number, but now they will all be triangles. If that
reduction doesn't preserve your model's shape well enough, don't
hesitate to try percentages over 100%, those models will still be smaller
than the tripled original.
NOTE
Other parameter settings may cause the algorithm to fail to reach the
reduction goal.
by merging the edge points together before running qemLOSS2. You can
always just cut and paste the polygons afterward, if the separation was
essential.
Pair Selection Tolerance determines whether non-edge contractions
are performed during the simplification process. If this value is 0, non-
edge contractions are turned off, and only edge contractions will take
place during the simplification. Any value greater than 0 will cause non-
edge contractions to be possible during the reduction. If you enter a
negative number, qemLOSS2 will automatically use 5% of the radius of
the object's bounding sphere. This is the value you should use if you
want to start experimenting with this parameter.
Take care when changing this value to anything but 0! It is strongly
recommended that you leave this at 0 for all complex models with lots of
polygons. If you use this, first reduce the model to a fairly small polygon
count with it turned off (=0), then reduce the reduction again with a
carefully chosen Pair Selection Tolerance, or better yet, just use a
negative number. It is a very memory intensive operation.
Vertex Placement Policy is best left at Optimal. When a pair of
vertices is contracted, the algorithm must decide where to locate the
new vertex. The algorithm can use any one of the three final options
listed in this selection of buttons. Optimal calculates the new placement
based on the location with the least amount of geometric error. Doesn't
hurt to experiment with these options though.
Sometimes vertex pair contractions do not preserve the orientation
of the faces in certain areas of the contraction, If Preserve Mesh Quality
is changed to Yes, the normal of each neighboring face is compared
before and after the contraction. If the normal flips, the contraction is
penalized greatly by making the geometric error for that contraction
very large (so that contraction will probably never take place). In most
cases, this will not be a problem, and the plug-in will work faster if this
parameter stays set to No. But it's not terribly slow, so it certainly
doesn't hurt to experiment with it.
If you change Polygon Area Weighting to Yes, the area of the triangle
containing the vertex is used to weight the geometric error. This will
cause larger triangles to increase the geometric errors of its vertices, so
it is less likely to be chosen for simplification.
The qemLOSS2 function displays a progress monitor while it creates
the reduced object in the first available empty layer. Here is what
happens: first, the object in the foreground layer(s) is copied to the first
available empty layer, then all its polygons are converted to triangles
using Modeler's Triple command. Next, all vertices and polygons are
converted into the necessary data structures needed for the
simplification routines, and the copied object is subsequently removed.
Once the simplification routine finishes, the reduced polygon object is
placed in the previously empty layer.
L I G H T WAV E 3 D 7 25.11
NOTE
For additional information, check out http://amber.rc.arizona.edu/lw.
Colinear Point Removal deletes points that are still a vertex of a new
polygon. You may set the level of this removal computation. To delete all
points that are no longer a vertex of a polygon, check the Delete Points
box.
25.12 CHAPTER TWENTY-FIVE: CONSTRUCTING GEOMETRY
The other viewports will let you see the line from a different angle
and a small dotted line will be visible that shows you the direction of the
slice. After you have released the mouse button, you can drag the T-
handles at the ends of the line (in any viewport) to reposition them or
drag the center of the line to move the entire line. The tip of the dotted
L I G H T WAV E 3 D 7 25.13
NOTE
You cannot use Subdivide Polygons on polygons with more than four
sides.
Randomizing Options
All Subdivide options let you enter a Fractal factor that will randomly
jitter newly created points. The result is a subdivided object with its
points randomly jittered. A factor of 0 will not jitter points and higher
values will jitter points more.
The jitter radius is a fraction of the edge length, times the Fractal
factor. A factor of 1 jitters the new points by at most 50 percent of the
length of the edge that they will subdivide. A factor of 0.1 is five percent
jitter and a factor of 2 will move points 100 percent of the edge length.
Points added to the center of four-point polygons are jittered a
comparable amount, although the formula for them is more complicated.
25.14 CHAPTER TWENTY-FIVE: CONSTRUCTING GEOMETRY
Using Fractal
Faceted Subdivide
The Faceted option adds more segments to existing polygons, but
doesn’t change the overall shape. Let’s say you made a box, but just
wanted one side to have multiple segments. In this case you could use
Faceted.
Faceted Subdivide
NOTE
Faceted Subdivide works on triangles, like after the Triple command is
used.
Smooth Subdivide
Smooth will subdivide objects that have curved, smoothed, or
rounded areas. Modeler assumes any two polygons are part of a smooth
surface and will extrapolate where subdivided detail should be placed to
maintain (even enhance) the curvature of the original form.
The value entered in the Max Smoothing Angle field is used to
determine whether adjoining polygons should be smoothed or not.
Adjacent polygons whose normals form an angle above this value will
not be smoothly subdivided. The default is 89.5 degrees, so polygons at
right angles or sharper will not be affected.
L I G H T WAV E 3 D 7 25.15
Smooth Subdivide
Smooth Subdivide
Metaform is another method of subdividing. The object will be
smoothed dramatically, with the original object acting as kind of a
bounding box template for a slightly smaller, more rounded form.
Metaform is very useful for creating smooth organic-looking objects out
of simple geometric structures.
Smooth Subdivide
Adjoining polygons with surface normal angles greater than the Max
Smoothing Angle will not be subdivided in a smooth manner. The
default angle is 179 degrees, so only polygons that are nearly parallel
with each other are not affected.
NOTE
Smooth and Metaform can achieve similar results using the same
maximum smoothing angle; however, Smooth will tend to smooth
outward, and make a slightly larger object. Metaform, on the other
hand, smoothes inward, and make a more compact object.
Bandsaw
The operation continues all the way around until it hits itself or a
non-four-point polygon. The Edge to select option determines the
direction. With a quad, there are only two ways and these are described
as Even or Odd. Select Auto for BandSaw to pick the direction for you.
By default, there will be a single default slice right in the center. This
is the positioning of the slice that will be made on the polygons. You can
move it by selecting the Edit mode and dragging it with your mouse. You
can also add more slices in the Add mode or remove them in the Delete
mode.
Uniform equalizes the spacing between slices. Mirror will mirror the
selected slice across the center. Reverse inverts the order—handy if you
placed the slice(s) on the wrong side.
To actually perform the slice, you need to activate the Enable divide
option. However, you can also use BandSaw to just select the band of
polygons by not activating this option.
Splitting polygons
HINT
To select only non-planar polygons, use the Polygon Statistics panel
(Modeler > Windows > Statistics).
NOTE
Also see the Fast-Triple-Fan and Fast-Triple-Traverse commands
discussed later.
Triple Fan
Triple Traverse
SUBPATCHES
See Chapter 29.
MAKE... COMMANDS
The Make... commands in the Construct > Convert: menu group are
used to create skelegons (see Chapter 10) and Meta-primitives (see
Chapter 29) from normal geometry.
5 Once you release the mouse button, you can reposition the vertex or
either end by dragging them. To reset, click in a non-active part of the
interface.
NOTE
If you place your mouse pointer on top of the starting point in step 4,
the starting point will become the other end to the angle and you will
drag out the vertex.
Both of these tools can be used in any viewport to measure any angle
in 3D space.
BoundingBox dialog
PointCenter dialog
LSCRIPT
To learn how to create and edit LScripts, see the documentation
included on the CD. They are treated as plug-ins and can be installed in
the same manner plug-ins are. You can run them just like any other plug-
in command.
ADDITIONAL
Plug-in and LScript commands that do not have a default menu
location will appear in the catchall Construct > Utility: Additional pop-
up menu.
chapter26
Detailing Geometry
L I G H T WAV E 3 D 7 26.1
C hapter 26:
Detailing Geometry
The Detail menu contains a variety of commands. Many are covered
elsewhere in the manual.
LAYER SETTINGS
Choose Detail > Layers: Layer Settings to bring up a dialog to set the
current layer name and parent. (See Chapter 20 for more information.)
Layer Settings
FLATTEN LAYERS
Choose Detail > Layers: Flatten Layers to flatten multiple foreground
layers into a single layer in one step.
CHANGE SURFACE
Choose Detail > Polygons: Surface to bring up the Change Surface
dialog to set the surface name and basic attributes for the selected
polygons. (See Chapter 31 for more information.)
26.2 C H A P T E R T W E N T Y - S I X : D E TA I L I N G G E O M E T R Y
FLIP POLYGONS
Often as you create polygons or use various tools with single-sided
polygons, their surface normals will point in the wrong direction.
Modeler provides some tools to help you change their direction.
To flip polygons:
Simply select the polygon(s) and choose Detail > Polygons: Flip. This
action reverses the direction of the surface normal for the selected
polygons.
NOTE
Polygons facing the wrong direction is a common problem and one you
should get in the habit of checking for regularly.
SPIN QUADS
The Spin Quads command (Detail > Polygons: Spin Quads) can be
applied to adjacent four-point polygons (i.e., quads) that share an edge.
It merges the two polygons together and then splits them using a
different set of opposing polygons. If you apply Spin Quads three times,
you’ll be right back where you started.
L I G H T WAV E 3 D 7 26.3
ALIGNING POLYGONS
Modeler has another command called Align Polygons (Detail >
Polygons: Align) that attempts to automatically make all polygons face
the correct direction. After using, you may still need to use the Flip
Polygons command (Detail > Polygons: Flip) before you are done.
26.4 C H A P T E R T W E N T Y - S I X : D E TA I L I N G G E O M E T R Y
To align polygons:
1 Select an area that includes the polygons needing to be flipped, as
well as a large number of polygons facing the correct direction.
Selecting polygons that share points and edges helps.
2 Choose Detail > Polygons: Align. Verify that the polygons were
flipped as desired. By its very nature, this command sometimes
requires some trial and error.
MAKE 2 SIDED
Sometimes you’ll actually want double-sided polygons, like when you
need to go inside a hollow object. Most of the time, you can get away
with simply using the Double-sided surface attribute on the Basic tab of
the Surface Editor. However, if you need to actually model the double-
sided polygons, it is pretty simple. Just choose Detail > Polygons: Make-
2 Sided.
It is also possible to make double-sided polygons manually using the
following procedure:
1 Select the target polygons (even if it is the entire object).
2 Copy (C) the selection.
3 Paste (v) the selection.
4 Choose Detail > Polygons: Flip to flip the (still) selected polygons.
L I G H T WAV E 3 D 7 26.5
SET VALUE
The Set Value command (Detail > Points: Set Value) sets the X, Y, or Z
position values for the selected points or polygons. This is a great tool
for aligning all of the points along a strict axis. You may find a need for
this when you are trying to merge to halves of a mirrored object together
and are having trouble merging all points along the mirroring axis.
WELDING COMMANDS
The Weld command (Detail > Points: Weld) is similar to the Merge
Points command (see Chapter 25) except the selected points are welded
to the last point selected.
26.6 C H A P T E R T W E N T Y - S I X : D E TA I L I N G G E O M E T R Y
CURVE COMMANDS
Curves and their special editing tools are discussed in Chapter 22.
C hapter 27:
Display Menu
The Display menu contains functions to help you in adjusting
viewports, selecting geometry, and changing visibility options.
Zooming
Modeler provides many ways to zoom around your viewports. You’re
gonna zoom, zoom, zooma zoom. First, you can adjust viewport
magnification by pressing the period key (.) to zoom in or the comma
key (,) to zoom out. (These are shortcuts for Display > Viewports: Zoom
In / Zoom Out.) Holding the SHIFT key while pressing either key (i.e., the
> and < keys) will double the zoom amount.
Another way to adjust magnification is to use the Zoom tool (Display
> Viewports: Zoom). You can drag out a rectangular box using the mouse
and the view will automatically zoom in so the rectangular box fills the
view window.
The Magnify tool (Display > Viewports: Magnify) provides yet
another way to interactively zoom in and out. This feature lets you
smoothly zoom in or out on your pointer position by dragging your
mouse left and right.
If you have the titlebars visible, you can drag the zoom drag button
to zoom.
Panning
Each viewport is a window to a larger world. You can pan the
viewport beneath your mouse by using the ARROW keys—one grid square
for each press. Holding the SHIFT key will move the view four grid
squares. Holding the ALT key will nudge by one-tenth of a grid square or
the (Fixed) Snap Value amount on the Units tab of the Display Options
panel (Display > Viewports: View Options), if that option is active. ALT +
SHIFT will nudge ten times this amount. (It may help you to think of this
as moving a window around as opposed to moving the object.)
You may also pan a viewport by holding the ALT key down and
dragging a viewport. (This feature is also activated with the Pan tool
(Display > Viewports: Pan).) If you have the titlebars visible, you can
drag the move drag button to pan.
Press SHIFT + A (or choose Display > Viewports: Fit Selected) to fit
only the selected parts of an object into all viewports.
The Fit One View command (CTRL + A) will fit the object in the
viewport under the mouse pointer into that viewport.
Pressing the G key will center your view around the mouse pointer.
This is a very quick way to maneuver around. Remember this shortcut!
NOTE
Other viewports will also change to stay in sync with the window you
are changing (unless they are Center/Zoom independent, discussed
later).
VIEW OPTIONS
Modeler’s interface is highly configurable, so you can set things up to
be most efficient for different users or different uses. You can change the
arrangement of viewports as well as change the display characteristics
for each viewport independently. Choose Display > Viewports: View
Options to bring up the Display Options panel.
If you want to set up your own custom layout, make a selection from
the Layout pop-up menu. The icon to the left of the description will give
you an idea of how the viewports will be arranged. Later, you will see
that you have total control over what is in each viewport. In fact, each
Layout option will remember the Viewport settings as they were the last
time that Layout option was used.
Texture Resolution
The Texture Resolution setting determines the resolution to use for
displaying textures in viewports that have their Rendering Style set to
Texture. Higher settings increase the detail of image textures displayed
in viewports, but increase memory usage and display refreshing time.
Perspective Amount
The amount of perspective in the perspective view can be varied by
changing the Perspective Amount slider on the Layout tab. You can go
from a very wide-angle to a flat nearly orthogonal view. The setting is
global and affects all the perspective views the same way.
Background Color
Use the Background Color selector to change the color that appears
in the background for viewports using a shaded display. (See Chapter 3
for information on using color selectors.)
Show Options
The various Show visibility options let you independently set what
you want to see globally in your viewports.
Points Points appear as small dots.
Point Selection
Points appear highlighted when this option is active, if
you select points.
Guides Guides are the dotted-lines that extend from the surface
(patch vertex) to the control points on the cage (if
visible) when you edit a SubPatch object.
NOTE
These visibility options can be overridden independently for each
viewport on the Viewports tab.
27.8 C H A P T E R T W E N T Y - S E V E N : D I S P L AY M E N U
The View Type pop-up menu determines the editing axes you want to
use for the selected region. For the orthogonal settings, the names
generally indicate the viewing perspective. Back (XY), for example, lets
you edit along the X and Y axes. This means you are looking along the Z
axis. Since it is called Back, that means your perspective is from the back
(i.e., negative side) of the Z axis, looking toward the positive side. UV
Texture is an entirely different animal (that is, not a cow). (See Chapter
28 for information on UV Texture maps.)
HINT
Imagine you are manipulating an imaginary ball with your mouse when
you manipulate the Preview window.
27.10 C H A P T E R T W E N T Y - S E V E N : D I S P L AY M E N U
Rendering Style
The Rendering Style pop-up menu determines the style of display
you want to use for the selected region.
Upright Rotation
The Upright Rotation pop-up menu lets you rotate a viewport
clockwise by 0, 90, 180, and 270 degrees.
Titlebar Shortcuts
You can change the View Type and Rendering Style of a viewport
without going to the Display Options panel by using the pop-up menus
on the titlebar. The left-most pop-up shows the current View Type,
clicking it allows you to choose another. The pop-up menu just to its
right—it has only a down arrowhead—lets you choose another
Rendering Style.
Note that if you have UV Texture selected as the View Type, the
Rendering Style pop-up menu will instead list all loaded images. Select
one to load it into the backdrop of that viewport.
Independent Options
The Independent options let you make certain viewport
characteristics independent from other viewports. Changes to the
selected characteristic do not affect that characteristic in other
viewports and vice versa. For example, if a viewport uses Independent
Zoom, zooming in it does not affect the zoom of other viewports. You
must have your pointer over the viewport to affect an independent
L I G H T WAV E 3 D 7 27.13
Independent options
Independent Visibility
The lower portion of the panel contains the independent visibility
options. You can individually select which visibility options are
independent. To use them, you must also activate the Independent
Visibility option. This option lets you quickly enable/disable this feature
without losing the state of each setting.
NOTE
If you are using a UV Texture viewport, you can choose a backdrop
using any loaded image from what is normally the Rendering Style pop-
up menu on the viewport’s titlebar.
From the Presets pop-up menu, you can save the settings for the
selected Viewport to a file by choosing Save Current Backdrop. You can
load this file later using Load Backdrop for any selected Viewport. You
can also save the settings for all viewports by choosing Save All
Backdrops. When this file is loaded later—using Load Backdrop—, the
individual viewport settings are restored.
L I G H T WAV E 3 D 7 27.15
NOTE
The backdrop images for the current default layout for each view
configuration are cached as long as possible. Also, backdrops are not
saved in config files or view presets.
You can also adjust Brightness and Contrast. You can invert the
colors by activating the Invert option. If you want to blend pixels for
closeup work, activate the Pixel Blend option. Image Resolution
determines the accuracy of the displayed image.
Aspect and Video images
The two Center and Size input fields are horizontal (top field) and
vertical (lower field). Clicking Automatic Size will enter values that fit
the defined image into an implied bounding box that surrounds visible
geometry.
If you activate the Fixed Aspect Ratio option, you can enter a frame
aspect ratio in the input field. Then, you need only specify a horizontal
size—the vertical size is computed automatically.
If your images originated from video, you need to account for the
pixel aspect ratio, since video pixels are not square like computer pixels.
For example, a D1 NTSC image is 720 x 486 pixels; however, the frame
aspect ratio is not 1.48 (720/486) as you might expect. The width of a D1
NTSC pixel is 90 percent of the width, that is, a pixel aspect ratio of .9. As
such, the true frame aspect ratio is 1.333 (720/486*.9).
NOTE
The frame aspect ratio of a D1 PAL image is also 1.333
(720/576*1.067).
27.16 C H A P T E R T W E N T Y - S E V E N : D I S P L AY M E N U
If you do not account for this difference, your models may appear
slightly stretched when ultimately viewed on videotape. A way to fix this
is to scale the object after the fact.
Viewport titlebars
Use the Input Device buttons to select the type of input device you
are using.
The Fine Detail Cursor option, when active, makes your
mousepointer use the main crosshair pointer at all times instead of
changing when the various tools and selection functions are used.
The File Dialog and Color Picker pop-up menus let you use custom
LightWave dialogs for file loading/saving and picking colors. (See
Chapter 3 for more information.) Selecting Default will use your standard
system dialogs. The custom dialogs provide many additional features not
available with the standard system dialogs.
L I G H T WAV E 3 D 7 27.17
The Color Format setting determines the scale used where the color
selector appears. Integer uses values 000 to 255, Float uses .00 to 1.00
and Percentage uses 0% to 100%.
The Simple Wireframe Edges option turns off polygon offsetting for
the sketch-like display modes. This may fix display problems on some
videocards. The Simple Wireframe Points setting uses OpenGL's own
points for wireframe points and selected points at a user-specified size.
These points can draw much faster than the standard points.
The Unit System determines the units of measurement that are used
and displayed by the Modeler screen.
SI SI is the International System of Units (SI is the abbreviation of
the French “Le Système International d’Unites.”) Unit
measurements in Modeler will now use a base system of meters.
Grid sizes and distances can be measured in megameters,
kilometers, meters, millimeters, micrometers, and nanometers.
Metric The Metric System is the same as SI with the addition of
centimeters.
English The English System uses miles, feet, and inches.
NOTE
We recommend you use the SI or Metric systems to model objects,
since a system based on 10 is often much easier to use for purposes
such as applying textures and adjusting object movement.
27.18 C H A P T E R T W E N T Y - S E V E N : D I S P L AY M E N U
NOTE
If you use a metric Unit System, you should set the Default Unit to
meters.
Time Format
The Time Format setting allows you to set the display format for time
values, like the Frame Slider Label option on Layout’s General Options
tab of the Preferences panel. If the Hub is active, Layout and Modeler
settings will be kept in sync.
PRESETTING VIEWS
As you work with Modeler you will no doubt find that you use the
viewports in particular view configurations. Luckily, you can customize
Modeler’s display to fit your work habits by assigning workspace view
settings to the keys on your numeric keypad.
To assign views to keys:
1 Turn on your NUMLOCK key.
2 Hold the CTRL key and press one of the numbers 1 through 9 on the
numeric keypad.
You can choose to save either the parameters for a Single Pane (the
viewport beneath your mouse pointer when you activated the function)
or the Whole Window (all viewports). The available options differ
depending on whether you select Single Pane or Whole Window. The
options relate to the corresponding settings on the Display Options
panel. (Note: Mapping Type (Single Pane mode) is called View Type on
the Display Options panel.)
Keys set using Single Pane will apply those changes to the viewport
under your mouse pointer. If your mouse is not over a viewport, all
viewports are affected.
If you name your assignment and select Single Pane, the name
appears in the Presets pop-up menu on the Viewport tab of the Display
Options panel, discussed previously. If you select Whole Window, the
name appears on the Presets pop-up menu on the Layout tab.
27.20 C H A P T E R T W E N T Y - S E V E N : D I S P L AY M E N U
Point Information
Select one or more points and choose Display > Selection: Info to
bring up the Point Info panel. From here you can get detailed information
on individual points and even edit the data on a point-by-point basis.
To change what type of data is being edited for the selected entries,
use the Edit Value pop-up menu. Alternatively, you can select the type of
data with your mouse in the list.
You can have multiple selections, which will show “(mixed)” when the
settings differ for the selected points. Changing settings will affect all
selected points.
The OK button will accept any changes and close the panel. Click
Cancel to forget any changes (even though they are reflected in your
viewports) and close the panel. Deselect will unselect any points
selected on the panel and remove them from the list. Edit All will select
all entries. (You can also select and unselect entries with your mouse.)
Open All will uncollapse all of the entries and show their details. Close
All does the opposite.
Polygon Information
Select one or more polygons and choose Display > Selection: Info to
bring up the Polygon Info panel. From here you can get specific
information about each selected polygon and even edit the data.
NOTE
Polygons that have overlapping points, but don’t share any of those
points, will not be affected. Use the Merge Points command
(Construct > Reduce: Merge Points) to make the edge shared.
GROUPINGS
Polygon Parts
Parts are the polygon version of point selection sets. (One distinction,
however, is that a polygon can be assigned to only one part name, while
a point can be a member of multiple selection sets.) You can quickly
select a user-defined set of polygons by name in much the same way you
can with surface names. This feature operates independently and in
parallel with surface naming.
To name polygon parts:
1 Select a group of polygons.
2 Click Display > Selection: Grouping > Change Part Name. Enter the
desired name in the Name field and click OK.
To select parts:
1 In Polygon Selection mode, choose Modeler > Windows > Statistics
Open/Close to open the Polygon Statistics panel.
L I G H T WAV E 3 D 7 27.25
2 Click on the pop-up menu triangle on the last line in the panel. (If it
isn’t visible, drag the bottom of the panel down.) Select the desired
part name.
3 The selected part’s name will appear on the line. Click the plus sign
(+) to select all of the polygons defined by the part.
Like surfaces, any one polygon can have only one part name.
Therefore, if you create a new part that uses polygons from an
existing part, those polygons will become associated with the new
part only.
SELECTION BY VMAPS
Here are some VMap commands that deal with selection.
Select by Map
The Select by Map command (Display > Selection: Maps > Select by
Map) selects or deselects points that have entries in the chosen Vertex
Map.
Select By Map
Use the command while in Polygon edit mode by simply selecting the
VMap name in the pop-up menu and clicking OK. Any polygon that
includes a point with that VMap is selected. If you select Exclusive, all of
the polygon’s points must use the VMap to be selected.
Normally, the new selection replaces the current selection. To add the
new selection to your current selection, activate Keep Current
Selection.
RADIAL SELECT
Radial selection will select the points that fall within a defined radius.
Origin is the XYZ center of the selection area. Points will be selected if
they fall within the Inner radius and Outer radius.
27.28 C H A P T E R T W E N T Y - S E V E N : D I S P L AY M E N U
Radial Select
To hide a polygon:
Select some polygons (using any of the previously discussed
methods) and then click Display > Visibility: Hide Sel to hide selected
polygons.
You can also hide the unselected polygons by clicking Display >
Visibility: Hide Unsel. Clicking Display > Visibility: Invert will reverse the
hidden states. To reveal hidden polygons, click Display > Visibility:
Unhide.
NOTE
Although you cannot directly affect hidden polygons, you can affect
them if you modify visible polygons that share points.
C hapter 28:
Vertex Maps
As you might expect, every point in an object has independent
position information. Points even have rotational information, although
you normally don’t rotate individual points. A vertex map (VMap) is
additional data that a user can add onto each point in an object. Any
point in an object can have a unique entry (value) for a particular VMap
or no entry at all. The VMap data is all stored in the object file.
Basically, VMaps are to points, what surfaces are to polygons. Like
surfaces, you name your VMaps, which allows you to access them to
perform certain operations. Some VMaps types are designed for special
built-in functions. For example, UV Maps hold texture placement
information. Endomorphs hold offset information for point position.
Weight maps are used more generally, like for bone influence; however,
the SubPatch weight map is used specifically for control-point tension.
If a point has no entry for a particular VMap, the VMap is not
assigned to that point—this map will have holes in it. Note that an
assigned value of 0 is not the same as not having the VMap assigned to
that point. However, some functions that use VMaps consider these two
states to be equal—usually by necessity—essentially filling the holes
with zeros.
VMaps are normally created using the buttons in the lower-right
corner of Modeler. Once the map is created, you can set or edit the
values in the map. Many LightWave commands, however, also have the
ability to create VMaps.
NOTE
VMaps are extra data and will increase your object’s file size.Thus,
depending on the situation, you may be able to minimize the file size by
judiciously assigning VMaps to points.
The pop-up menu also has options to show all vertex maps or to only
show those that are in use in the current object, the default.
VMap Selection
There are two levels of selection. First, one main VMap, regardless of
type, can be selected by clicking on its name in the window (or selecting
it in the pop-up menu in the lower-right corner of the Modeler
interface). Its name will become highlighted. This is used by various
commands that work on any type of Vmap (e.g., Copy VMap and Delete
VMap).
Generally, one VMap from each type (e.g., Weight and Morph) may be
selected by clicking in the Sel column. A checkmark appears for these.
(Note that the main selected VMap is always the selected VMap for its
type.) This selection state is used by tools that only deal with certain
VMaps, like the Airbrush tool.
Selecting VMaps
NOTE
Notwithstanding the Delete Map command, the Clear Map From
Vertices command is still useful since you can clear a map from some
of the points (using the map), without deleting the entire map.
CullMap
The CullMap function (Map > General: Cull Map) selects or deselects
points that have entries in the selected vertex map, if the magnitude of
the map at that point is below the Threshold Magnitude. Activate Clear
Map to remove these points from the VMap.
The magnitude in UV space is given by the square root of U squared
plus V squared. Since UVs are on a scale from 0 to 1, the greatest
magnitude possible would be the square root of 2, or 1.414. Thus, to
select or clear all points from the UV map that are in a certain region of
your texture, you would use this function.
Normalizing Values
You can also normalize a vertex map with the Scale VMap Values
function (Map > General: Normalize Map). The selected VMap values are
scaled to fit between the Minimum and Maximum range. This does not
clip the values.
28.6 CHAPTER TWENTY-EIGHT: VERTEX MAPS
Normal Baker
Normal Baker will store the (normalized) point normal for each vertex
as three numbers into a VMap called PNT_NORMALS. The values, starting
with the first, represent the X, Y and Z directions of the vertex's normal.
WEIGHT MAPS
Here’s a question: how much does a point weigh? Well, you might say
nothing, but you might be wrong. Weights are arbitrary values associated
with object points. These values can be used by built-in functions and
plug-ins. Weights can control the falloff of modeling tools, change the
affect of bones, influence the control point bias in a SubPatch cage, and
much more.
There are two types of weight maps: SubPatch and general purpose.
The SubPatch Weight map lets you create SubPatch objects (see Chapter
29) with much greater control and accuracy without adding complexity
to the cage. General purpose weight maps are used for a variety of
functions, like bone weighting, modeling tool falloff, and so on.
To create a general weight map:
1 Click the Weight map button in the lower-right portion of the
interface, which is marked with the letter W. (Alternatively, you can
choose Map > Weight & Color: New Weight Map and skip to step 3.)
2 In the pop-up menu to the right, select (new).
L I G H T WAV E 3 D 7 28.7
3 Enter a map name in the Name field. If you wish to set the initial
weight value for all points, activate Initial Value and enter the desired
initial value in the input field. Click OK.
Once you create a weight map, you can assign/modify point weight
values. Understand that if you don’t use the initial value option, merely
creating the weight map does not assign any information to your points.
Instead of typing in a map name, you can use the pop-up menu button
to the right of the Name field. This lists all maps used in the current
session, even if no points use the map. Do not confuse it with the vertex
map selection pop-up in the lower-right corner of the interface. That
pop-up selects the map you are editing. It will also list all of the VMaps
that have points with values.
To change a point weight:
1 Select the Weight map W button and the previously defined weight
map name in the pop-up.
2 Change the viewport style to Weight Shade (use the pop-up menu on
the viewport titlebar.). You need to change it only for the viewport
you will be working in. It’s kind of neat to do this in a perspective
viewport.
NOTE
The Weight Shade style gives you a visual indication of a map’s
influence in the form of color shading.This can be very important,
particularly when weights are not visibly influencing object geometry.
3 Activate the Weights tool (Map > Weight & Color: Weights).
4 Open the numeric panel (N).
5 Put your mouse pointer over the point you want to edit.
6 Drag right to increase the weight of the point and left to decrease it
(weight can even be negative). You will receive feedback in the form
of color in the viewport. Red indicates positive weight and blue
indicates negative weight. You will also see the percentage of change
in the numeric panel.
28.8 CHAPTER TWENTY-EIGHT: VERTEX MAPS
NOTE
The percentage of change is a relative change. If you release the mouse
button, the change is set. Dragging again applies another change
starting at 0%.
NOTE
Using the Weights tool with no points selected, will add the current
weight map to all points, not just the one being edited. Non-edited
points are assigned a 0% value. If you do not want this to happen,
select the points to be affected before using the Weight tool.
For weight maps, the Weight Value can be adjust higher or lower
from the default 100%.
For color vertex maps, you can adjust the Color. If you are using a
RGBA map, you can set the Alpha amount.
For Morph maps, the airbrush basically paints a selected morph map
onto the current morph map. The Vertex Map setting is the morph
map that acts as the “paint.” The Shape value adjusts the strength of
the morphing.
Hold the SHIFT key as you drag to subtract weight or the CTRL key to
adjust toward 0. On a vertex color map with alpha, the CTRL modifier will
reduce the alpha.
NOTE
The radius area must actually touch a point for this tool to have an
effect since it must add value to a point. Also, if you have points
selected, only those will be affected.
Left: Before airbrushing the morph map. Right:The morph map used as the paint
28.10 CHAPTER TWENTY-EIGHT: VERTEX MAPS
HINT
The Airbrush can act sluggish when used on a complex object. As an
alternative, try the Weights tool and use Point Radial as the Falloff
on the numeric panel.You must be directly over a point to use this
method, but you will get faster updates and you can decrease
weighting by dragging left. (For more information on Falloff, see
Chapter 23.)
Using the Move tool with a Weight Map Falloff. Note the effect of positive and negative weighting.
NOTE
Basically, vertex color maps work like a (color surface) texture layer
using Multiply as the Blending Mode.The Vertex Coloring
percentage operates like layer opacity.
2 Open the Advanced tab of the Surface Editor and select the same
surface used above. You will see the map you just created already
selected on the Vertex Color Map pop-up menu. (The Vertex
Coloring is a blending amount. You can leave it at 100%.) If in the
future you need to change the color map or remove it from the
surface, you would do it here.
L I G H T WAV E 3 D 7 28.13
3 Choose Map > Weight & Color: Airbrush. On the numeric panel, pick
your map on the Weight or Color Map pop-up menu. Choose an
appropriate Radius, Strength, Color, and Alpha. Start painting.
NOTE
The density of points greatly affects how much detail you can paint.
NOTE
Remember, a vertex with a value of 0 is not the same as a vertex with
no value in the VMap.
The RGBA map adds an alpha value for each vertex (to the RGB
information), and the alpha is also used to blend in the vertex color. So,
if the Vertex Coloring percentage is set to 100%, as above, it's still
possible for individual vertices to blend their value with the normal
surface color. This allows for better feathering effects at the edges of
maps.
The difference between RGB and RGBA is best illustrated with the
Airbrush tool. If you have an empty RGB map and start painting, you see
that as you add vertices to the map, they first receive a black color. This
results from mapped and unmapped vertices sharing the same polygon.
Then, as you paint more, the Airbrush color gradually fades in.
With an RGBA map, you see better feathering and none of the odd
effects along the edges of the map.
28.14 CHAPTER TWENTY-EIGHT: VERTEX MAPS
In general RGBA maps are better and more flexible than RGB maps.
However the alpha value takes up space, and is unnecessary for maps
that will be defined for all vertices and that can uniformly blend with (or
replace) the base color.
HINT
When in doubt, activate the Use Alpha mode.
Vertex Paint
Vertex Paint is covered at the end of the chapter.
UV to Weight
The UV to Weight command (Map > Weight & Color: UV to Weight)
converts the U or V values (0 to 1) from a UV Texture map to weight map
values (0% to 100%). This can be handy if you (really) want to use a UV
as a gradient input parameter (which isn’t allowed).
The Shift Value setting will adjust the U or V value by the entered
amount. Then, Scale Value adds the entered U or V value. (Note: Values
are not clipped and there is no constraining during the conversion.)
HINT
If you want to turn a typical 0-to-1 UV map into a (minus)-1-to-1
weight map, set Scale Value to 200% and Shift Value to -1.
28.16 CHAPTER TWENTY-EIGHT: VERTEX MAPS
UV Map Jitter
Use UV Map Jitter to add some randomness to a UV map. Simply
select the UV map from the Vmap pop-up menu and enter the minimum
and maximum amount of jitter. Remember that UV values normally go
from 0 to 1, so small settings go a long way.
UV Map Jitter
Texture VMap
The TextureVMap function (Map > Weight & Color: Texture VMap)
can apply the luminosity values of a standard texture to a weight or
morph map, or the color values to a color map.
Set the VMap Type to either Weight Map, Morph Target, or Vertex
Color (map). Entering a new VMap Name will create it, if it doesn’t
already exist.
Click the Texture button to bring up the Texture editor. Create a
texture as you would normally for, say, a bump map.
L I G H T WAV E 3 D 7 28.17
The values along the selected Axis are affected by the brightness
values of the texture. Leave the panel open as you experiment with
different textures—updates are in real-time. To freeze the texture you
want, simply close the panel.
The Offset value will move the 3D texture through the surface. The
Scale value sets the overall size of the texture in a manner not much
different than the XYZ Scale settings for a normal surface texture.
HINT
You can get an interesting effect by creating a weight map with this
plug-in and then using the weight map as the Falloff for a tool like Size.
HINT
Use Texture VMap to quickly establish a starting point for vertex color
maps.This saves you from painting all of the points individually. See the
discussion on “Vertex Color Maps” later in this chapter.
Bone Weights
See Chapter 10, “Bone Weight Help.”
The Color Mode determines how the color value is applied. Replace
simply overwrites the color value. The Add mode adds the value to the
existing color, if any. Note that the result can be greater than (RGB) 255.
The Blend mode averages the defined and existing colors.
UV TEXTURE MAPS
Sometimes, standard image mapping tools (i.e., planar, cylindrical,
and spherical mapping) may be somewhat limiting where the surface is
irregular in shape. These techniques usually work well only where you
28.18 CHAPTER TWENTY-EIGHT: VERTEX MAPS
can globally map the entire texture image using a linear interpolation
along two axes. The object geometry essentially has no influence on how
the texture is applied.
However, what if you could assign areas of a texture image to points
on the surface, essentially tacking it down at key points? Well, you can
with UV mapping in Modeler. Between the tacks, the image is stretched
smoothly.
The U and V refer to texture map coordinates and are really not much
different than the XYZ coordinates you are familiar with. In fact, UV
mapping is the process of setting up a relationship between the two
dimensions of an image, U and V, with the three dimensions of an object
surface, XYZ.
UV map (with overlayed graph labels) for a sphere. Note selected polygons in both views.
NOTE
Keep in mind that standard projection mapping is more accurate
because it has some exact, continuous value over the entire surface.
UV mapping, on the other hand, is technically accurate only at small
sample points.The surface for the large areas in between the sample
points are interpolated. Adjusting the sample points so that the
interpolated areas look right is difficult and the reason why UVs are
more difficult to use.
For illustration purposes, let’s say you had your texture image printed
on a piece of very flexible rubber and wanted to fit it on a toy car made
of wood. You could conform the rubber material to contours of the car
by tacking it down with thumbtacks. That is more or less what UV
mapping does. However, it is a little bit reversed: what you do is tack the
UV points down onto the image.
28.20 CHAPTER TWENTY-EIGHT: VERTEX MAPS
To create a UV map:
1 Load or create an object in Modeler.
Automatic will automatically size the texture or you can use the
Manual mode and define specific Center and Size parameters.
You may want Initial Value off if you will later create the UV map
automatically, for example, using one of the primitive tools.
6 Click OK when done. The name should now be displayed on the pop-
up button in the lower-right corner of the Modeler interface.
NOTE
You can set up multiple UV maps, each with its own independent set of
assigned points.Whichever map name appears on the button is the
active map.
8 Open the Surface editor and select one of the surfaces on your object.
28.22 CHAPTER TWENTY-EIGHT: VERTEX MAPS
9 Click the Color parameter’s Texture button to open the Texture editor
and set Projection to UV. In the UVMap pop-up menu, select the UV
Texture map you created earlier. Select (load image) from the Image
pop-up menu and load the image you wish to map.
NOTE
You can actually use a UV map on any surface texture.
In the UV Texture viewport, you see the points and polygons of your
3D object surface in a 2D mapping grid format.
L I G H T WAV E 3 D 7 28.23
NOTE
There are two ways to match image to surface with UV mapping.You
can either take an image and move the UVs on the image (displayed as
background), or you can take a screenshot of your existing UVs, and
use it as a template image to paint textures on.
NOTE
UV Points that are off the image will always wrap to the opposite side
(as if the image was tiled).
Texture Guide
For more interactive adjustment of projection textures and UVs, or to
create UVs from an existing projection, the Texture Guide tool (Map >
Texture: Texture Guide see Chapter 31), is indispensible. To use it, you
should have a textured object already loaded, and its texture layer open
in the Surface Editor. When the Texture Guide tool is launched, it can
determine the texture parameters from the texture editor, and modify
these. If a UV map for the object is available, the Texture Guide can also
sample the projection into the UVs interactively.
Automatic UV Making
You can also automatically create UVs when you create primitives by
activating the Make UVs option on the related numeric panel. You must
already have pre-defined and selected a texture name. A default UV is
created for the currently selected texture map based on the geometry of
the object.
To use Make UVs:
1 Create a UV texture map and open a texture viewport.
2 Make a primitive with Make UVs active on the numeric panel. You
should see a grid in the UV view that is the default UV assignment for
the primitive shape.
With the sweep operations, like Extrude, Lathe, Path Extr, and so on,
you can assign one of the values, U or V, to a range from 0 to 1 along the
segments of the sweep. For example, if you create a flat disc with Make
UVs active, you will see a line in the UV Texture viewport.
L I G H T WAV E 3 D 7 28.27
The line represents the UV coordinates for the points around the
disc. They go from 0 to 1 on the U axis and are all at 0.5 on the V axis. If
you sweep this disc, say with a Lathe, then you can see different results
in the UV Texture view depending on the Make UVs setting for the tool.
With None, you'll see the same line as before. This is the same set of
24 points that make up the original ring.
If you set the value to U, then you’d see a line again, but this is all the
points of the torus, not just the original ring. In this case the 0.5 V value
is duplicated and the U value ranges from 0 to 1 along the lathe. That's
the wrong choice in this case, although it would be right if the original
line had been vertical (along V) instead of horizontal.
If you set the value to V, then you see the grid that you would expect,
which is the proper UV parameterization of a torus. The values on U go
around the small radius, and the values on V go around the large radius.
28.28 CHAPTER TWENTY-EIGHT: VERTEX MAPS
The original U values from the ring are duplicated on all the slices and
the V value is set to 0 to 1 as we go along the lathe. The original 0.5 V
value is discarded.
Set UV Value
The Set UV Value command (Map > Texture: Set UV) can be used to
set either the U or V value for the selected point(s). This is analogous to
the Set Value command, but works on the current UV map instead of the
points’ XYZ values.
Flip UVs
The Flip UVs command (Map > Texture: Flip UVs) reverses the UV
map along the U, V, or both axes. Note that you may not get acceptable
results if there are discontinuous UVs. You may want to unweld, flip, and
then re-weld.
Spread UVs
The Spread UVs command (Map > Texture: Spread UVs) operates on
four-point polygons (a.k.a. quads). Basically, it sizes the polygons’ UV
map to the entered values.
Quantize UVs
The Quantize UVs command (Map > Texture: Quantize UVs) snaps
selected UV points to the specified U or V value (0 to 1).
DISCONTINUOUS UVS
VMaps now support discontinuous values across polygon boundaries,
which are useful for UV texture coordinates, gradient weights, and other
VMap-controlled surfacing parameters. Discontinuous UVs are now
automatically used when appropriate with Modeler’s modeling tools.
This means you should rarely encounter the dreaded seam problem,
discussed below.
WARNING
Discontinuous UVs are now created in the normal course of
(Modeler) business, thus a firm understanding of them is imperative.
NOTE
The following illustration was created using pre-6.5 Modeler.You will
not normally be confronted with this seam problem. However, this will
give you a better understanding of discontinuous UV Maps.
L I G H T WAV E 3 D 7 28.31
Next, let’s skip a polygon and note its position on the UV map, below.
So far, we’ve seen that two non-contiguous polygons are on the right
and left edges of the UV map. Where do you think the UV points are for
the polygon in between? (See below for the answer.)
Instead of the “1” being mapped onto the polygon, the polygon is
getting the “23456” part of the image mapped backward!
Notice on the UV map, above, how there are no visible points for the
left edge of polygon 1. The reason is that the two points on the right
edge actually hold two sets of UV positioning data: one set for the right
side of polygon 6 and the other set for the left side of polygon 1.
L I G H T WAV E 3 D 7 28.33
If you use the Unweld command on the two right-edge points, this
separates the edge between polygon 6 and polygon 1. Since polygon 1
now has its own left edge, the points become accessible. See below.
NOTE
The discontinuous state of VMaps will survive a merge points
operation.
28.34 CHAPTER TWENTY-EIGHT: VERTEX MAPS
Below, the Make UVs Atlas mode was used on a simple box. This
illustrates an extreme discontinuous UV situation. Here, each polygon is
independent with respect to UV mapping.
It is not necessary, but let’s say we unselect all polygons and merge
points. Then, when we reselect and move polygon 3, it again affects the
other polygons.
Unweld Command
The Unweld command (Detail > Points: Unweld) creates multiple
copies of the selected points so that none are shared by two polygons.
Each polygon is given its own copy of the selected vertices, and VMap
values for the polygon are made continuous over the new vertices. This
tool is the key to being able to edit discontinuous UVs.
28.36 CHAPTER TWENTY-EIGHT: VERTEX MAPS
Big deal, eh? A simple cubic image map could do this. But what if you
wanted to bend your piece of wood?
Wow! Notice how the grain follows the curvature of the bend. “A little
more difficult,” you say. Perhaps it’s more difficult, but I guess you could
somehow bend the image in a paint program to match the geometry.
28.38 CHAPTER TWENTY-EIGHT: VERTEX MAPS
We’ve finished cloning around with this illustration, but I think you
can see just how powerful UV mapping is, even for non-organic objects.
The real secret is to plan ahead and create your UV maps early.
PER-POLYGON UV MAPPING
The predecessor to discontinuous UVs is per-polygon UV mapping (or
polymap for short) introduced in LightWave 6.0b.
NOTE
For UV textures created using version 6.5 and after, generally, there is
no need to use these per-polygon UV mapping tools.
Next, we select the two right points on the UV map and move them to
the far left.
Select UV Seam
The Select UV Seam command (Display > Selection: Maps > Select UV
Seam) automatically selects polygons where the UV values span more
than half the image—thus assuming that they are seam polygons,
discussed previously. If you activate Patch with Poly Map, it will
automatically turn these into per-polygon UVs.
Next, you see the seam polygons after using the Patch with Poly
Map.
Select UV Seam is limited, because it will not set UV values past 1.0
or less than 0. Thus, it is possible that some important portion of your
image will get missed (e.g., you really needed a 1.2 U or V value).
Editing Polymaps
LightWave uses many of the modeling tools used for editing vertex
positions to also modify UV values. This works smoothly because the
VMaps, like the mesh, are continuous. Moving a point moves it in all the
polygons that use it. With polymaps, however, any operation on a vertex
also must specify which polygon's view of that vertex is edited.
(Polymaps are locked snapshots of some UV mapping of a polygon.)
You can select polygons using per-poly UVs by choosing the Select by
Poly Map command (Display > Selection: Maps > Select by Polygon
Map).
The tools for editing polymaps in the Adjust Polygon Map function
(Map > Texture: Adjust Poly Map) include 2D transformations of the UV
coordinates, as well as adjusting the connection between texture points
and the polygon's vertices. The power of these operations is limited in
comparison to the tools for editing VMaps. Note that you need to select
the polygon(s) first.
You can use this function on discontinuous UVs by entering the map’s
name in the Vertex Map field. For polymaps, leave the field blank.
L I G H T WAV E 3 D 7 28.41
Left to right: 6 is per-poly mapped. Reverse Order. Shift Order. Rotation Angle 90 degrees. Scale V to 60%
NOTE
Unweld removes per-polygon UV mapping.Then, you can use the
normal Modeler tools, which support discontinuous UVs.
HINT
You may want to use a different surface name on your problem
polygons—while editing—that points to the UV map copy. After the p-
map has been locked, you can apply the regular UV mapped surface to
28.42 CHAPTER TWENTY-EIGHT: VERTEX MAPS
it. (Remember, since there is only one per-polygon map per polygon, it
doesn’t matter which UV map is used in the surface texture.)
ENDOMORPHS
Sometimes, deforming an object using bones does not provide the
accuracy you may need for a particular project. LightWave also lets you
force an object to change its shape using another object. This is called
morphing. Morphing provides absolute control over the final shape,
something displacement maps and bones usually cannot offer. You may
wish to use morphing to move the muscles in an arm or face, to get a
flower to bloom, or to transform a car into a plane. The different states
or poses are generally referred to as morph targets. You might think of
them as different poses of the same object.
L I G H T WAV E 3 D 7 28.43
You handle morphing through morph maps, which are special VMaps
(yes, just like point weighting). Each morph target defines different
positions for each associated base-object point. All of the morphing
information is contained in a single object file, called an endomorph.
LightWave has two types of morph targets. Relative targets are
affected relatively for any changes to the base object. Absolute targets
are not affected by positional changes to the base object, although
changes to the number of points are always reflected.
28.44 CHAPTER TWENTY-EIGHT: VERTEX MAPS
NOTE
See Chapter 9 for information on how to animate Endomorphs.
3 Select (new) from the selection pop-up menu to the right. The Create
Morph Map dialog will appear. Enter a name using a group.pose
format, something like HEAD.SMILE or EYE.CLOSE and set the Type.
The pop-up menu on the Create Morph Map dialog lists existing
targets.
NOTE
If you change an existing target’s Type, it applies only to changes after
that time.
Poses with the same group appear on the same tab of the control
interface called Morph Mixer.
L I G H T WAV E 3 D 7 28.45
NOTE
Below is an example Morph Mixer panel shot (see Chapter 9,
“Animating Endomorphs”).
4 Click OK to create the map. The new map will appear in the selection
pop-up menu.
5 Modify the new map in some way.
Now, if you use the selection pop-up menu and go between the (base)
object and the morph map you created, you will see that the (base) is
not affected by the change to the morph map.
WARNING
We strongly suggest that you do modifications, like adding and
subtracting geometry, on the base object and use the morph maps
only for posing (i.e., moving points). Otherwise, you can end up with
incorrect point orders.
HINT
You can use the Bkg to Morph command to insert an object saved
with Layout’s Save Transformed Object command (File > Save >
Save Transformed Objects) that has been deformed in Layout.
Here is an example:
Left: Base rotated with the Rotate tool. Right: Morph target
28.48 CHAPTER TWENTY-EIGHT: VERTEX MAPS
Here is an example:
VERTEXPAINT
VertexPaint (Map > Weight & Color: VertexPaint) is a plug-in for
painting vertex color maps and weight maps on bones. The display
window gives you a 3-D view of the object loaded into Modeler. You paint
your object in this view.
NOTE
References to bones really means skelegons, since (technically) bones
cannot be used in Modeler directly.
The view controls operate just like Modeler’s, so dragging with ALT
key rotates, SHIFT + ALT pans and CTRL + ALT zooms. There are also
corresponding drag buttons in the upper right corner.
Two types of projections are available for displaying the object in 3D
space: Persp (perspective), the default and Ortho (orthogonal).
Sometimes painting vertex colors is easier using the orthogonal mode.
When using the perspective mode, you can modify the zoom factor
using Fov setting. Higher values simulate a telephoto lens zoom and
lower values simulate a wide angle lens.
You can quickly switch to certain preset views by choosing one from
the pop-up menu (down arrow) just to the left of the projection mode
pop-up menu.
L I G H T WAV E 3 D 7 28.51
When in component mode and state is set to RGB paint mode, only the point color is rendered
28.52 CHAPTER TWENTY-EIGHT: VERTEX MAPS
When in component mode and state is set to Alpha paint mode, brightness of alpha is rendered, with black as 100 percent
transparent and white as opaque.
When in blend mode and state is set to either RGB paint or Alpha paint mode, the point color and the surface color are mixed
when rendered.
Rendering Modes
You can view the object in various rendering modes using the pop-up
menu just above the window on the left.
Preferences
When you select Preferences from the File menu, you can customize
many settings.
VertexPaint preferences
L I G H T WAV E 3 D 7 28.55
Changing the RGB values for the BG Color will modify the
background color of the 3-D view. When the Preference panel is moved
or closed, the view will be updated to reflect a change. This setting is
saved between sessions.
The second item modifies the RGB values of the Wire Color in the 3-D
view. This affects the following rendering styles: Wireframe Color,
Weight Value, and Weight Ratio. When the Preference panel is moved or
closed, the view will be updated to reflect a change. This setting is saved
between sessions.
The Window Size option will change the size of the VertexPaint
window. You must exit and restart VertexPaint for the changes to take
effect. If you choose a size larger than your desktop, parts of the screen
will not be visible.
Hide Unselected Bones specifies how unselected bones are displayed
Mirror Epsilon is the error quantity used when you paste bone
weight values symmetrically on the X axis. (See “Copying and Pasting
Weight.”)
Undo Levels is the maximum number of undos in Color and Weight
mode.
Default Keyboard/Mouse Operations
The chart below summarizes keyboard/mouse operations.
Operation Command
LMB + ALT Rotate view
LMB + CTRL + ALT Zoom in/out of view
LMB + ALT + SHIFT Pan view
LMB Rotate view (using Rotate button)
LMB Zoom in/out of view (using Zoom button)
LMB Pan view (using Move button)
LMB Paint point color (Color mode)
RMB Set the size of the color paint brush (Color
mode)
LMB + CTRL + SHIFT Select color from 3D view, like eyedropper (Color
mode)
LMB Select color from color palette (Color mode)
LMB Paint bone weight (Weight mode)
LMB + CTRL Rotate bone
LMB + SHIFT Select bone
RMB Set the size of the weight paint brush (Weight
mode)
LMB Move Lights (Light mode)
28.56 CHAPTER TWENTY-EIGHT: VERTEX MAPS
LMB + CTRL + SHIFT Select color from 3-D view (Light mode)
LMB Select color from color pallet (Light mode)
LMB Select polygon (Show mode)
RMB Deselect polygon (Show mode)
LMB CTRL-+ SHIFT Rectangle selection of polygon (Show
mode)
RMB + CTRL + SHIFT Rectangular deselect of polygon (Show mode)
a Center object
A Center current bone
, Zoom out
. Zoom in
F Front view
T Top view
S Side view
F1 Points Render mode
F2 Wireframe Render mode
F3 Front Face Render mode
F4 Vertex Color Render mode
F5 Wireframe Color Render mode
F6 Lighting Shade Render mode
F7 Weight Value Render mode
F8 Weight Ratio Render mode
u Undo
up arrow Select next bone
down arrow Select previous bone
c Copy current bone weight
v Paste current bone weight
V X axial symmetrical paste of current bone weight
x Clear current bone weight
+ Scale up current bone weight
- Scale down current bone weight
r Reset current bone to rest position
R Reset all bones to rest position
Customizing Keyboard/Mouse Operations
You can change keyboard/mouse operations, by selecting the
command with the Command pop-up menu and then the corresponding
keystrokes on the Operation pop-up menu.
L I G H T WAV E 3 D 7 28.57
Modifying Modes
VertexPaint offers four operating modes. You change modes by
selecting the relevant tab on the left side of the interface. The contents
of the Edit menu will change to the commands for the current mode.
Color tab Vertex color map edit mode
Weight tab Bone weight edit mode
Light tab Light settings mode
Show tab Polygon show/hide setting mode
NOTE
If there is no information in the vertex color map, it will not be loaded
into VertexPaint. If you want to define your vertex color maps in
Modeler, you must first add some values (color) to the map.
After choosing Burn Shading Colors, the baked point color will be rendered, as seen here in Wireframe Color rendering mode:
Point Color
When you use the brush, there are three Paint Modes available for
painting point color.
Color / Paint Paint a single point
Color / Index Paint a polygon point index unit
Color / Polygon Paint a single polygon unit
L I G H T WAV E 3 D 7 28.59
To start painting, select a color map from the Color Map pop-up
menu, then drag your LMB over the object in the 3-D view. You can use
either the color sliders or the palette to select the color you want for
painting.
The slider operates in two modes RGB and HSV. Each slider affects
the numeric entry field to the right of its location. Values for all sliders
are displayed in a range from 1 to 256, although floating point values are
used internally by VertexPaint.
The palette gives the user a visual way to select the active color for
painting. Use the LMB within the palette to select a color. Use the slider
to select alpha colors.
You can also select the active color directly from the object in the 3D
view. This works similarly to an eye-dropper tool. To do this, hold the
CTRL + SHIFT keys simultaneously and click on the color using the LMB.
The color is displayed in the active color selection box.
Painting a Point
When you select the paint mode Color / Point, painting will affect
points. The Brush Size and Front Face parameters affect the painting of
a point.
polygon surface receives paint. Brush Size and Front Face settings are
ignored. Which polygon point index receives color is based on the
polygon nearest to the cursor when paint is applied.
Painting a Polygon
When you select Color / Polygon, you apply paint to a polygon. When
you paint in this mode, only the polygon surface receives paint from the
brush. Brush Size and Front Face settings are ignored. When paint is
applied, the polygon beneath the mouse pointer receives color.
Rotating Bones
VertexPaint lets you test bone deformation on the object while you
work on weight maps. The selected bone is displayed with HPB rotation
controls. The display rings affect rotation as follows: red - Heading (Y
axis), green - Pitch (X axis), blue - Bank (Z axis).
While holding the CTRL key, drag your LMB to rotate the bone. To
rotate only one axis, drag right on top of an axis. The selected axis will
be indicated by a thick ring.
To reset a bone to its default state (Rest Position), make sure the
Weight tab is selected. Then choose Reset the Bone from the Edit menu.
To reset all bones, select Reset All Bones.
Renaming Bones
To rename a bone, choose Edit > Rename Bone in Weight mode.
Enter the new name for the bone in the dialog and press the OK button.
When you exit VertexPaint, a dialog box will ask you to update Modeler.
Press OK and the changes will take effect in Modeler.
28.62 CHAPTER TWENTY-EIGHT: VERTEX MAPS
NOTE
You can set the computing error quantity when searching the axial
symmetrical point by setting its value in the Mirror Epsilon setting
found in the Preferences panel.
Clearing Weight
To clear all values from the weight map of the current bone, press the
X key or choose Edit > Clear.
Normalizing Weight
When you use the paint feature in VertexPaint to calculate bone
weight for Modeler, the values can sometimes exceed the range of 0.0 to
1.0. When you normalize the weight value (to a range of 0.0 to 1.0), the
bone is easier to control. To normalize the weight values, choose Edit >
Normalize.
L I G H T WAV E 3 D 7 28.63
Trimming Weight
Sometimes independent bones can cause a divergence across the
object by deforming areas controlled by other bones. This occurs when
the weight maps for the independent bones were created using the
calculated weight falloff function (see “Calculating Weight”), for example,
when you arrange bones for the fingers of a hand. When falloff is
calculated, only distance to the bone is measured to set the point weight
value.
Before applying Trim Branch. Because there is a weight influence from the bone of the ring finger on the middle and little finger,
when the ring finger is bent the middle and little fingers are also deformed.
28.64 CHAPTER TWENTY-EIGHT: VERTEX MAPS
When you choose Edit > Trim Branch, it trims the bone weight values
along the route of the bone system for the selected weight map. It first
seeks the primary bone of each point (the point to which the bone is
closest). When a point is found that is not part of the selected bone
system, it is selected and the weight value is cleared for that point in
relation to the current bone. The route of the bone system and its
divergence from the parent is shown below.
System of the selected bone.The darker bones represent the system of the selected bone, whereas the lighter bones represent
the bones of other systems.
After applying Trim Branch.The weight values that affected the middle and little fingers are cleared of their value, so the ring finger
can now be deformed independently without affecting the other fingers.
L I G H T WAV E 3 D 7 28.65
The Brush Size and Front Face parameters function the same as
when you paint point color.
Operation lets you set the type of operation that occurs when you
paint weight values along the object's points.
The ADD operation adds the value set in the Value field to the weight
map along the object. Drag your LMB over the points where you wish to
modify the value. The change is applied once to each affected point. To
modify the point value more than once, release the LMB and repeat the
process.
The SUB operation subtracts the value set in the Value field to the
weight map along the object. Drag your LMB over the points where you
wish to modify the value. The change is applied once to each affected
point. To modify the point value more than once, release the LMB and
repeat the process.
This REP mode replaces the current weight value with the value set
in the Value field.
The ERA mode erases the value of the weight for the affected points
and sets them to 0.0.
The Color Scale value adjusts the display strength of the red color
gradation in the Weight Value rendering mode. Adjusting this value does
not affect the influence exerted in the actual weight map.
Calculating Weight
To calculate the weight map using falloff in weight mode, select the
Calc subtab. The parameter fields used to calculate weight are displayed.
These parameters work in basically the same way as BoneWeight in
Modeler.
28.66 CHAPTER TWENTY-EIGHT: VERTEX MAPS
Falloff sets the method for calculating the value of the weight map.
With Linear, the points closest to the bone receive a value of 1.0, all
others are set to 0.0. With Distance, the point weight value is set to the
inverse number of the distance from the bone, creating a gradation of
influence. With Distance ^ 2, the point weight value is set to the inverse
number of the distance to the second power from the bone, creating a
gradation of influence, and so on.
When Normalization is active, the value of the weight map is
calculated using a range from 0.0 to 1.0.
When Calculate Weights is clicked, the weight map is calculated
using the above settings. Weight maps for all bones are created.
Scaling Weight
Select the Scale subtab in Weight mode to display the parameters for
scaling weight map values.
Scale sets the method for scaling weight values. With Whole, the
scale is applied evenly along the weight map. With At Start Joint, the
scale is applied from the base of the bone. With At End Joint, the scale
is applied from the tip of the bone.
Clicking the + button will increase the weight value based on the
value in the field to the right. Pressing the + key will also perform this
function.
Clicking the - button will reduce the weight value based on the value
in the field to the right. Pressing the - key will also perform this function.
L I G H T WAV E 3 D 7 28.67
Increasing the weight map value using the At Start Joint scale modifier.
Increasing the weight map value using the At End Joint scale modifier.
Clamping Weight
To activate the clamp weight, selected the Clamp subtab. When
deformation for a single skin object is calculated, calculation speed is
directly related to the number of matrixes that must be calculated for
the bone. Calculation speed can be improved by truncating the weight
value for points that receive little influence from the bone. When dealing
with the deformation of single skin objects for real-time animation, this
becomes an element of great importance for performance tuning.
clamped with the N of Matrix setting of 5. You keep the weight value of
the points influenced by the bone that are greater than 5, and the value
of points whose influence is below 5 are cut off and set to 0.0.
The Clamp button applies the clamp function based on settings.
Status of Weight
Select the Stat subtab to set values for displaying weight maps.
Threshold sets the value for the selection process. Any weight value
less than the value set in Threshold will be selected. The entry field to
the right allows you to set this value either by weight Value or as a Ratio
(a percentage value based on the normalized weight value from 0.0 to
1.0).
When the Select button is clicked, all points whose weight value is
less than the value set in Threshold are selected and displayed as
yellow. To deselect the points, press the Deselect button.
When Discard Selected is clicked, the selected points of the weight
map, displayed in yellow, are set to a weight value of 0.0 and deselected.
When you turn on the Active check box for the light selected on the
Name pop-up menu, the light is set to its active state. When you uncheck
this box, the light becomes inactive and does not cast light in the scene.
You can drag the selected light in the 3-D view to reposition or enter
XYZ coordinates in the numeric entry fields under the Name pop-up
menu.
The color of each light can be set independently. The color slider and
palette are used the same way as in Color mode.
NOTE
VertexPaint lights operate independent of normal Layout lights.
When you choose Select All or Hide All from the Edit menu, the
whole object is selected or deselected.
28.70 CHAPTER TWENTY-EIGHT: VERTEX MAPS
C hapter 29:
Organic Modeling Tools
LightWave includes some powerful tools to help you create soft-edged
organic objects. The SubPatch method is a parallel modeling mode that
works with the same modeling tools and commands. Metamesh objects
are sort of like interactive hypervoxels. Spline patching is a technique of
creating a basic shape out of linked curves and then smoothly patching
the areas between the curves with a mesh of polygons.
SUBPATCHES
Standard polygonal surfaces need many polygons to approximate a
smooth surface. Even so, a smooth surface made up of polygons will
eventually reveal its inherent sharp-edged nature, if it’s examined closely
enough. Although you can create such polygon-heavy objects, it is often
difficult to manipulate and manage them from the perspective of
memory-consumption and editing.
A “SubPatch,” an abbreviation for subdivision patch, is a “bi-cubic
patch.” The idea behind SubPatching is to repeatedly refine the control
mesh until you achieve a smooth surface, called the “limit surface.” The
SubPatch modeling mode is not unlike a real-time implementation of the
Metaform (Construct > Subdivide: Subdivide) command.
MetaForm performed three times in succession on the same object (no surface smoothing)
29.2 CHAPTER TWENTY-NINE: ORGANIC MODELING TOOLS
You can select the SubPatch vertices by clicking either on the true
(polygon cage) vertex location or the location of the vertex when
mapped on the SubPatch surface.
When you use SubPatch, you often manipulate the polygons into what
would normally be non-planar, degenerate, or cattiwompus polygons.
Since the polygonal cage is merely a reference for the SubPatch object,
this is perfectly acceptable.
HINT
If you end up editing a very complex cage, the display can become
confusing. In such a case, the cage is often close in shape to the
SubPatch surface.Thus, you may be able to edit the normal polygons
and just flick the SubPatch mode on to check the results.
29.4 CHAPTER TWENTY-NINE: ORGANIC MODELING TOOLS
2 Use any of the weight-editing tools, like the Weights tool (Map >
Weight & Color: Weights) to adjust point weights. You can increase or
decrease the bias of individual control points on the SubPatch
surface, which can sharpen (or unsharpen for negative values) the
curvature of the object.
The Smooth Shift tool (Multiply > Extend: Smooth Shift) works
similarly, but keeps a group of selected polygons together. Just click your
RMB in a viewport to use an Offset of 0.
Smooth Shifting two polygons (left) and then moving them (right)
NOTE
See Chapter 9 for a discussion on using SubPatch object in Layout.
META-PRIMITIVE OBJECTS
Meta-primitives are another cool modeling tool that comes in several
flavors: plain Metaballs, Metaedges and Metafaces. Meta-primitives are
similar to HyperVoxels except they are polygon-based, and their surface
and interaction is more apparent and viewable in Modeler. In fact, Meta-
primitives are a good place to start before you set up with HyperVoxels,
because of their real-time feedback. All Meta-primitives will interact with
each other, even though they are different types, but only if they are in
the same layer.
To draw a Metaball object:
1 Activate the Draw Metaballs tool. (Create > Elements: Metaballs)
2 Click in a Modeler viewport. Use any Rendering Style other than
Wireframe and you will see the metaball.
3 You can move the metaball by dragging its center handle. You can
change its size by dragging the sizing handle that looks like an
orbiting circle. If you click anywhere else, another metaball will be
created.
L I G H T WAV E 3 D 7 29.7
5 Drop the Draw Metaballs tool (i.e., reselect it or press the SPACEBAR).
Metaedges
Metafaces
L I G H T WAV E 3 D 7 29.9
Metaball Appearance
The amount of detail for displaying Meta-primitives is handled by the
Metaball Resolution setting on Modeler’s General Options panel
(Modeler > Options > General Options). The value represents the
number of subdivisions (pixels per metaball on the screen). To get a
smoother surface, increase the value. There is no limit.
Animating Meta-primitives
You can animate Meta-primitives the same way you would animate
any object. Of course, you won’t take advantage of their coolness unless
you animate point positions. For this, you can use features like morph
targets, bones, displacement maps, and so on. Note that only Meta-
primitives in the same layer will interact with each other.
Editing Meta-primitives
Activate the Edit Metaballs tool (Detail > Other: Edit Metaballs) to
edit existing Meta-primitives. On the numeric panel, you can adjust the
Radius and Influence.
L I G H T WAV E 3 D 7 29.11
Once frozen, the control mesh no longer exists. As such, you should
save the object before you perform a freeze just in case you later decide
you want to modify its shape.
NOTE
The Patch Divisions setting on the General Options panel also
affects the level of smoothing in the viewport displays.
29.12 CHAPTER TWENTY-NINE: ORGANIC MODELING TOOLS
NOTE
The Freeze command supports discontinuous UVs. It will also generate
all the morph target objects, as if they had been frozen individually. For
geometry that changes topology when morphed—like metaballs—the
currently selected morph generates the frozen mesh and all other
morphs are discarded.
SPLINE PATCHING
Modeler’s feature for spline patching lets you model with curves and
then smoothly spread a mesh of polygons over them.
To use spline patching:
1 Make three or four curves that create one or more fully enclosed
areas. Note that the curves share end points.
2 In the Polygon Selection mode, select the curves that surround the
enclosed area. Do this in a clockwise or counterclockwise fashion.
Remember which curve you selected first! It’s okay if you also select
some polygons in addition to the curves, they will be ignored in the
patching operation.
3 Choose Multiply > Combine: Patches > Make Spline Patch. The fields
for Perpendicular and Parallel refer to the number of polygons to
put along the side that is perpendicular or parallel to the first curve
L I G H T WAV E 3 D 7 29.13
you selected. Knots and Length let you choose to space your
polygons equally according to the overall length or relative to the
knots or points on the splines.
4 Click OK. You should see a polygon mesh added to the area within
the three curves you selected.
5 Repeat this for the other areas. If you patch an opposing side, select
the curves in the same order and direction. (For this boat hull, the
outer curve was selected first, then the other curves were selected in
clockwise order.)
Sometimes the resulting surface normals face the wrong way. Just
select at least one polygon on that side. Choose Display > Selection: Sel
Connect to select all of the connected polygons in the patch. Then, press
the F key to flip the polygons.
If there are not enough curves or they do not share points properly,
an error message appears. If this happens, check the joining points
carefully to make certain they are not merely overlapping. Choose either
Construct > Reduce: Merge Points or Detail > Points: Weld to correct.
AUTOPATCHERMK
The AutoPatcherMK command (Multiply > Combine: Patches >
AutoPatcherMK) automatically patches a spline cage. You can set the
number of rows and columns of the patch between 0 and 20. To space
the polygons according to the length of the curve, select the Length
Spacing checkbox. To insure success, never have more than four knots
in a curve.
C hapter 30:
Image Editor
The Image Editor handles functions related to images and video clips.
You can load images and video clips from this panel to make them
available for various functions where images are needed, like for surface
textures. You can also adjust certain image characteristics, like
brightness and contrast, without actually affecting the original file. If you
load an animation file (e.g., AVI) or image sequence, you can specify the
beginning and ending frames to use and set what happens before and
after the sequence begins and starts.
FILE-HANDLING OPTIONS
You can select the current image by either clicking on it in the list
window or by selecting it from the Image pop-up menu.
Click the Load button to load a new image file to add to the list. Use
the Replace button to replace the selected image in the list window. To
delete an image from the list, simply select it and press the DELETE key.
File-handling options
The Clone pop-up menu has two items. Instance creates a new entry
for the cloned clip and lets you apply independent settings on the Editing
and Processing tabs. The duration (e.g., In/Out) is linked to the original
clip. Changes to the original image will affect any instances (made from
that original). However, you can always make multiple instances and
apply changes to only the instances, leaving the original untouched.
Duplicate creates a completely independent copy of the original that
you can adjust in any way you want; however, it is available only for
image sequences.
30.4 CHAPTER THIRTY: IMAGE EDITOR
The options to the right of the preview window affect how the
window is updated. The Automatic setting updates only when you have
finished a change and released the mouse button. Changes include
dragging the slider, making adjustments on the Edit tab, selecting
images, and so on. Realtime, on the other hand, updates the window
interactively. Manual requires you to click on the window to update. Use
Layout Time uses the Layout time slider instead of the slider beneath
the preview window (if you opened the Image Editor from Layout).
You may also change the above settings by right-clicking on the
preview window. Clicking Open with IView or double-clicking on the
preview window brings up the image in the Image Viewer.
For speed and memory reasons, preview images use 24-bit data and
filters are applied to the preview image, rather than being applied to the
whole image and shrinking it down. In most cases, this is sufficient for
previewing and much faster.
SOURCE TAB
The Image Type pop-up menu displays the type for the currently
selected image. Generally, this setting is auto-detected when you load
the file. However, you can specify a single image in a sequence of images
by leaving its Image Type to Still. Reference is a clone of an image, as
discussed above.
L I G H T WAV E 3 D 7 30.5
Loading a Sequence
If you wish to load a sequence of files, you can select any image in the
sequence—it doesn’t need to be the first. Initially, the sequence will be
treated as a Still. However, you can just change the Image Type to
Sequence and LightWave automatically analyzes the overall sequence of
files and completes the related fields on the panel.
Each separate file must have the same name, followed by a number.
The numeric sequence may be staggered, but the name must be
consistent. For example, this is a valid image sequence: FLY001.TGA,
FLY002.TGA, FLY005.TGA, FLY007.TGA, FLY010.TGA.
By default, each number corresponds to a frame. If images are missing
in a sequence, then the previous image is used until the next image in the
sequence comes up. Thus, with the sequence SIENNA001, SIENNA002,
SIENNA005, SIENNA006, ... SIENNA002 is used at frames 2 through 4.
Alpha Channel
Be careful using files with an embedded alpha channel. This can
cause unexpected results, like some or all of the image not appearing on
surfaces when rendered, due to the alpha channel masking—the alpha
channel is not taken into account in OpenGL. If appropriate, set Alpha
Channel to Disable to ensure any alpha channel information is ignored.
Interlace
If the image is interlaced (e.g., digitized video), indicate whether the
fields are interlaced with even or odd lines first using the Interlace pop-
up menu. Non-interlaced images should set this option to Off.
Sequence Digits
For sequenced images, Sequence Digits sets the number of digits in
the sequence filenames. When you load an image sequence, LightWave
examines the way that the files have been named in an attempt to
30.6 CHAPTER THIRTY: IMAGE EDITOR
automatically detect the base filename and the numeric extension. You
can change Sequence Digits, if LightWave has difficulty discerning the
numbering scheme used.
For example, assume you have a sequence of 60 images named
PARK001.TGA through PARK060.TGA. You select Load, and click on
PARK045.TGA (since selecting any image from the sequence will work).
When the Clip Type is changed to Sequence, LightWave determines that
the base filename is PARK (its name in the list window will show PARK
(SEQUENCE) and that there are three Sequence Digits.
Frame Rate
Frame Rate controls the incrementing of an image sequence with
respect to the scene’s Frame Per Second setting on Layout’s General
Options tab of the Preferences panel. So, if you set this to, say, 15 and
your scene Frame Per Second is 30, the image sequence will increment
every two frames.
NOTE
If an image is missing in the sequence, the first preceding image that
exists is used.
Last Frame defines which image file ends your sequence. So, if your
sequence is named IMGSEQ003...IMGSEQ100, your last frame is 100.
Because of the infinite possibilities for sequence naming, LightWave
may not be able to correctly set the First Frame and Last Frame fields. If
so, input the correct values.
NOTE
You should not use the First Frame and Last Frame settings to trim a
sequence. It may lead to unpredictable results. Use the In and Out
sliders for trimming.
Use the In and Out sliders to trim the ends of the sequence or
animation.
Start Frame specifies the Layout frame when the sequence will begin.
L I G H T WAV E 3 D 7 30.7
EDIT TAB
You can independently adjust (and envelope) various image
parameters for the selected image on the Editing tab, if you want the
images altered before LightWave uses them.
NOTE
These image operations do not affect the actual file on your hard
drive.
PROCESSING TAB
Access this tab to add image-processing filters. You may use any of
the non-post-processing filters described in Chapter 14. Image filters
added here will not update the Preview window interactively unless the
Animate Filters option is activated.
C hapter 31:
Surface Editor
With only a few exceptions, LightWave objects are composed of one
or more polygons. What each polygon looks like is defined by its surface
attributes or usually just surface for short. Groups of polygons can share
the same surface and the polygons need not be contiguous. The
polygons can even be in different objects.
SURFACING OBJECTS
Let’s take a simple cube. It has six sides and, therefore, at least six
polygons. Each side could have its own individual surface, all six sides
could use the same surface, or any combination in between.
WARNING
Surface settings are saved as part of the associated object file(s), not in
the Scene file.To save surface settings, save the object.
31.2 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
HINT
When you rename all of the polygons that already have a surface
name, use the Statistics panel (Modeler > Windows > Statistics
Open/Close) to select them. Also, if you are naming all polygons, you
don’t need to select any.
2 Choose Detail > Polygons: Surface to open the Change Surface dialog.
3 Enter the surface name for the selected polygons and click OK. You
can also select an existing surface name from the pop-up menu.
You should strive to give your surfaces meaningful names. For
example, say you had a car object. One surface might be called
“chrome,” which you apply to the bumper, door handles, antenna,
etc. “BlackRubber” might be another surface, which you apply to the
tires, rubber gaskets, etc. You might use “RedMetal” for all of the
exterior painted metal parts of the car.
4 To set some basic surface settings, activate Set Initial Color and
adjust the available settings as desired. You can perform more
advanced surface editing using the Surface Editor.
5 The Make Default option automatically updates the Surface option on
Modeler’s General Options panel (Modeler > Options > General
Options). This controls the default surface name used when you
create new geometry. (See Chapter 20 for more information.)
L I G H T WAV E 3 D 7 31.3
Surface List
The large text window on the left lists the surfaces available for edit.
The Filter by pop-up menu lets you filter elements shown in the surface
list window. Objects shows all objects and their related surfaces. Name
shows all surface names. Texture shows all surfaces that use procedural
textures. Shader shows all surfaces that use surface shaders. Preview
lists all surfaces that are visible in the image currently in the render
buffer (you need to render a frame first). This is determined on a pixel-
by-pixel basis. (Note that the Preview setting is only available if the
Surface Editor is accessed from Layout.)
Filter by works in conjunction with the Pattern input field, which is a
simple include filter. Any item that includes any of the text you enter will
appear in the list window. You don’t need to specify wildcards, like
asterisks; when you leave the input field blank, you include all surfaces
in the Filter by category.
Select a surface to edit by clicking on its name in the list. If the object
name is listed, you can expand or collapse the displayed surfaces by
clicking on the arrow to the left of the object name.
When you right-click over the surface list window, a pop-up menu
appears. You can Copy the selected surface to a memory buffer. Then,
select a different surface and Paste the contents of the buffer over the
settings of the selected surface.
attribute changes it for all selected surfaces, including mixed states. Shift-
clicking on the T or E button removes the texture or envelope for all
selected surfaces.
NOTE
Currently, you cannot make mass changes to surface shaders.
Preview Window
The Preview window shows you surface samples for the active
surface. You can access several preview options by clicking the Options
button.
Sample Size is the diameter of the sampled area on the surface. You
get the most accurate preview if you set this option to the approximate
surface size to which you are applying the current attributes. Preview
Type sets the shape of your sample surface.
You have several options for the preview Background. Checkerboard
is nice for surfaces with some level of transparency. If you select Layout,
it uses Layout’s backdrop settings. You can reduce jaggies in the preview
by using the Antialiasing option.
If Use Scene Lights is active, the lights from your scene will be used
instead of the default preview light. This option is applied as if the
preview object was at the Origin and also affects VIPER. Obviously, this
is only available if the Scene Editor is open from Layout.
The Refresh Rate setting determines how the preview is refreshed
when you make changes to surface settings. If you set the rate to
Realtime, the preview updates as you change interactive controls; for
example, if you adjusted a mini-slider. When it is set to Automatic, the
preview updates when you release the control. Manual requires you to
click on the preview window to update.
You can further tailor the preview to reflect only certain internal
channels (buffers) instead of the normal Rendered Output with the
Display mode pop-up menu. This is very useful when you want to
determine the effects you get on a specific channel. For example, if you
apply a diffuse texture, you may want to see the effects of your settings
on the actual diffuse channel.
NOTE
You can quickly set options by using the pop-up menu that appears
when you hold the RMB over the Preview window.
L I G H T WAV E 3 D 7 31.9
Color
Color is probably the most obvious surface parameter. It doesn’t take
much experience to know that if we want something to look like a
banana, we need to make it yellow, right? However, since you are dealing
with a 24-bit color palette and, thus, over 16 million colors, there are
probably thousands of shades of yellow. Moreover, other settings, such
as Diffuse, can have a dramatic effect on the final rendered color.
Luminosity
Luminosity refers to how much a surface appears to glow of its own
light. However, unless you use Radiosity (Lights > Global: Global Illum),
luminosity does not have any actual light emitting properties—you need
to add an actual light for that. A value of 0% is most common for this
setting, unless a special need arises such as the surface of a modeled
light bulb. This surface property is not the same as Glow on the
Advanced tab.
31.10 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
Diffuse
Diffuse (sometimes called diffusion) is the amount of light scattered
by a surface. A high level scatters a lot of light, and therefore, the
surface appears bright. A low level absorbs most of the light, and
therefore, the surface appears dark and dull. Metal and dirt surfaces are
good candidates for a low Diffuse level. Common values are 40% to 80%.
Surfaces must have some diffusion for shadows that cast on them to be
visible.
Specularity
Specularity is a kind of reflection or highlight that occurs on the
surface of smooth or shiny objects. This highlight is really the reflection
of the light source. High Specular levels are commonly used on glass
spheres, chrome bumpers, and so on. How the surface reflects this
highlight tells the observer if the surface is dull, smooth, shiny, hard, or
even metallic. Generally, the highlight assumes the color of the light
source that causes it, but you may change this with the Color Highlights
settings (Advanced tab).
Glossiness
When some level of Specularity exists, Glossiness determines how a
highlight spreads out. A low setting creates a large highlight, whereas a
higher setting creates a smaller highlight.
Reflection
Reflection determines how much a surface shows a reflection of its
surroundings. A mirror is an example of a highly reflective surface.
LightWave will ray trace reflections or you may use options that fake
them, which can substantially reduce rendering time. (See the discussion
on the reflection options on the Environment tab, later in the chapter.)
Transparency
Transparency lets you make a surface see-through; it is the opposite
of opacity. Now, whenever light passes through a transparent object, the
light will bend. An example of this can be seen when you look through a
glass of water or down through a clear pool of water. The amount of this
light bending is controlled by the Refraction Index.
Transparent diamond
31.12 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
Vacuum 1.00000
Air 1.0003
Cinnamon Cat 1.136
Carbon Dioxide, Liquid 1.200
Ice 1.309
Water 1.333
Acetone 1.360
Ethyl Alcohol 1.360
Sugar Solution (30%) 1.380
Alcohol 1.329
Flourite 1.434
Quartz, Fused 1.460
Calspar2 1.486
Sugar Solution (80%) 1.490
Glass 1.500
Glass, Zinc Crown 1.517
Glass, Crown 1.520
Sodium Chloride 1.530
Sodium Chloride (Salt) 1 1.544
Polystyrene 1.550
Quartz 2 1.553
Emerald 1.570
Glass, Light Flint 1.575
Lapis Lazuli 1.610
Topaz 1.610
Carbon Bisulfide 1.630
Quartz 1 1.644
Sodium Chloride (Salt) 2 1.644
Glass, Heavy Flint 1.650
Calspar1 1.660
Glass, Dense Flint 1.660
Methylene Iodide 1.740
Ruby 1.770
Sapphire 1.770
Glass, Heaviest Flint 1.890
Crystal 2.000
Diamond 2.417
Chromium Oxide 2.705
Copper Oxide 2.705
Amorphous Selenium 2.920
Dougbrainium 3.039
Iodine Crystal 3.340
L I G H T WAV E 3 D 7 31.13
NOTE
Also see the discussion on the refraction options on the Advanced tab,
later in the chapter.
NOTE
To control the amount of edge transparency, you must add a shader,
discussed later.
Translucency
Translucency allows back lighting. The effect can be seen when
someone (or something) stands behind a curtain and you see a
silhouette through the material. Other examples include seeing bones in
your hand with a flashlight in your palm, or bugs crawling on the
underside of leaves.
Translucent curtain
Bump Map
Nearly all real world surfaces have some amount of texture or
bumpiness. Such bumps are apparent due to the way light falls across the
surface. A Bump map is applied to a surface to give the appearance of a
texture. However, no real geometry is added and if you looked across the
surface from the side, the illusion could be ruined. Shadows and edges can
also reveal this lack of geometry in certain circumstances. The default
setting is 100%.
If you want your bumps to actually displace geometry, try the Bump
Displacement option (Object Properties) discussed in Chapter 9.
31.14 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
Left: Bump mapped ball. Right: Close-up reveals straight-edge polygons and no bumps
Surface Smoothing
Smoothing causes objects to appear to have smoothly rounded
surfaces even though the object is composed of flat-faced polygons. To
do this, LightWave uses a technique known as phong shading. If the edges
of two smooth-shaded polygons share vertices (points), they appear as
one continuous, curved surface. The shared edge between them is no
longer visible.
Smooth Threshold
By default, LightWave will not smooth across two polygons if the
angle between them is 90 degrees or sharper, unless you adjust the
Smooth Threshold. This value adjusts the range of the smoothing
function; it defines the angle beyond which LightWave will not smooth
over the seam between adjoining polygons. The angle is measured using
the surface normals of the adjoining polygons. If this angle is less than
the Smooth Threshold, the surfaces are rendered smoothly. The default
of 89.5° assures that any surfaces at right angles (90°) or greater to each
other are not smoothed.
NOTE
As with Bump, Smoothing does not actually change the surface’s
geometry. As such, the edges of a ball can still expose the straight
polygon nature of the object. If this becomes a problem, make the
actual geometry smoother.You can use modeling tools like Metaform,
for example.
Sharing Points
The concept of sharing points is important in surface smoothing.
Unlike the real world, objects, and their points, can occupy the exact
same space. A simple cube has eight points and six sides. Any one point
is shared by three sides. However, you can create a seemingly identical
cube that doesn’t share any points or sides. Each side would be a totally
independent polygon, thus there would be 24 points (six sides times four
points).
The obvious reason for using shared points and sides is that it
creates a more compact object. Remember, the simpler the object, the
faster it renders and the lower the amount of resources used (i.e., RAM).
However, sometimes you will find that you want the polygons separated.
Using Separation
Surface smoothing can occur only where two polygons share all of
the points along an edge. However, sometimes this smoothing is not
what you want. For example, if you were modeling something where you
wanted a visible physical break, like a seam, you’d want to cut the
polygons away and then paste them right back in. You may also find that
when you have a flat surface that rounds over a corner, separating the
flat polygons from the initial rounded polygons gives a more realistic
look.
If you examine objects around you, you should notice that they all
have seams. Very few objects in the real world are perfectly smooth with
edges that align. Separating polygons can add subtle detail to objects
that give them a real world look.
31.16 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
NOTE
Separating polygons will double the points along the previously shared
edge since each polygon now has its own set of those points.
HINT
Using the shortcut keys, X and V, to cut and paste, is a quick way to
separate polygons.
Double Sided
Sometimes you want to see both sides of a polygon, such as when
you want to go inside a model (and wall thickness is not a concern).
Also, if you import objects from other 3D modeling programs, either
directly or through a conversion utility, some polygons may end up
facing the wrong direction, which causes the object to render
improperly. Click Double Sided to treat all polygons on the selected
surface as two-sided.
As a consequence of using Double Sided, rendering time will increase
somewhat because LightWave must calculate more polygons. Note also
that Double Sided is only a surface attribute. The object, when loaded
into Modeler, will show the true single-sided polygons. To create true
double-sided polygons, see Chapter 26.
Comment
You can add a comment to the surface in the Comment field.
NUMERICAL SETTINGS
All of the numerical settings have mini-sliders. You can enter a
numerical value into the input field or use the slider. The range of the
slider is based on realistic settings; however, the input field will accept
L I G H T WAV E 3 D 7 31.17
values beyond the maximum and minimum possible with the slider,
including positive and negative values. Keep in mind, except for maybe
Luminosity, values outside the normal range of 0 to 100 percent will be
unrealistic.
Envelopes let you vary a value over time. For example, instead of
Luminosity having the same value throughout your animation, it can
differ on each frame. However, in any particular frame, it will have that
value over the entire surface. To vary the value over the surface area,
you must use a Texture, discussed next.
Envelopes use the Graph Editor, which is discussed in depth in
Chapter 8.
NOTE
Envelopes are not limited to surface values, so you will find envelope E
buttons throughout LightWave.
TEXTURE EDITOR
While you can vary a parameter over time with an envelope, the
parameter is not dynamic over the surface: the value for a particular
frame is the value for the entire surface. Textures, on the other hand,
essentially let you vary the value dynamically over the surface (as well
as in time). A Color texture is probably the easiest illustration. Instead of
31.18 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
using the same color on a surface, you can map a picture (a color texture
image map) onto the surface that lets the color differ over the surface
area.
You can use image maps for more than just color. On other surface
parameters, the color element is ignored and just the brightness of each
pixel varies the value over the surface. For example, you can use an
image map with Specularity to suggest scratches on a surface. Textures
let you divide a surface into thousands of smaller areas and apply a
different level of the surface attribute to each individual area.
In addition to Image Map textures, you can also use Procedural
Textures and Gradients. Procedurals are more or less mathematically
computed images. Gradients act as a type of envelope, except that the
value can change over a condition other than time. Select these options
by using the Layer Type pop-up menu.
L I G H T WAV E 3 D 7 31.19
Texture Layers
LightWave can layer surfaces infinitely; once you set the original
texture, you can add another layer by using the Add Layer pop-up menu.
You can choose to add any of the layer types—the type can be changed
later if necessary.
The layer list window shows you all of the layers. The first column
indicates whether the layer is active (checked) or not (blank). You can
toggle the status by clicking in the column. The next column shows the
layer name, which indicates the type of layer. Next is the opacity
percentage, followed by the Blending mode (e.g., + for Additive).
You can choose which layer to work on by simply clicking on it in the
window. To remove a layer, select it and then click Remove Layer.
NOTE
The buffer contents will remain until you quit LightWave.
Layer Order
Texture layers are always listed in order from top to bottom. New
layers are added on top of existing layers. Keep this in mind when you
set up multiple layers. For example, if you want an image map with
fractal noise across the entire surface including the image, you must map
the image first and add the fractal noise afterwards. Of course, you can
reorder layers by dragging them with your mouse.
31.20 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
NOTE
The base surface settings—those set on the Surface Editor’s Basic
tab—always sit beneath all layers.
Blending Layers
To set the opacity of a texture, use the Layer Opacity field. Reducing
the value from 100% makes the overall texture more and more
transparent. Setting it above 100% can force a texture layer to unnatural
values.
The Blending Mode determines how the layer is blended with other
layers. With Normal, underlying layers will be totally covered (i.e.,
replaced) by the texture, assuming Layer Opacity is 100%. The texture
acts like an alpha matte; thinner areas of the texture allow the underlying
layers to show through. If Layer Opacity is 50%, you get 50% of the layer
and 50% of the underlying layers. Additive, adds the texture (times the
Layer Opacity) to underlying layers.
NOTE
In versions prior to 7, “Normal” was called “Additive.” The current
Additive mode is new for version 7.
Top layer: alpha image. Middle: image being cut. Bottom: Smoky1 procedural
Left to right:The three layers from top-most to bottom-most, the Surface Preview window
31.22 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
Texture Displacement
NOTE
To see image maps in the Layout view, make sure the viewport is set
to Textured Shaded Solid.You can change this on a viewport’s titlebar.
NOTE
See Chapter 28 for information on UV mapping.
Generally, you should pick the shape that best describes the surface
shape. (Note that this is not necessarily the object’s overall shape since
that may be made up of many surfaces.) For example, if you were
mapping a label image on the sides of a soda can, you’d use Cylindrical.
For a planet, you’d use Spherical. For a wall, Planar would do the trick.
For a brick, Cubic might be best.
What about a die? Cubic? This may be a trick question. Since a die
has a different number of dots on each side, you’d use a different Planar
(or UV) map on each one.
L I G H T WAV E 3 D 7 31.23
Planar Projection
Planar projection will project an image onto a surface as if you were
projecting the image through a slide projector onto a wall. Planar image
maps are best used on flat, or nearly flat surfaces like the sides of
buildings and the screens of video monitors.
For the X and Y axes, Planar images are projected from the positive-
axis side of a surface towards the negative-axis side. This means that the
image appears correct when viewed from the positive side and it
appears reversed if you view it from the negative side. For the Z axis,
Planar images are projected from the negative side.
HINT
If you encounter this reversing effect and it isn’t what you want, you
can reverse an image back by making the Scale value negative for the
axis that needs to be reversed.
Cylindrical Projection
Cylindrical projection wraps an image around the selected axis like a
paper towel wrapped about a cardboard tube. By default, an image is
wrapped so it covers the surface once, allowing the side edges of the
image to meet on the back of the surface. A soda can or tree trunk are
both good examples of surfaces that would use Cylindrical projection.
31.24 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
Spherical Projection
Spherical projection wraps an image around a surface as if you were
stretching a flat piece of rubber around a ball, but without having to
worry about the edges all meeting. Planets, basketballs, and marbles
could all use a Spherical projection.
Cubic Projection
Front Projection
The concept of Front projection is very simple and quite similar to a
chroma-key effect. However, instead of applying an image where a color
screen is, it replaces the selected surface(s) with a selected image.
In most cases, the image you select for a front projection map is the
same image you use for the Background Image on Layout’s Compositing
tab of the Effects panel (Scene > Effects: Compositing).
Scale, Position, and so on, are not relevant with Front projection. It is
always the size (and frame/pixel aspect) it would be if loaded as a
Background Image. As such, changing the Resolution or Pixel Aspect
Ratio on the Camera Properties panel will also affect the Front
projection.
31.26 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
The ground object is just a flat box with Front projection image
mapping that uses the same image as the background. Its job is merely
to catch the cow’s shadow. The cow is placed with her feet slightly
below the level of the ground object, so it looks like she is standing in
dirt.
NOTE
Don’t use the Soft Filter (Camera Properties panel) with Front
projection. It will soften only the image used on the object surfaces,
not the background.
Fixed Projection
Front projection surfaces will always look the same no matter where
you move the object or which way you rotate it. The image does not
normally stick to the surface. However, if you activate the Fixed
Projection option (previously Sticky Projection), it fixes (i.e., locks) the
projection from the camera’s perspective at the specified Time.
The default unit of measure for Time depends on the Frame Slider
Label setting on the General Options tab of the Preferences panel in
Layout or the Time Format setting on the Display options panel, Units
tab in Modeler. You may specify the unit of measure by appending f for
frames or s for seconds to the entered number (e.g., 22f for frame 22, 31s
for 31 seconds). You may also enter SMPTE timecode, like 00:00:01:16 for
one second, frame 16. The entry is converted to the default unit of
measure.
Use Fixed Projection to create parallax with two-dimensional images
by using a technique called camera mapping. (Use the Reference
Camera setting to select the camera, if you have multiple cameras in
your scene.)
Essentially, you set the frame where the texture will be pin-registered
to the background (like normal front projection mapping). On all other
frames, the texture is stretched to compensate for more or less of the
texture being visible, which is caused by factors like the camera being
moved.
For example, if you had a picture of some buildings, you could place
the LightWave camera in the same place as the original camera in
relation to some simple 3D buildings. Then, project the picture onto the
buildings and lock it at frame 0. You’ll also need a doctored background
image/object—also using Fixed Projection—that reveals stuff behind the
buildings. If you move the camera forward, it will appear to fly into or
around the buildings.
L I G H T WAV E 3 D 7 31.29
Left: Front projection map for buildings and ground. Right: Front projection map for background.
HINT
Use your paint program’s rubber stamp function to erase areas where
background Fixed Projection surfaces will be revealed.
Background image FP mapped to large plane. Foreground image FP mapped to other simple geometry
Left: Initial frame. Right: Last frame. Camera flies into image
31.30 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
NOTE
Obviously, there are great limitations in getting three-dimensional data
out of a two-dimensional picture. However, short slow-moving
sequences can be pretty realistic.
Image Properties
After you select one of the Projection settings, use the Image pop-up
menu to select or load an image/sequence. Clicking the Edit Image
button launches the Image Editor panel. Here you can adjust certain
aspects of the image(s).
The available image settings on the Texture Editor panel vary
depending on the Projection setting. Two settings always appear,
however. Pixel Blending smoothes out the pixelization that can occur
when a camera gets close to the mapped surface. Texture Antialiasing
reduces artifacts in finely-detailed image maps and yields a softer look.
Select it to help reduce or remove scintillation—those annoying lines of
flashing pixels and moire patterns that are especially noticeable when
fine lines in a texture image converge in perspective (particularly on
television displays). Generally, choose Texture Antialiasing when a
pattern is somewhat distant in the scene, such as a receding
checkerboard pattern, although it can help with other busy texture
patterns and images as well.
NOTE
Do not confuse Texture Antialiasing with Antialiasing on the
Camera Properties panel.The latter one works primarily on the edges
of objects.
NOTE
Texture Antialiasing can cause the mapped image to appear blurry.
Planar, Cubic, and Cylindrical image map projection have tiling (i.e.,
repeating) options, which you can set independently for the horizontal
and vertical repeating directions.
Mirror Mirror tiles the image, but flips the image horizontally or
vertically.
Edge Edge extends the edges of the image to cover the surface.
This setting works best when the outer edges are a solid
color.
NOTE
The repeating options are relevant only if the Scale, Position, and
Rotation settings (at the bottom) are set such that the image will not
fill the surface area.
Cylindrical and Spherical have wrapping options that set how many
times the image appears horizontally Width Wrap Amount, and
vertically, Height Wrap Amount (not applicable to Cylindrical). This
sets how many times you want the image wrapped for the given Scale
values. Generally, you’ll want this set at 1.
NOTE
Wrap amounts can be negative, which will reverse the image as it is
wrapped around in the opposite direction.
L I G H T WAV E 3 D 7 31.33
Texture Placement
Once you set the image properties, you must now scale and position
the image. Textures are initially positioned referenced to the X, Y, or Z
Texture Axis. For Planar projection, think of the axis as a nail used to
hold a photograph to a wall. For Cylindrical, think of the axis as the
cardboard center of a roll of paper towels. Spherical can be thought of in
much the same way. You cannot select an axis for a Cubic map, however.
For example, a soda can would use a Y Texture Axis because it sits
vertically. The fuselage of an airplane, on the other hand, would
probably use the Z Texture Axis.
NOTE
You should generally model objects so that they face the positive Z axis.
NOTE
Different combinations of Texture Axis and Rotation can achieve
the same results.
Generally, you want to match these settings with the actual surface.
Automatic Sizing causes LightWave to calculate the Scale and Position
of a selected surface and input those values. It computes an imaginary
bounding box around all areas using the current surface. This will fit an
image map perfectly onto the surface. (Of course, it’s our definition of
perfect.)
31.34 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
HINT
Use Automatic Sizing for starting values when using procedural
textures.
If the Scale is smaller than the surface size, an image map will tile
across the surface (assuming you have one of the repeat options active).
You might also see the tiling effect if the Position is not set to the actual
surface center.
Because LightWave’s textures are three-dimensional, there is no rule
stating that the center of a texture must be located somewhere within
the bounds of the surface. You can place the texture center outside of
the surface and still get a texture to appear across the surface. Textures
extend in all directions throughout the virtual space in Layout, but
appear only on the surfaces that are set to display them.
There are definitely times where you don’t want the texture sized
exactly to match the surface. Such is the case with procedural textures,
which usually look better when the Scale is smaller than the surface size
because it adds more detail. Another example is when you use only part
of an image that is texture mapped.
Falloff
The Falloff values specify the apparent falloff for every unit of
distance moving away from the texture center, defined by the Position
settings. (The unit of distance is defined by the Default Unit setting on
the General Options tab of the Preferences panel.) When you animate the
Position with an envelope, the position at frame 0 is used as the center
for falloff purposes.
The Type pop-up menu determines the shape of the falloff. (In
previous versions, the falloff was always cubic.) Linear Falloff types (i.e.,
LinearX, LinearY, and LinearZ) operate only in one direction. If you use
100% LinearX, for example, the texture will fall off only in the positive X
direction from the texture center. To fall off towards negative X, use
-100%.
With Cubic, the falloff occurs on both the positive and negative sides.
You can achieve a linear-type falloff, but in both directions, by using
Cubic and setting the two axes you do not wish to fall off to 0%.
L I G H T WAV E 3 D 7 31.35
NOTE
An object’s pivot point does not affect surfacing.
If you click Yes, you will store the reference item’s state at the current
frame in the object. (Don’t forget to save it.)
World Coordinates
Normally, textures are locked to a surface and travel with it, as the
object is moved, stretched, rotated, or deformed. Selecting World
Coordinates will lock the texture to LightWave’s Origin instead of those
of the surface. Moving the object now will result in the object traveling
through the texture. All texture settings continue to be valid, but now are
relevant to the world coordinates.
World Coordinates can create the look of light beams moving
through a fog. You create this effect by using transparent light beams
with a fractal noise texture for Color and/or Luminosity activated. As the
light beam is moved about, it will move through the fog created by the
fractal noise. Using World Coordinates on a Transparency map with
falloff can make a spaceship cloak (turn invisible).
31.36 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
You can move the texture by using the center drag handle. For Planar
and Cubic mapping, to resize the texture, drag any of the circle handles
in the corners. To rotate Planar, spin the guide by dragging one of the
rotation handles—these are lines coming from the center. (Rotation is
sometimes difficult, so you may want to set this numerically.)
For Cylinder mapping, you can interactively adjust the mapping axis
size. There are no interactive adjustments for Spherical mapping.
You can automatically create a UV map by selecting that option and
entering a new UV map name or choosing an existing UV map from the
pop-up menu.
The Camera mapping mode lets you create a UV map from the
perspective of any point in 3D space, similar to pointing a camera in
Layout. You can rotate the perpendicular axis by dragging the tip of the
pyramid. The X handle moves the entire outline.
L I G H T WAV E 3 D 7 31.37
Note that you can affect only the first layer, if you have multiple
layers in the texture. As such, you may need to drag a layer to the
bottom of the list (in the Texture Editor), if you want to use Texture
Guide on it.
NOTE
OpenGL will show only the first layer if a texture has multiple layers.
NOTE
Remember this is a tool, so deactivate it by selecting it in the menu
again (or select another tool).
NOTE
All Procedural Textures are available for use on each surface attribute.
NOTE
Generally, you cannot see procedural textures in a viewport. However,
see Chapter 14 for a procedure to use the TextureFilter filter to make
this possible.
Texture Scale
Generally, you want your scale to be a fraction of the surface size to
properly see the texture on the surface. Unless you know the exact
dimension of your surface, it may be handy to click Automatic Sizing
first and then modify the resulting Scale values.
HINT
Use LightWave’s math feature and append, say, “/4” to the automatic-
sizing values.This divides the value by four. For example, adding “/4” to
a value of “24 m” would look like “24 m/4” (don’t enter quotes).When
you move to the next field the result is calculated automatically!
L I G H T WAV E 3 D 7 31.39
Brick
Bump Array
Checkerboard
Crumple
Crust
Ledge Width alters the apparent depth of the valleys formed by the
ridges in the pattern. The values that make visible changes in these
patterns are subtle, so change them in small increments until you
understand their effects well (on the order of 0.1 at a time). Ledge Width
will affect the sharpness of the slope falling off of the discoloration
pattern. The default values create a ridge just along the outside of the
pattern discoloration. Higher values move the ridge further outward
from the pattern, lower values move it inward. Most useful values will fall
between 0.3 and 1.0.
Dots
FBM
FBM is another fractal pattern that uses the same settings as Fractal
Noise.
FUN FACTS
Fractional Brownian motion (FBM) is named after botanist Robert
Brown, who observed the random movement of pollen grains. Einstein
later explained that the movement was due to surrounding molecules
moving in random directions.
31.42 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
Fractal Noise
NOTE
The Fractal Bumps option in previous versions of LightWave—only
available for bump maps—was really Fractal Noise with Contrast
and Small Power set to .5.
Grid
HoneyComb
Marble
HINT
Select a Vein Spacing and Texture Axis that you like first, then set
Frequencies, Turbulence, and Scale afterward.
Ripples
Smoky1, 2, and 3
The Smoky textures use the same settings as Fractal Noise with the
addition of a Turbulence control, which lets you adjust the pattern
disturbance.
Turbulence
Underwater
NOTE
You can generate actual real world effects by using Layout’s Caustics
feature (Lights > Global: Global Illum), but rendering times will be
significantly greater.
Value
The Value procedural lets you create a layer of uniform value or
color. You can use this to composite layers with alpha channels.
Veins
Ledge Width alters the apparent depth of the valleys formed by the
ridges in the pattern. The values that make visible changes in these
patterns are subtle, so change them in small increments until you
understand their effects (on the order of 0.1 at a time). Ledge Width
affects the depth of the veined ridges. Values just above the default
setting have the most visible effect. The default values create a ridge just
along the outside of the pattern. Higher values shift the ridge further
outward from the pattern, lower values move it inward. Most useful
values fall between 0.2 and 1.0.
Wood
HINT
Start by selecting a Ring Spacing and Texture Axis that you like
first, then set Frequencies, Turbulence, and Scale afterward.
Coriolis
Coriolis Scale scales the value calculated by the coriolis texture. Its
effect is to vary the contrast between the clouds and the underlying
surface. Smaller values create less contrast, and larger values display a
high contrast between the clouds and surface.
Coriolis Twist is the amount of twist or rotation of the clouds from
the poles to the equator.
Coriolis Offset is added to the value calculated by the coriolis
texture. Larger values create more dense clouds and smaller values
result in fewer, thinner clouds.
Cyclone
Dented
FBM Noise
Hetero Terrain
Hybrid Multi-fractal
Multi-fractal
Puffy Clouds
Ridged Multi-fractal
Turbulent Noise
The Input Parameter defines what item will dynamically control the
parameter.
Previous Layer Previous Layer uses the brightness data from the
immediately underlying layer.
Bump Bump uses the height of surface using the Layout’s
Default Unit on the General Options tab of the
Preferences panel.
Slope Slope changes the parameter based on the angle (in
degrees) of the surface relative to the ground (flat on
Y axis).
Incidence Angle Incidence Angle uses the angle (in degrees) of the
surface relative to the Camera.
NOTE
Other Input Parameter options may be available depending on what
feature the gradient texture controls.
To add a key:
1 Click on the Gradient bar and hold down your LMB. A key marker that
looks like an arrow will appear.
If you continue to hold the mouse button down, you can drag to
refine the position of your key. The Parameter field will change as
you drag your mouse. Note that this value is not limited to whole
numbers.
NOTE
To prevent accidentally adding a new key, you can drag the key using
the arrowhead.
NOTE
When you edit a surface Color, the value is a color selector. All other
types of textures have a numeric input field for value.
NOTE
Although you can also drag the middle of the arrow, it’s not
recommended because you can accidentally add a new key.
NOTE
Use values from 0 to 1 for older filters requiring 0 to 255 integer
values.
The Special Buffer 1 field relates to the first filter in the image or
pixel filter list on the Processing tab of the Effects panel. Special Buffer
2 relates to the second image filter, and so on. The Special Buffer 4 field
works on the fourth filter and all that follow it.
Adding a Glow Intensity amount will render a glow around the
selected surface. The overall amount and intensity of the glow are
determined by the settings entered for (glow) Intensity and Glow Radius
on the Processing tab of the Effects panel (Scene > Effects: Image
Process). The glow will appear in the color of the surface, even if it is
texture mapped.
NOTE
Enable Glow must be active on the Effects panel in order for
LightWave to calculate glows around surfaces.
Render Outlines renders the outline of a polygon rather than its face.
All of the polygons belonging to the current surface will render with their
edges appearing in the surface color. If you apply an image or texture
map to the surface, the outlines will show portions of this mapping. Use
this option to surface open frameworks or the gaps around hatches. Line
Size is outline line size in pixels. Lines are drawn with the current
surface color.
The Vertex Color Map pop-up sets the vertex color map you wish to
use. This feature colors the object vertices. (See Chapter 28 for details.)
Color Highlights causes a surface’s own color to show through a
specular highlight. Normally, a specular highlight shows in the color of
the light striking the object. For example, a white light illuminating a red
ball leaves a white specular highlight on the surface of the ball. But with
Color Highlights, the highlight appears red. A color highlight blends the
object’s surface color with the color of the light source, which causes a
more metallic appearance. When a reflection map is used, reflection
maps are also tinted by the surface color.
Color Filter is available when a surface has some degree of
transparency. It allows the surface color of an object to tint all of the
objects seen through it. A good example is a green wine bottle. Light
shining through the bottle tints all objects seen behind it with green.
With Additive Transparency, the color of an object is added to the
colors of the objects visible behind it. (Obviously, the surface must be
somewhat transparent.) The surface therefore appears brighter in color
and intensity, as if it was overexposed. The brighter color will tend
31.58 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
ultimately toward white (255, 255, 255), because this is the brightest it
can reach. Use this control to enhance the glow of rocket flames, jet
exhausts, and the like.
Diffuse Sharpness causes a more severe shadow cutoff zone on
objects rather than the gradual falloff of light. It enhances the
appearance of contrast between the lit and unlit sides of the object.
Diffuse Sharpness is usually used for very large-scale objects, like
planets.
Environment tab
Refraction Options have the same available settings but affect what
is refracted through the surface. Note that if you select Spherical
Refraction Map, you will not see any objects through transparent
surfaces. If you select Ray Tracing + Spherical Map, you should see
other objects being refracted, with the spherical map behind them. The
rays will bend and go off until they either hit an object or the map.
NOTE
If you use Ray Tracing options, you must activate the Ray Trace
Reflection and/or Ray Trace Refraction options on the Render
panel (Rendering > Render Options).These will also take much
longer to render.
NOTE
Obviously, your success in using either of these mapping options
depends on how closely the viewer can scrutinize the affected surface.
NOTE
If a shader does not appear in the pop-up menu and you think it
should, you may need to add the plug-in. See Chapter 4 for information
on how to do this.
BRDF
BRDF (Bidirectional Reflectance Distribution Function) is really a
multi-function shader. First, you can totally exclude specified lights from
affecting the surface. You do this by unchecking the light in the list.
BRDF’s second function is to let you stack up to three specular
highlights with different settings. Multiple specular layers are important
for surfaces like the car paint on a shiny red 1996 Mazda Miata named
Seiko, where the first layer of paint is the color red and has a less glossy
specular highlight and the top layer of paint is actually a sealer that is
clear and high gloss (at least when it’s been washed recently). So you
can now have a low-gloss colored specular under a high-gloss white
specular.
Real world surfaces like machined metals reflect light unevenly,
yielding what is often called a brushed-metal look. This is called
anisotropic distortion, and it’s the shader’s third function. Compared to a
smooth surface, these surfaces will have a softer and broader specular
highlight.
L I G H T WAV E 3 D 7 31.61
BRDF panel
On the left, you select which lights to affect. On the rest of the panel
you set up multiple specular highlights, and make the shape of the
highlight different by applying anisotropic distortion. The BRDF specular
settings work with the normal Specular surface attribute, so you must
have some Specular on the surface to see any change.
For anisotropic shading, you must know two directions lying in the
surface. The specular reflection will be stronger along one direction. An
example is a surface that has long highlights along fine grooves and
short ones across them. With the Anisotropy and AnisotropicII
reflection types, you can set Alpha and Beta settings, which essentially
determine two different angles of disturbance. These effectively add tiny
grooves to the surface that make the specular highlight imperfect—sort
of like a micro bump.
With AnisotropicII, you can specify a UV map to define these
directions. The Alpha parameter is essentially an angle for groove
sharpness and blends the plain reflection with the anisotropic
reflection—90 degrees is 0% anisotropic. Beta is the angle between the
the U direction and the maximum reflection, and so it rotates the
grooves in relation to the UVs.
31.62 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
NOTE
The UV Direction map works only with AnisotropicII.
There are many models for anisotropy and two are featured in this
shader. Basically, these differ in the pitch and bank variance on a surface
of the grooves.
Edge Transparency
The Edge Transparency shader affects the degree of clarity and
definition for the polygon edges belonging to a transparent object.
L I G H T WAV E 3 D 7 31.63
Edge Threshold = .5
NOTE
When you fine-tune for glass-like objects, we recommend you use
Limited Region (Camera Properties) to render a small portion of
the image at full resolution.Test rendering at lower resolutions may
cause jaggy edges that won’t be visible at your higher final resolution.
Fast Fresnel
In the real world, the angle between the viewer and a surface affects
the amount of light that is reflected and refracted. For example, a lake is
often nearly clear close to the viewer and gets gradually more reflective
farther way.
The FastFresnel shader works in combination with the basic surface
parameters that you set and then modifies those settings based on
viewing angles and the FastFresnel parameters.
31.64 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
FUN FACTS
The fresnel effect was discovered by French physicist Augustin Jean
Fresnel (pronounced “ fra nel”)
Halftone
In print, halftone screens are made up of dots that control how much
ink is deposited at a specific location. Varying their size and proximities
creates the illusion of variations of continuous color.
31.66 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
The Spacing and Variation settings set the spacing of the pattern and
a percentage that you can use to vary it (for randomness), respectively.
You can choose different pattern shapes with the Spot Type pop-up
menu. The Screen Angle value lets you change the angle of the pattern
from the true horizontal.
If you specify a UV Map, the shader determines a direction in the
surface to align the lines or the crosshatching. HalftoneShader is
calculated like a cubic texture, if no UV Map is specified.
Interference
The Interference shader adds the sort of distortion seen on an oil
slick. This interference pattern is caused by the light reflecting between
two layers of various thickness. In the case of an oil slick, light reflects
between the water and the oil. This often appears rainbow-like, where
you can see all spectral colors swirling about. This shader adds all
spectral colors in a banding fashion and uses incidence angles to vary
which colors are visible.
Spectrum Scale determines how far through the color spectrum the
shader will travel across the slope of the surface. This is dependent on
the Min and Max Angle Range settings. For example, the default settings
of Spectrum Scale=100%, Min=42, and Max=50 tell the shader to travel
through the entire spectrum (100%) as the angle of incidence changes
from 42 degrees to 50 degrees, or a delta of 8 degrees. The spectral range
colors are red, orange, yellow, green, blue, indigo, and violet. If you
change only the Spectrum Scale to 50%, the surface travels only through
red, orange, yellow, and green, across the same angle.
Activating the Single Band option restricts the spectral change to a
single ring between the Min and Max angles. In effect, this keeps the
texture from repeating across the entire surface.
The Add Color Mode adds the color values of the interference
pattern to the original surface colors. If a pixel was originally shaded at
100, 100, 100, and the interference color for that pixel was to be 0, 0, 100,
the resulting pixel value will be 100, 100, 200. The Multiply option
multiplies the original pixel values by a number between 0 and 1. If the
L I G H T WAV E 3 D 7 31.67
original pixel value was 255, it is multiplied by one. If it was 0, the new
pixel value is multiplied by zero. Intermediate values are altered on a
sliding scale.
The Blend Color Mode blends the pattern with the original surface
attributes using the percentage field. At 50%, the default, the interference
pattern is seen on top of the original surface with a strength of 50% of its
own color values.
RealFresnel
The RealFresnel shader is similar to FastFresnel, but based on real
physics and thus features few user-definable controls. It is essentially set
up to create a transparent item by calculating falloff for the transparency
value with the Fresnel equation.
RealFresnel shader
SuperCelShader
SuperCelShader alters the shading algorithm to make large bands of
solid color across a surface—like a cartoon—rather than a smooth
gradient between light and dark areas. This shader should be used with
Silhouette Edges, Unshared Edges, Sharp Creases, and Surface Borders
(Object Properties panel, Edges tab). (See Chapter 9, “Polygon Edges.”)
Brightness
The Brightness settings control how bright the corresponding zone
will be. These settings are totally independent; however, in most cases,
you want them to get progressively higher. Values should range from 0
(black) to 100% (brightest), although higher settings are possible.
Colored Lights
Activating the Use Light Colors option will tint the surface with the
light color. Normally, the normal Surface Color attribute determines the
surface’s color.
Specular Highlights
If Specular Highlights is not active, the specular highlights of the
surface appear normal (i.e., as without SuperCelShader). Activating this
option results in cartoony-looking specular highlights.
The Min and Max specular settings define which part of the specular
highlight to show. A value of 0% equates to its darkest part and 100%
equates to its brightest part—this range can often be hard to see in a
normal specular highlight because they are naturally bright. Making the
31.70 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
Min and Max values the same creates a hard edge to the highlight, while
separating the values creates a smoother transition. The higher the Min
value, the smaller the specular highlight will be.
Left: Low Min setting equal to Max setting. Right: High Min setting equal to Max setting
Brightness controls how bright you want the overall highlight to be.
Saturation determines how much of the surface color you want to
saturate the highlight.
Surface Baker
The Surface Baker surface shader allows the baking of lights,
shadows, textures, and so on. You can save this information to an image
to UV map back onto the object, or you can apply the information
directly to the object’s vertices. After you use Baker, you can see
complex textures in real-time in your viewports!
L I G H T WAV E 3 D 7 31.71
If the surface has sharp creases or is not smooth, you may not want
to interpolate across polygon boundaries. Uncheck Continuous Map:
this essentially turns off polygon smoothing and the map will change
sharply at each vertex. You might, for example, keep this option off if
you were baking a room and did not want to smooth between the walls.
Bake Entire Object is a time-saving option that lets you add Baker to
a single surface and create its results for all of the object’s surfaces.
You can independently choose to bake in color, diffuse shading (e.g.,
bumps and diffuse textures), illumination (all the lighting from the scene,
including shadows, projection images, even radiosity and caustics), as
well as other shaders in the surface baking computation.
Baking the illumination takes the lighting environment into
consideration for the diffuse reflection. If Bake Illumination is off, it's like
the surface is calculated in an environment without lights and 100%
white ambient color. If it is the only option on, then you bake only the
light intensities that reach the surface and discard the surface settings.
NOTE
When baking surface shaders, Baker can be anywhere in the shader
list. It does not need to be at the top or bottom.
Baking Tips
Due to the complexity of the computations, only polygon faces with
three or four vertices can be baked. Other faces are ignored. (Tripling
your polygons will ensure you meet this requirement.) Moreover, some
portion of the surface you are baking must be visible to the camera at
31.72 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
Left: UV map created for a sphere. Right: Image created with Baker
NOTE
Since the Object mode samples only at each vertex, it computes much
faster than the Image mode.
NOTE
Baking to a vertex color map saves RGBA data, using floating point
values for RGB, not limited to 1.The alpha value is 1.0. Baking to an
image can also save RGBA data, using floating point values for RGB,
not limited to 1. However, the alpha channel is saved only if the file
format supports it and the wireframe is saved in the alpha channel.
To use Baker:
1 If you plan to use the Image mode, you must first create a UV map in
Modeler.
2 In Layout, add the Baker surface shader to the target surface.
3 Select the surface attributes you want to bake in.
4 Select the Bake To mode.
5 Set the vertex color map name (VMap Name) or Image File Name,
depending on mode used.
6 Close the panel.
7 Render a frame (F9).
L I G H T WAV E 3 D 7 31.75
NOTE
Vertex color maps are discussed in Chapter 24.
Instant Radiosity
You can use Baker and radiosity to compute an accessibility map. An
accessibility map shows how accessible a point is on the surface, which
lets you create dirt, weathering, or radiosity lighting effects. Surfaces are
normally darker in grooves and creases, not only because less light
reaches these areas, but also because dirt has a tendency to accumulate
there.
To simulate this effect:
1 Here is the groovy object in Layout before turning down the lights.
2 Set lights and ambient intensity to 0%. Enable radiosity. Set the
backdrop color to white. The object will turn black in the viewport.
3 Set the surface color to white with 100% Diffuse.
4 Add Baker to the surface and Bake to Object.
31.76 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
5 Render a frame. You’ll see something like the image that follows. Only
the grooves get some shading due to radiosity.
6 Remove Baker and add the Vertex Color Map you just created. Set
your basic surface parameters as you would normally (e.g., change
the color, reduce Diffuse, and so on).
7 Notice how the object now has some nice shading in its grooves,
compared to the image in step one. You’ve basically preprocessed
radiosity, which can save a lot of time, particularly on static objects.
Note that since you apply coloring only to the points, the mesh needs
to be sufficiently detailed and have a good uniform distribution of
vertices.
L I G H T WAV E 3 D 7 31.77
ThinFilm
Similar in effect to Interference, the ThinFilm shader also changes the
color spectrum based on the surface’s angle to the camera. It can be
used for effects like an oil film on water. Primary Wavelength is the
color in the spectrum that the shader will use as its base color. You may
either enter the wavelength value or simply click on a color in the
spectrum. Angle Variation is the angle at which the colors will start to
shift.
When Color Mixing is set to Add, it adds the color values of the
interference pattern to the original surface colors. If a pixel was
originally shaded at 100, 100, 100, and the interference color for that
pixel was to be 0, 0, 100, the resulting pixel value will be 100, 100, 200.
The Multiply option multiplies the original pixel values by a number
between 0 and 1. If the original pixel value was 255, it is multiplied by
one. If it was 0, the new pixel value is multiplied by zero. Intermediate
values are altered on a sliding scale.
When Color Mixing is set to Blend, it blends the pattern with the
original surface attributes using the percentage field. At 50%, the default,
the interference pattern is seen on top of the original surface with a
strength of 50% of its own color values.
ZShader
ZShader lets you vary the values of certain surface attributes over a
specified distance from the camera.
Define the distance from the camera range using the Min and Max
fields. Activate the attribute you want to vary by selecting its button.
Enter the values for the minimum and maximum distances in the fields
provided. In-between values will be interpolated.
31.78 C H A P T E R T H I R T Y- O N E : S U R FA C E E D I T O R
SURFACING IDEAS
By no means should you restrict yourself to using, say, a procedural
texture for what its name implies. The unlimited combination of settings,
layers, and different surface attributes yields an infinite number of visual
possibilities.
You are encouraged to load and render the various objects that come
with LightWave. Study their surfacing techniques. Change them if you
want. However, do not fall into the trap of thinking the surfaces are
perfect. Many of them are far from it. Surfacing is an art form and 3D
artists each have their own opinions on the best approaches. You need
to develop your own.
SURFACE MANAGEMENT
You can save surface attributes in a special surface file that you can
re-use later. (Your Surfaces subdirectory should contain a multitude of
pre-defined surface files.) Use the Load and Save buttons to do this. Use
the Rename button to rename the surface.
NOTE
When you load a surface file, remember that the surface texture
Scale, Position, and so on are also loaded.Thus, if the object you
apply the surface to is a different scale, you may need to tweak texture
positioning data.
chapter32
Shadow and Light
L I G H T WAV E 3 D 7 32.1
C hapter 32:
Shadow and Light
Along with objects and the camera, lights are a basic element in any
LightWave Scene. In Layout, a Scene must always have at least one light.
In fact, LightWave will not allow you to remove the last light source. If
you really don’t need it, you can just turn it’s Light Intensity to zero or
deactivate the light on the Scene Editor (see Chapter 12).
LightWave has several types of lights, and you can give them different
names, colors, and attributes. Along with lens flares, volumetric and
shadow casting options, you can control light with a high degree of
precision. All of these features are found within the Light Properties
panel. LightWave also features radiosity and caustic light effects, which
can add tremendous realism to your scenes.
string of dominoes by placing one light aimed at the face of the first
domino in line. Of course, you may not want the light to go past the first
domino or through the ball and so there are options that allow for this
realistic behavior as well.
LightWave lights also differ from the real world because you can have
negative lights that take away color, as well as diffuse and specular
shading.
DISPLAY SIZE
Lights are displayed on the Layout screen in a size relative to the
Grid. If you increase or decrease the Grid Square Size on the Display
Options tab of the Preferences panel (Display > Display Options), all
lights change size to match the grid. This does not affect the light
source’s coverage or intensity at all, only its visual representation. Also,
the true light source is actually located at a center point within the
visual representation of the light.
To add a light:
Choose Items > Add > Lights and select the desired light type from
the submenu.
NOTE
A dialog prompts you for a name when you add lights. Click OK to
accept the default.
To remove a light:
Select the light and choose Items > Clear > Clear Selected Items or
Clear All Lights.
L I G H T WAV E 3 D 7 32.3
EXCLUSIONS
You can exclude lights, radiosity and caustics from affecting certain
objects. (See Chapter 9 for more information.)
SAVING LIGHTS
Make sure you turn the lights off after you exit a room... No wait.
That’s saving electricity. Choose File > Save > Save Current Light to save
the current light to a file. You save normal light settings as well as lens
flare and volumetric light settings. You can add the light to a scene by
choosing File > Load > Load Items from Scene and selecting the
previously saved light file—which is really just a scene file with only light
information.
32.4 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
LIGHT TYPES
LightWave has several types of lights, each with their own
characteristics, features, and abilities. Once you add a light, you can
change its type by changing the Light Type on the Light Properties
panel.
Distance light
NOTE
Because LightWave, by default, places one Distant light aimed from the
upper left to the lower right in a scene, you can simply load any object
and immediately hit the Render (F9) button (without setting any key
frames) to see what the object looks like.
Point light
Intensity Falloff
Point lights, as well as Spotlights, can be set to fall off over a specified
distance. You activate the option on the Intensity Falloff pop-up menu.
The falloff can be Linear or non-linear. The non-linear option Inverse
Distance reduces intensity as the light moves farther from its source.
The Inverse Distance ^2 uses a higher level of reduction.
The Range/Nominal Distance values set the distance from the light
where the light’s intensity is zero.
In orthogonal views, the falloff area is visible as a circle around the
light. The light will fall off to zero exactly at the edge of the circle.
NOTE
If you do not use Intensity Falloff, the light will travel forever, unless
a shadow option is active.
The Spotlight
Spotlights behave like their real world counterparts, sending light out
in a specified direction and size. Spotlights are probably the most useful
type of light available to the LightWave animator. Flashlights, car
headlights, and searchlights are all good examples of a Spotlight.
Spotlight
32.6 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
As you might have guessed, a Spotlight can project light onto objects
using a cone of light. The size of the cone is determined by the Spotlight
Cone Angle and Spot Soft Edge Angle values.
The Spotlight Cone Angle determines the width of the cone of light. It
is equal to the angle from the edge of the Spotlight to an imaginary line
projecting straight out from the middle of the light source. So a 30-degree
Spotlight Cone Angle actually defines a 60-degree arc of light.
The Spot Soft Edge Angle determines the width of the falloff zone
from the illuminated cone to the Spotlight edge. It is equal to the angle
from the Spotlight edge to the line projecting straight out from the
spotlight. Within this area, the spotlight slowly fades away to no light,
thereby creating a soft edge.
Hard-edge spotlight
L I G H T WAV E 3 D 7 32.7
NOTE
Spotlights also have the same Intensity Falloff options as Point lights.
See the preceding discussion.
Virtual Projector
Another cool feature of Spotlights lets you use the light to project an
image onto an object, much like a movie projector. You select the image
to project from the Projection Image pop-up menu.
Projected image
NOTE
The projected image will not conform to the circular shape of the
cone angle.To do this, you could place a cookie-cutter object (e.g., a flat
box with a round hole) in front of the spotlight or use a paint package
to edit the image and fill the unwanted area with black.You may also
want to use the BlurFilter to soften the edges.
Linear light
Area light
L I G H T WAV E 3 D 7 32.9
Unlike the Distant, Point, and Spotlight lists, you can size these lights,
just as you would an object. Another distinction is that ray-traced
shadows will have fuzzy geometrically-accurate edges.
The range of the Linear/Area Light Quality setting (for linear and
area lights) is adjustable from 1 to 5 (4 is default), which corresponds to
1, 4, 9, 16, and 25 samples per area light. Lower settings reduce render
times, although soft shadow edges may appear grainier. A setting of 1 is
fast, but noisy; you will need to use high antialiasing levels.
NOTE
When you use these types of lights, you probably need to use a
Medium or High Antialiasing setting (Camera Properties) to
smooth out the shadow. Keeping the light size as small as possible will
also help.
A comparison of quality settings and examples of their effect on image quality and rendering time
32.10 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
NOTE
The default light is set at 100%; however, lights added subsequently
have a 50% Light Intensity setting.
NOTE
A surface hit with multiple lights that exceed a total of 100% is not
necessarily a bad thing, and usually occurs in most scenes. Elements like
surface Diffuse values, shadows, light falloff, and so on, will all tend to
diminish the initial light intensities.
Negative Lights
The Light Intensity can also be set to a negative value. This takes
away Diffuse and Specular shading. Moreover, if you use a colored light,
that is, something other than white, a negative light subtracts the light
color from the surfaces it affects.
ME AND MY SHADOW
In LightWave, the light goes through objects unless the light is set to
generate shadows. So unless you use a light with Intensity Falloff, the
light will continue on forever.
32.12 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
NOTE
If you couldn’t tell, the preceding light type illustrations all had shadows
active.
NOTE
Volumetric lights pass directly through objects when there are no
shadows.
Shadow Type
You initially set lights to generate shadows via the Shadow Type
setting. By default, any light added to a scene has its Shadow Type set
to Ray Trace. Ray tracing a light produces accurate shadows. Distant,
Point, and Spotlights produce ray-traced shadows with hard edges.
Linear and Area lights produce ray-traced shadows with soft edges.
L I G H T WAV E 3 D 7 32.13
NOTE
When ray tracing shadows, Ray Trace Shadows option (Render
Options panel) must also be active.
NOTE
Single-point polygons (particles) and two-point (lines) polygons do not
cast ray-traced shadows.They will, however, cast shadows with shadow
maps.
Shadow Mapping
An alternative to ray-traced shadows is the Shadow Map option,
available only for Spotlights (for a limited time, if you call now...) These
are not as accurate as their ray-traced cousins, but will render much
more quickly and can have a soft edge. Shadow mapping is a derivative
of the same procedure used to calculate areas that are hidden from the
camera view by objects. Instead of the camera’s view, LightWave
determines whether areas are hidden in the light’s view. If so, these areas
will be in shadow.
NOTE
Make sure that Enable Shadow Maps is active on the Global
Illumination panel (Lights > Global: Global Illum) or shadow maps
will not appear.
Transparent Objects
One of the biggest limitations of shadow maps is that they do not
respect transparent surfaces or dissolved objects. The shadow appears
as if the object is solid. For transparent shadows, you must use a ray-
traced light source.
how many motion blur passes or frames are rendered. This saves
rendering time, but should be used only when the light and all objects
that are illuminated by it are not moving.
HINT
The best-looking shadow maps occur when you have the largest
Shadow Map Size you can afford and the smallest Map Angle
possible for the given Spotlight.
NOTE
Also see the discussion in Chapter 9, “Object Shadow Options.”
Lightening Shadows
An easy technique to lighten a light’s shadow is to clone the light and
set the Shadow Type to Off for the clone. Then adjust the Light
Intensity of both lights so that they add up to the value for the original
single light. The more intensity you give to the non-shadow light, the
lighter the shadow.
LENS FLARES
LightWave was the first professional 3D package to incorporate lens
flares into its arsenal. Simply put, a lens flare is an artifact that appears
in the lens elements of a camera when you aim it toward a source of
light. It is by all definitions a defect—a limitation of the camera lens.
However, by imitating this defect, you can add the realism of using an
actual camera to LightWave animations.
HINT
While LightWave’s lens flares are easy to use and the effect is often
very appealing, remember that lens flares are an artifact that most film
and video directors try resolutely to avoid. Judicious use of lens flares
can enhance your work, but overuse can quickly detract from it.
You use lights to position lens flares since lights cause them. Lens
flares are implemented as a light property. You can use any type of light;
however, Linear and Area lights will generate only a single lens flare, as
do the others. The light retains all of its normal lighting functions, but
when it appears within a frame, a lens flare is generated.
32.16 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
NOTE
Make sure that Enable Lens Flares is active on the Global
Illumination panel (Lights > Global: Global Illum) or LightWave will
not create lens flares.
Understand that lens flares are an additive effect, which means they
are added to a rendered image after LightWave calculates the scene’s
appearance. Because of this, you can accidentally create too many flares,
or flares so hot that they wash out other items in the scene. Of course,
this may be a desired effect, such as when a large explosion takes place.
Since lens flares are an additive effect, they will not show up in an
alpha channel saved image. Moreover, since flares theoretically exist
only in the lens of the camera, they will not show up in any reflections or
refractions in an object’s surfaces.
NOTE
You can also access the Lens Flare state and Lens Flare Options
panel from the Lights Properties panel.
L I G H T WAV E 3 D 7 32.17
NOTE
Not all lens flare options can be seen in the preview, so you need to
do test renders (F9).
32.18 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
Selecting Fade With Distance will automatically fade a lens flare as its
distance from the camera increases. If you bring a flare closer to the
camera, it grows brighter.
The Nominal Distance field, active only when Fade With Distance is
selected, is the distance from the camera where the flare is at its input
intensity. For instance, if your Flare Intensity is 100%, and your Nominal
Distance is 10 meters, moving the flare to a distance of 20 meters causes
the intensity to drop to 50% (at twice the distance it drops to one-half
the brightness). Conversely, at half the distance, 5 meters, it climbs to
twice the intensity, 200%.
Enter a Flare Dissolve value to adjust the transparency of the lens
flare effect. This option is handy when you wish to see large streaks of
light coming from the lens flare but do not want a bright hot spot at the
center of the flare. The higher the Flare Intensity, the larger the streaks
(if selected), and the brighter the flare. Flare Dissolve values below 0%
or above 100% are not useful, since the flare is either fully visible or fully
invisible and cannot be more so.
L I G H T WAV E 3 D 7 32.19
Glow Options
Central Glow is a glow of light at the center of the light source flare.
This is the color of the light source. Red Outer Glow is a luminous, soft-
edged red glow around the light source, available only when Central
Glow is active. You may want this option off for deep undersea
environments, where the color red is not visible.
Glow Behind Objects simulates a glow that surrounds a light source.
This effect is different from that of a true lens flare, and should not be
confused with that effect. A true lens flare is a phenomenon that occurs
within the camera lens and thus appears to be in front of all objects in a
scene. When the light source that causes the flare is obscured by objects
between it and the camera lens, the flare fades or disappears depending
on whether the light is partially or completely obscured (an effect that is
handled by the Fade Behind Objects option).
Glow Behind Objects is designed to simulate glows physically
located at the light source rather than within the lens. These glows are
caused by the illumination of a medium surrounding the light (such as
murky water or foggy atmosphere) as opposed to true lens flares, which
are caused by diffraction and reflections among the glass elements inside
a lens assembly. Unlike true lens flares, glows, at a distance, can be
partially visible even if the light source itself is obscured.
Central Ring
Central Ring is a small ring of light, like a halo, surrounding the light
source. The Ring Color option controls its color. The ring’s size is set by
the Ring Size value, which defaults to 22%.
HINT
Use an enveloped Ring Size for shock waves or other similar
anomalies.
Anamorphic Distort
Anamorphic Distortion causes the lens flare to stretch horizontally.
This simulates the effect of the wider lens flares you see in motion
pictures filmed in Panavision. The Distortion Factor acts as an aspect
32.20 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
The default value, 1.77, sets the flare’s width at 1.77 times the flare’s
height. A default value of 3 causes the flare’s width to be three times
wider than it is tall, and so forth. The higher the value, the more
elongated the flare. To distort the flare vertically, enter a value less than
1. The lower the value, the taller the flare.
Streaks
Star Filter is a pop-up that lets you choose the number of points on
the star-shaped streaks that emanate from the flare. The + n secondary
options add in-between minor streaks. You can rotate the streaks with
Rotation Angle. Positive values rotate the streaks clockwise as seen
from the camera. Negative values rotate the streaks counterclockwise.
4 + 4 Point
Off Screen Streaks allow lens flares that move off the visible screen
area to continue to cast occasional streaks across the LightWave camera
and into the scene.
NOTE
You must activate Fade Off Screen to use Off Screen Streaks.
of the lens flare. The higher the value, the brighter and larger the
streaks. The default value of 3.0% produces streaks that closely match
those found in film.
Random streaks
Streak Density sets the number of random streaks. The number you
enter is used as a rough approximation to determine the actual number
of streaks, but your results will be close to the value entered. Higher
values make for more streaks.
Streak Sharpness determines how defined the random streak edges
fall off and blend into the background. Low values blur the streaks
together, making for softer, wider streaks. Higher values create very
distinct streaks. The default value of 6.0 closely matches streak effects
found in film.
NOTE
A very low Streak Sharpness value (like .0001) will blur the streaks
into each other to create a glow-like effect.
Lens Reflections
The Lens Reflections option adds reflections of light in the LightWave
camera, as if it were shooting the scene through a standard camera lens
assembly. This effect emulates the multiple lens elements that make up a
typical lens. Such flares commonly occur whenever you aim a camera at
an intense light source.
32.22 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
If either the light source or the camera is moving, then the reflections
will move across the screen also. This can be a dramatic effect.
HINT
To get the most visibility out of Lens Reflections, place the lens flare
light near the side or corner of the camera’s view.
You can modify the default Element Type, Element Position, Element
Size, and Element Color for each of the sixteen reflection elements. To
edit an element, first select it using the Current Reflection Element pop-
up menu. The elements are aligned in a straight line going through the
center of the camera’s view through the light.
By default, the Elements 1 through 16 are aligned starting near the
light, then through the center and on to the opposite side. However, each
element’s position could be anywhere, if you want it to be. An Element
L I G H T WAV E 3 D 7 32.23
Left: Size = 100% (Even Center Type). Middle: Size = 100% (Bright Center Type). Right: Size = 10% (Even Center Type)
NOTE
A reflection using a Bright Center Element Type will not be the same
size as the Even Center.
Circular Ring
Polygonal Ring
Rainbow Ring
NOTE
If you select a Polygon Element Type, you should also choose a shape
other than Circular as the Polygonal Element Shape.
NOTE
The viewport display will not show all lens reflection attributes.
L I G H T WAV E 3 D 7 32.25
VOLUMETRIC LIGHTS
Lights > Vol Lighting turns a selected light into a volumetric light. This
gives lights—or more accurately their beams—physical volume. These
effects are common in everyday life and can play a key role in creating
dramatic and realistic environments.
NOTE
Use Lights > Global: Enable > Enable Volumetric Lights On/Off
to enable or disable all volumetric lights in the scene.
NOTE
Also see the Volumetric Antialiasing option on the Volumetrics tab
of the Effects panel, discussed in Chapter 15.
NOTE
Linear and Area lights cannot be volumetric.
32.26 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
Sprite Mode This mode will render the effect much faster.
However, there are a few limitations, the biggest
being that volumetric shadows will not be cast.
Also, in some cases, the light textures will look
unnatural—this occurs mostly with spot lights
when looking in the direction of the light. Note
that the Quality setting becomes unavailable
when using this mode.
Quality Use the lowest Quality setting that achieves
acceptable results. Obviously, higher settings will
take longer to render.
Effect Dissolve Effect Dissolve reduces the amount of the effect.
Fade in Fog Activate Fade in Fog for volumetric lights to
dissolve into fog, just like lens flares can.
L I G H T WAV E 3 D 7 32.27
NOTE
Some level of effect attenuation always exists.
Light Textures
To add a texture to the volumetric effect using the Texture Editor,
click Edit Texture. The Enable Texture option must be active to apply
the texture settings. Deactivating it will not affect any existing settings.
L I G H T WAV E 3 D 7 32.29
The Texture Only option means that the texture is not blending with the
base color, but replacing it totally. (See Chapter 31 for more information
on how to use the Texture Editor.)
NOTE
The axis of the light beam for unidirectional lights is the Z axis.
Learn to think outside the box with volumetric lights. Below, a single
volumetric point light fills the screen with a cool cloud effect.
NOTE
The point light, above, was placed at the Origin with no rotation.The
Crumple texture was animated along the Z axis. A gradient using the
Previous Layer (the texture) as the Input Parameter was used to
add color highlights and drop out the lower parts of the texture using
low Alpha values.The Volumetric light Luminosity was cranked up to
around 400%. Texture Only (Volumetric Options panel) was also
activated.
32.30 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
NOTE
You can preview animated textures with VIPER. See Chapter 3 for
more information.
Note that it is much better to use shadow maps because they render
much faster and you can control the fuzziness of the shadows. If you find
the shadow “rays” are creating aliasing patterns, you can easily correct
this by increasing the Shadow Fuzziness value (Light Properties). This is
a better solution than increasing the Volumetric light Quality setting,
which increases render times.
L I G H T WAV E 3 D 7 32.31
Ambient Light
Ambient light does not come from any light source, and it produces
no shadows. It is a general, ever-present light source that gets into every
nook and cranny; it provides a type of fill light for objects and shadows.
The ambient light settings are on the Global Illumination panel (Lights >
Global: Global Illum). Selecting Ambient Color lets you choose a color
for the ambient light. Changing the Ambient Intensity value lets you
determine the amount of ambient light in a scene.
LightWave’s ambient light does not exist in the real world because it
does not come from any specific source or direction. Many animators
use lower intensity lights aimed in the opposite direction of the main
32.32 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
HINT
Most professionals considered the default Ambient Intensity of 25
percent too high. Settings below 10 and sometimes as low as 0 are
common. However, the default setting lets beginners see something in
their rendered images, even if they aim lights incorrectly.
Radiosity
Without using LightWave’s radiosity option, all surfaces are lit directly,
with lights or ambient light. Radiosity, the scattering (reflection) of light
off of diffuse surfaces, causes surfaces to become (indirect) light
sources—like in the real world—generally resulting in much more
realistic images.
Image by DigiMania
L I G H T WAV E 3 D 7 32.33
There are no lights in this scene. Just luminous panels. Image by Mike Ash
ray-traced image with shadows. Notice how many details of the scene
disappear as they are obscured by the shadows in the room. This looks
unnatural to the human eye, as a room in midday would never be this
dark.
The next image shows the scene with radiosity turned on.
Immediately we can see an added level of realism as LightWave
calculates the secondary rays and the room is illuminated from bounced
light. In this example, however, the light source is limited to 100%, which
is a natural choice because it is actually the limit in many applications.
After all, what good is a bright light when the pixels can't really show
beyond 100%? (Brilliant question!)
LightWave has some special uses for pixels that are exceptionally
bright. Take a look at the next image. This one uses a light set to 200%.
Notice now that the floor is illuminated a little more brightly. Also notice
that the entire room gets a little brighter. Though the displayed pixels on
the floor can never go beyond 100% luminous, the bounced light from
that pixel will carry the extra data, the high dynamic range data. This
allows the bounced light to illuminate the room more strongly.
L I G H T WAV E 3 D 7 32.35
The final image uses a light set to 1000%. This time you can see the
floor light is still the same brightness but the secondary rays are
definitely much stronger as they dramatically light up the room—just as
it would look at mid day.
of ambient lighting, that affect the diffuse shading of the current surface.
Evaluated and non-evaluated areas are blended to compute the final
effect.
NOTE
If you activate the Unseen by Rays option on the Rendering tab of
the Object Properties panel, that object’s luminous surface is not
considered a source of light for radiosity purposes.
NOTE
See also the Shading Noise Reduction option on the Global
Illumination panel, discussed earlier.
Lighting Considerations
Radiosity must consider global illumination, which means accounting
for all lighting, whether direct or indirect. This includes indirect light
provided by the backdrop, sometimes referred to as “skylighting.”
When the radiosity rays are fired, the color and brightness of the
closest element hit by each ray (other than direct light sources, which
are accounted for separately) are added into the global illumination for
that point. It doesn't matter if a ray hits another diffuse shaded polygon,
a luminous polygon, or the backdrop—whatever is hit will be taken into
account.
Of course, if the backdrop is blocked by objects, it won't affect
shading. For example, in a scene with an infinite ground plane object, the
lower half of the backdrop gradient won't matter since no rays will ever
reach it. Similarly, when shading the floor of an enclosed room, only the
areas of the backdrop seen through open doors, windows or skylights
will contribute.
Moreover, with gradient backdrops, orientation matters. If the sky is
dark blue at the zenith, but bright at the horizon, then the sides of an
outdoor object may get more skylighting than the top. This is because
radiosity rays are fired more densely near the direction of the surface
normal than around the base of the sampling hemisphere for each
shaded point. Thus, light coming in perpendicularly is more important
than light coming in at a glancing angle.
VolumetricRadiosity command
The VolumetricRadiosity command can be used to control whether
volumetrics are taken into account by radiosity rays. This is enabled by
default, but can be disabled to avoid potentially long rendering times.
You will need to add this command to a menu or shortcut to access.
Radiosity and High Dynamic Range Images
High dynamic range images (HDRI) contain color and brightness
information beyond what is possible in standard 24-bit image formats.
One of the most obvious uses for them is with radiosity.
NOTE
See the Appendix for more information on HDRI and the file formats
that support it.
Left: No lights. Lit by HDRI and radiosity. Right: Lit by single Area light and radiosity. Both images by Terrence Walker.
NOTE
See the Appendix for more information on HDRI.
Ambient Light
Ambient light, controlled by Ambient Intensity on the Global
Illumination panel (Lights > Global: Global Illum), is not directly added
to surface points that are shaded with radiosity—where radiosity rays
originate. However, it is added to points that are shaded without
radiosity—where radiosity rays hit a surface. If not for this, a new
evaluation point would be spawned at the hit points and render time
would explode.
Ambient light will still brighten every surface, but only indirectly,
after bouncing off other surfaces. Thus it can simulate light that would
have come from further radiosity bounces.
As a result, the same exact polygon can be lit in two different ways
during the rendering of the same image! This is because shading is a
temporary thing that LightWave computes on the fly. Just because a
polygon is shaded with ambient light when hit by a radiosity ray doesn't
preclude it from being shaded without ambient light in the part of the
frame where it's seen directly by the camera—polygons are forgetful
(forgiving?) and don’t remember being hit by those rays.
32.40 CHAPTER THIRTY-TWO: SHADOW AND LIGHT
For example, let's say we have a white floor polygon and a red ceiling
polygon, 25% ambient light and no direct lights or other objects. If you
render this without radiosity, ambient light will show the floor and
ceiling as dark gray and dark red polygons. However, with radiosity
active, the floor will appear red too.
The floor is red because it no longer gets direct ambient light.
Instead, it is lit by radiosity rays that reach out and find the red ceiling—
which is shaded with ambient light when hit by these rays—and that red
indirect light illuminates the white surface, resulting in red. When the
ceiling is rendered, it too is now lit only by radiosity rays that are hitting
the white floor (which now gets ambient light as far as those rays are
concerned) and that white indirect light illuminates its red surface, so it
ends up red too.
Using Radiosity
“Blotchiness” in areas lit by radiosity occurs when different
evaluations come up with different results. If the lighting environment is
complex and there are not enough rays to properly sample it, then two
or more nearby evaluations can be different enough to cause
blotchiness. This can occur, for example, when Tolerance is set too high.
Consider a scene lit only by a single luminous polygon. The smaller
that polygon is (as seen from the surface being shaded), the larger the
number of rays necessary to ensure that at least one of them hits it. If
only one of two adjacent radiosity evaluations contains a ray that hits
that polygon, then the other evaluation will result in a dark patch on the
surface. You can minimize this effect by increasing the evenness of the
environment—that is, making the luminous polygon bigger or dimmer or
using more rays to increase the density of the sampling pattern.
The same principle applies to indirect lighting. A brightly lit area is
very much like a luminous polygon as far as radiosity is concerned. For
example, when shading a ceiling, more rays are required if the adjacent
wall has a few tight spotlights shining on it than if the wall is lit by a
broad floodlight. Specular highlights or caustics can also act as tiny
indirect light sources that can require a higher sampling density.
Without using radiosity, lighting is relatively simple. Basically, it
amounts to a small range of light intensities and a linear mapping of the
resulting surface brightnesses into image pixel values. Radiosity,
however, is essentially a physically-based simulation, with all of the
complications that go with it. In the real world, light intensities vary over
a huge range, and so it is with radiosity.
Radiosity by its very nature tends to be dim. Ambient light will still be
a factor and can help brighten the scene. You may want to process
rendered images with a gamma correction filter for radiosity renderings
viewed on a computer monitor. This boosts pixel values in shadowy
areas, and makes radiosity effects more noticeable.
L I G H T WAV E 3 D 7 32.41
Caustics
Generally, a caustic occurs in the real world when light reflects off a
curved surface or refracts through a transparent surface so that it is
focused on a small area. Light through a wine glass is a good example.
With a more complex surface, the caustic can create a random pattern
like those seen on the floor and sides of a swimming pool.
NOTE
The default values for Accuracy and Softness should be fine in most
cases.
A ppendix
MACINTOSH INFORMATION
Right Mouse Button Action
To apply a RMB action (i.e., drag or click), hold the COMMAND (APPLE)
key while you press the mouse button.
Memory Allocation
To change the amount of memory allocated to LightWave 3D, select
the icon and choose File > Get Info.
YOUR DISPLAY
Depending on your computer platform and display cards, you can run
LightWave in a number of different screen resolutions and color depths.
However, the larger your resolution and the more colors you are using,
the slower your LightWave interface will be. LightWave does require at
least a 16-bit display to function.
App.2 APPENDIX
NOTE
Even though you may be using a lower number of display colors, you
can still save 24-bit images when you render your final output.
Imported Formats
OBJ M, SA, UV
DXF M, SA
3DS M, SA, SSP, T, UV
FACT M, SA, SSP, T
L I G H T WAV E 3 D 7 App.3
Exported Formats
LW5 (5.x LWO format) M, SSP, T
OBJ M, SA, UV
DXF M, SA, T, UV
3DS M, SSP, T, UV
M = Geometry mesh
SA = Surface assignments (LW default properties)
SSP = Standard surface properties (color, glossy, etc.)
T = Texture maps (non-procedural)
UV = UV texture information
NOTE
Before exporting to a foreign object format, save the object as a
LightWave .LWO file first.
NOTE
Generally, you should merge points after loading a 3DS object.
App.4 APPENDIX
NOTE
When a 32-bit format is selected for saved RGB images, the 8-bit
Alpha image is stored along with the 24-bit RGB data. However, when
you save alpha images directly, you save only the alpha image, even if
the format is 32-bit.
NOTE
The filename extension for Radiance images is .HDR. If you have any of
these images using the .PIC extension, you should rename them.
NOTE
See the discussion on radiosity in Chapter 32 for additional
information on high dynamic range images.
In the real world, the human eye can perceive a much higher range of
brightness and color values. Film can also react to a much wider range.
Video cameras, however, are limited to a fixed range that fits closely to
the same 256-step limit.
When exposed to high dynamic range visuals, such as a sunset or a
desert landscape, the lens of a camera will produce some level of
artifacting. Some of those artifacts can be seen as blooming areas of
brightness, color bleed, luminance spill, lens streaking, and many other
visual cues that tell the viewer there is a very bright light source in the
scene.
These very bright surfaces can also contribute to the overall lighting
of a scene. For example, sunlight streaming into a room will bounce off
the floor and add a subtle illumination to the walls and ceiling that
App.6 APPENDIX
would otherwise be left dark (i.e., radiosity). All of these effects can be
seen in images captured by devices that do not support high dynamic
ranges.
Because computer graphics applications were designed to output to
devices that would not understand pixel values above RGB 255, 255, 255,
most applications do not provide for any value to exceed these limits.
LightWave, however, calculates all internal data without limits and with
IEEE floating-point accuracy. This means that when LightWave points a
light at a surface, while the final rendered pixel may reach only RGB 255,
255, 255 for pure white, internally that pixel may have reached ten times
that amount. This may not seem significant at first glance—white is
white after all—but, if we look at how LightWave utilizes that data, it
becomes very exciting.
Import/Export
LightWave can utilize high dynamic range detail, as it is generated
internally (e.g., in the case of a very bright light) or from data in image
files. This can be imagery generated from a series of photographs taken
at various exposures and composited (see Recovering High Dynamic
Range Radiance Maps from Photographs by Paul E. Debevec and Jitendra
Malik at HTTP://WWW.CS.BERKELEY.EDU/~DEBEVEC/RESEARCH/HDR/) or data
rendered in LightWave saved in one of the high dynamic range formats.
Once these images are imported into the system, they can be used
just like any other image in LightWave 3D (e.g., as a texture, background,
etc.). During the rendering process LightWave will respect the extra data
in the image to assist in secondary lighting and other calculations.
Imagine using a high dynamic range image as an environment wrap
(e.g., using the Image World environment plug-in. See Chapter 14.), which
also illuminates the scene. With the appropriate imagery you can
illuminate a scene without any lights and the results will match the look
and feel of the original photograph.
Once LightWave finishes rendering, you can export images with the
same high dynamic range data. This lets you bring that data back into
LightWave or into compositing applications that support such data.
L I G H T WAV E 3 D 7 App.7
CONFIGURATION FILES
The various LightWave configuration files are stored in your PROFILES
directory under Windows NT or the DOCUMENTS AND SETTINGS directory
under Windows 2000. Generally, you will not need to edit these files
directly. On the Macintosh, they are in the SYSTEM:PREFERENCES folder (with
long names).
NOTE
For Windows systems, just create a shortcut.
The -c argument sets up entries that the Hub tracks. So, if you click
the Modeler button on the Layout interface, for example, it will run with
the proper config file.
You must run Layout and Modeler with this argument at least once to
store the entry in the Hub. Moreover, you must continue to use this
App.8 APPENDIX
argument when you run Layout or Modeler from an icon. If you don’t, the
config path entry in the Hub will change to the default. This can happen,
for example, if you run Layout or Modeler directly from their .EXE icons.
The path must be valid or the default will be used. Do not add a
trailing backslash unless you are using the root directory. If your path
includes spaces, enclose the entire argument in quotes, like “-CD:\WHY
DID I USE SPACES\CFGS.”
LIGHTWAVE LIMITS
• unlimited points and polygons per object
• 1,023 points per polygon
• 4,096 bones per object
• 32,000 cameras per scene (see note)
• 32,000 objects per scene (see note)
• 32,000 lights per scene (see note)
• 65,536 object layers
• unlimited images
• unlimited surfaces
L I G H T WAV E 3 D 7 App.9
NOTE
Because of memory considerations, the available number of cameras,
objects and lights per scene is set at 100, 1000, and 1000, respectively,
in the LW3.CFG file.The values may be increased—within the limits
above, but not decreased below 100; however, this will require more
memory, so keep the new values as small as possible. Do not edit the
CFG file while LightWave is running.
MEASUREMENT UNITS
LightWave supports a large number of units of measurement. When
entering numeric values into input fields, you may specify the unit of
measurement using the following abbreviations:
Abbreviation Description
um Microns (one-millionth meter)
mm Millimeters (one-thousandth meter)
cm Centimeters (one-hundredth meter)
m Meters
km Kilometers (one thousand meters)
Mm Megameters (one million meters)
mil Mils (one-thousandth inch)
in or “ Inches (2.540 centimeters)
ft or ‘ Feet (.3048 meters)
kft Kilofeet (One-thousand feet)
mi Miles (5,280 feet)
nmi Nautical miles (1.151 miles or 1852 meters)
f frame
s seconds
HINT
Since the meter is the default unit of measure for the SI or Metric
unit systems, entering the meter equivalent is often easier than typing
in the abbreviations. For example, enter .01 for centimeters, .001 for
millimeters, 1000 for kilometers, and so on.
DO THE MATH
Basic math functions are supported in numeric input fields. You can
input a string such as “12ft+14m” and get an answer of “17.6576m.”
App.10 APPENDIX
Math Functions
Functions
abs(x) absolute value
acos(x) arccosine, return value in radians
acosh(x) inverse hyperbolic cosine
asin(x) arcsine, return value in radians
asinh(x) inverse hyperbolic sine
atan(x) arctangent, return value in radians
atan2(y,x) arctangent of y/x, return value in radians
atanh(x) inverse hyperbolic tangent
bessi(m,x) Bessel function Im(x)
bessj(m,x) Bessel function Jm(x)
bessk(m,x) Bessel function Km(x)
ceil(x) round up
cos(x) cosine, x in radians
cosh(x) hyperbolic cosine
dbessi(m,x) derivative of Bessel function: Im’(x)
dbessj(m,x) derivative of Bessel function: Jm’(x)
dbessk(m,x) derivative of Bessel function: Km’(x)
djroot(m,n) nth non-zero root of Jm’(x)
exp(x) e (2.718..) raised to the power of x
fact(n) factorial (n!)
floor(x) round down
jroot(m,n) nth non-zero root of Jm(x)
ln(x) natural logarithm (base e)
log(x) logarithm to the base 10
noise(x,y,z) Perlin noise
rand(n) Random value, seed n
sgn(x) -1 if x<0, 0 if x=0, +1 if x>0
sin(x) sine, x in radians
sinh(x) hyperbolic sine
sqrt(x) squareroot
tan(x) tangent, x in radians
tanh(x) hyperbolic tangent
Constants
_acres_per_sq_km 247.1
_air_density 1.293
_air_mol_mass .02897
_atm_per_psi .06804
_avagadro 6.0220e23
_boltzmann 1.3807e-23
_c 2.997925e8
_cm_per_in 2.54
_coulomb_const 8.98755e9
_deg_per_rad 57.2958
L I G H T WAV E 3 D 7 App.11
_earth_esc_spd 1.12e4
_earth_grav 9.80665
_earth_mass 5.98e24
_earth_radius 6.37e6
_earth_to_moon 3.844e8
_earth_to_sun 1.496e11
_eps0 8.85419e-12
_erg_per_joule 1e7
_eulers_const .57721566490153286061
_ft_per_m 3.280839895
_g 6.672e-11
_gas_const 8.314
_gauss_per_tesla 1e4
_gm_per_oz 28.34952313
_golden_ratio 1.6180339887498948482
_h 6.6262e-34
_hbar 1.05459e-34
_joule_per_btu 1054.35
_joule_per_cal 4.184
_joule_per_ftlb 1.356
_joule_per_kwh 3.6e6
_kg_per_slug 14.59
_km_per_mi 1.609344
_knots_per_mph .86897624
_lbs_per_kg 2.204622622
_lit_per_gal 3.785411784
_me 9.1095e-31
_mn 1.67495e-27
_moon_grav 1.62
_moon_mass 7.35e22
_moon_period 2360448
_moon_radius 1.738e6
_mp 1.67265e-27
_mu0 1.256637e-6
_oz_per_gal 128
_pasc_per_atm 101325
_pasc_per_psi 6895
_pasc_per_torr 133.32
_pi 3.14159265358979323846
_qe 1.60219e-19
_solar_const 1350
_speed_sound 331
_sun_mass 1.99e30
_sun_radius 6.96e8
_watts_per_hp 745.712
_zero_deg_cels 273.15
App.12 APPENDIX
Other
ifeq(a,b,t,f) if-equal, returns t if a equals b otherwise
returns f
iflt(a,b,t,f) if-less-than, returns t if a is less than b
otherwise returns f
ifgt(a,b,t,f) if-greater-than, returns t if a is greater than b
otherwise returns f
iflte(a,b,t,f) if-less-or-equal, returns t if a is less than or
equal to b otherwise returns f
ifgte(a,b,t,f) if-greater-or-equal, returns t if a is greater
than or equal to b otherwise returns f
L I G H T WAV E 3 D 7 App.13
App.14 APPENDIX
I
Array command, 24.29
ndex Atlas map type, 28.24
Audio, 12.7
AudioChannel, 8.59
Auto key, see “Keyframing”
Automatic frame advance, 16.2
AutoPatcherMK, 29.14
Axes, world and local, 6.4
0-9
B
3ds object format, App.2 Backdrop, Layout
4XStoryboard, 16.11 Color, 14.1, 6.40
Gradient, 14.2
A Image, 6.40
Preview animation, 6.41
Backdrop, Modeler, 27.13-27.16
Absolute size, 23.29
Background color, Modeler, 27.4
Action center control, 23.10
Background image, Layout, 14.3
Activating scene items, 12.3
Background plate, making a, 14.5
Adaptive sampling, 13.8
Baking motion, 8.25
Add points (to polygon), 25.12
Ball tool, 22.6
Additional menu, the, 25.22
BandSaw command, 25.16
Additive changes in Layout, 7.11
Batch render on one computer, 19.8
Additive transparency, 31.57
Bend tool, 23.19
Adjust polymap, 28.40
Deform:Bend, 9.29
Affect caustics, 32.11
Bevel tool, 24.1-24.6
Affect diffuse, 32.11
Bezier spline, 8.42
Affect specular, 32.11
Bezier tool, 22.22
Affect OpenGL, 32.11
Bias, 8.40
Airbrush tool, 28.8
Bkg to morph command, 28.46
Alert level, 6.21, 27.16
Bloom, 14.24
Align polygons, 26.3
Bones, 10.1-10.2, see also “Skelegons”
Align to path, 11.41
Adding, 10.3
Aligner, 23.17
Activating, 10.4
Allow fractional current frame, 6.24
Bone weight shade, 6.10
Alpha channel, 30.5, 31.56
Bone-friendly objects, 10.2
Alpha images, 14.18
Drawing, 10.4
Alpha, vertex color, 28.13
Falloff type, 10.19
Alternate aspect overlay, 6.41
From another object, 10.4
Ambient light, 32.31, 32.39
Influence area, 10.18
Anaglyph stereo: compose, 14.23
Joint compensation, 10.20
Anaglyph stereo: simulate, 14.23
Limited range, 10.20
Angle tool, 25.21
Muscle flexing, 10.21
Animated dither, 14.21
Rest Length, 10.18
Animation formats, App.4
Rest position, 10.4
Answer to all your problems, App.14
Scaling strength, 10.14
Antialiasing, 13.7
Selecting, 10.2
Apply morph command, 28.47
Strength, 10.13
Area light, 32.8-32.9
Subdivision order, 9.13
Idx.2 INDEX
E Point, 23.2
Point radial, 23.2
Edge transparency shader, 31.62 Polygon, 23.2
Edge Z scale, 9.50 Radial, 23.2, 23.7-23.9
Edit font list panel, 22.17 Weight map, 23.3
Edit metaballs, 29.10 Fast fresnel shader, 31.63-31.65
Edit by modes, surface, 31.4 Faster highlights, 6.39
Effector (custom object), 9.4 fBm texture, 31.41
Effector (displacement), 9.32 FBM noise texture, 31.50
Effector (item motion modifier), 11.28 Field chart, show, 6.42
Enable lens flares, 32.16, 32.31 Field rendering, 13.12
Enable shadow maps, 32.13, 32.31 File dialog, 6.22, 27.16
Enable volumetric lights, 32.25, 32.31 Filenames and extensions, App.2
Encapsulated PostScript Film expand, 16.11
Exporting from Modeler, 20.14 Fine detail cursor, 27.16
Loading into Modeler, 20.13 Fit all, 27.2
EndoMorphs, 28.42-28.46, see also “Vertex Fit one view, 27.3
maps” Fit selected, 27.2
Airbrushing, 28.9 Fixed near clip distance, 6.34
Animating, 9.16-9.19 Fixed projection, 31.28-31.30
Apply morph command, 28.47 Flatness limit, 20.18, 21.5
Bkg to morph command, 28.46 Flatten layers, 26.1
Inserting layer into, 28.46 Flexing object on arbitrary axis, 23.6
Morph mixer, 9.17, 28.45 Flip polygons, 26.2
Rotate morph function, 28.47 Changing skelegon direction, 10.11
Saving endomorph mix, 9.19 Flip UVs, 28.29
Scale morph function, 28.48 Fog, normal,15.3, see also “GroundFog”
Subdivision order, 9.13 OpenGL, 6.42
Texture VMap, 28.16 Show fog circles, 6.36
Enter/tab keys, 3.14 Textured, 15.4
Envelopes, 31.17, see also “Graph editor” Unaffected by fog, 9.46
Environments, 14.7-14.16 Follower (item motion modifier), 11.29
Equilateral function, 22.11 Foreground fader alpha, 14.19
Expand selection, 27.23 Foreground images, 14.17
Expression (displacement), 9.33 Foreground key, 14.20
Expression (item motion modifier), 11.29 Foreign object support, App.2
Expressions, 8.44-8.48 3ds object format, App.2
Expressions (channel motion modifier) 8.60-8.66 Dxf object format, App.2
Extended RLA export, 14.31 Fact object format, App.2
Extender command, 24.15 Obj object format, App.2
Extrude tool, 24.6 Forward kinematics, 11.11
Fractal noise texture, 31.42
F Fractional current frame, 6.24
Faceted subdivide, 25.14 Frame aspect ratio, 13.3
Fact object format, App.2 Frame rate, 30.6
Fader alpha mode, 16.17 Frame rate meter, 9.5
Falloff, Modeler tool, 23.1 Frame slider, 8.2
Linear, 23.2-23.7 Label, 6.23
None, 23.2 Show keys, 6.24
L I G H T WAV E 3 D 7 Idx.5
X
XCommand, 20.17
XYZ fields in Layout, 7.13
Y
Yes and no buttons, 3.14
Z
Zoom box tool, 8.22
Zooming viewport, 27.1
ZShader, 31.77