You are on page 1of 353

131030

LightWave 11

Manual Addendum
v 11.6

LightWave 11 Features

Contents

Contents Introduction Welcome to LightWave 11.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 New to 11.6 3D Display p297. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 3D Printing p06 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Alembic p179 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Assignments p322 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 CgFX shaders p287 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Color Picker p273 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Compound Nodes p275 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 DPX (Digital Picture Exchange) Image Loader/Saver p199 . . . . . . . . . . . . . . . 2 Genoma Spline Control p241. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Image Viewer Improvements p303. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Input Node p281 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 11.6 Instancing Changes p52. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Lasso and Paint Selection Acceleration p252 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Light Fallo clamping p282 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 LUT Expansion p200 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Matching Perspective to Camera or Light p295 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Python Reduced Instruction Set module (PRIS) p329 . . . . . . . . . . . . . . . . . . . . . 2 Raycast Node p36. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Scene Editor Enhancements p272. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Spline Control p22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

Licensing Changes How it works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 FAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3D Printing 3D Printing Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Introduction to 3D printing with LightWave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Upresing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Mesh Repair . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Example: Preparing the Alien Emissary for 3D Printing . . . . . . . . . . . . . . . . . . . . . . 9 STL Import/Export Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 PLY Import/Export Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 VRML Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Spline Control Spline Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Copyright 1990-2013 NewTek, Inc. All rights reserved.

LightWave 11 Features

How to Create the Spline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 How to View the Spline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Getting Started with Spline Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Going Further . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Curve to Spline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Export Spline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Example: Curve to Spline and Spline Instancing . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Raycast Node Raycast Node for Motion , Displacements and Instancing . . . . . . . . . . . . . 36 Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Going Further . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Unied Sampling About Unied Sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Overview of Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Unied Sampling Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Additional Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Instancing About Instancing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Getting Started with Instancing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Instancing Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 11.6 Instancing Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Overview of Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Example: Abstract Sphere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Surfacing Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Example: Monitor Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Flocking About Flocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Using Flocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 Setting up a Simple Flock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 Overview of Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Path Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Flocking Nodally . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Example: Chasing a Flock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Using Objects as Goals or Avoids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Example: Missile Launcher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Example: Avoid and Attract Mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 Example: Mecha Fish . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Bullet Dynamics About Bullet Dynamics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Example: Getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

Copyright 1990-2013 NewTek, Inc. All rights reserved.

LightWave 11 Features

Overview of Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Rigid, Static and Kinematic Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Parts Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 Example: Choreograph your destruction . . . . . . . . . . . . . . . . . . . . . . . . . 113 Deforming Body Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 Example: Getting started with Deforming Bodies . . . . . . . . . . . . . . . . . . . . 117 Forceeld, Vortex and Explosion Properties . . . . . . . . . . . . . . . . . . . . . . . . . . 121 Example: Swirling Leaves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 World Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 Bullet Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 Bullet and Hierarchies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Bullet and Bones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Bullet and FiberFX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Fracture About Fracture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 Overview of Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Fracturing Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Fracture in Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Virtual Studio About Virtual Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 Overview of Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Example: Car Shoot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 3Dconnexion Example Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Virtual Studio Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 Move.me Example Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 Interchange Tools GoZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 Setting Up GoZ for LightWave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 Example: Using ZBrush to Edit Morph Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 Example: Converting ZBrush Fibermeshes to FiberFX guides . . . . . . . . . . . . . . 174 Additional GoZ Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 FBX Enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 OBJ Enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 Alembic Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 Overview of Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 Unity Interchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 Example: Texturing in Unity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 Additional Unity Interchange notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Example: Realtime Visualization with Unity . . . . . . . . . . . . . . . . . . . . . . . . . . 187

Copyright 1990-2013 NewTek, Inc. All rights reserved.

LightWave 11 Features

Example: LightMaps in Unity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 After Eects Interchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 DPX (Digital Picture Exchange) Image Loader/Saver . . . . . . . . . . . . . . . . . 199 LUT Expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 Shadow Catcher Node About the Shadow Catcher Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Overview of Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Example: Beach Camaro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 FiberFX About FiberFX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 Overview of controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 FiberFX Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 Geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 Styling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 Bundle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 Rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 Shading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 Shadow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 Edit Guides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 Genoma Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 Genoma Presets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 Atomic Element (SubRigs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 Connectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 Root . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238 Active and Passive Connectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 FK Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 Pitch Alignment and Control Size Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 Parenters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 Spline Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 Example: Animating a rollercoaster train . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 Example: Animating an Octopus tentacle . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 Arms, Legs and Hands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 Heads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 Muscles and Targets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 Editing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

Copyright 1990-2013 NewTek, Inc. All rights reserved.

LightWave 11 Features

Creating Presets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 Example: Rigging the Cube . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 Modeler Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 Lasso and Paint Selection Acceleration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 New Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 Line Pen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 Heat Shrink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 Example: Protecting our Alien Emissary with Heat Shrink . . . . . . . . . . . . 259 Align . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 Axis Rotate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 Axis Translate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 Axis Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 Example: Scaling Imported Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263 Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263 Tweak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 Chamfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 Place Mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 Slice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 Thicken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 Straighten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 Edit Edges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 ABF Unwrap UVs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 Select by Normal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Pick Surface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Example: Rapid Sofa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 Set Skelegon Weight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 New Paste Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 Align to Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Layout Modeler Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Connected to Lyrs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Workow Enhancements Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Scene Editor Enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Surface Editor Enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Copying and pasting Surface Editor tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Color Picker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 Compound Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 Example: Simplifying the Benchmark Marble nodes . . . . . . . . . . . . . . . . . . . . . . 277 Node Editor Probe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Node Editor Procedural Texture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280

Copyright 1990-2013 NewTek, Inc. All rights reserved.

LightWave 11 Features

Searching Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 Adding Multiple Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 Editing Nodes When Zoomed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 Curved node connectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282 Carpaint Improvements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282 Fresnel Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Input Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Preset Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 Light Fallo clamping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 NGon Light . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 Multiselecting Lights and Objects for Exclusion . . . . . . . . . . . . . . . . . . . . . . 287 Render Globals Tab Grouped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 Motion Options De-referencing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 CgFX Hardware Shaders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 Example: Adding a Cgfx Hardware Shader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 MDD Multi-Loader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 Example: Using MDD Multi-Loader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 Matching Perspective to Camera or Light View . . . . . . . . . . . . . . . . . . . . . . 297 VPR Enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 VPR Surface Picking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 DOF & Motion Blur in VPR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Stereoscopic Rendering in VPR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 3D Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Refraction in VPR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 Advanced Camera support in VPR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 Rolling Shutter and Motion Blur Bias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 Example: Rolling Shutter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 Maximum Render Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 Image Viewer Improvements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 Low-Discrepancy Sampling Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 Edge/Outline/Line/Point Rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 Print Camera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 Screamernet Time Flag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312 Compositing Buer Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 Anti-aliased Buers in Compositing Buer Export . . . . . . . . . . . . . . . . . . . . 316 Render Time in Image Viewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 Eects > Volumetrics Updated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 Eects > Compositing Updated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 Auto Key Enhancement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 Clone Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Faster Access to the Morph Mixer Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

Copyright 1990-2013 NewTek, Inc. All rights reserved.

LightWave 11 Features

Setting Motion Path Frame Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Interface Color Customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320 Font Specication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321 HyperVoxels Blending . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322 Scene Loading Speed Optimizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 Scene Editor Menu Organisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 Nodal Motion Modier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 Nodal Metalink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325 Align and Distribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 Fit Selected and Fit All . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 Nav Options Updated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 Python Scripting About Python Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 Python Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 New Plugin Architectures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 Single-Shot Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 Example: Hello World in Single-Shot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 Python Reduced Instruction Set module (PRIS) . . . . . . . . . . . . . . . . . . . . . . 333 Writing a Python plug-in for LightWave 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 Information For More Information and Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344

Items marked are new or changed in LightWave 11.6, shows items that were new in 11.5 Items marked have accompanying content

Copyright 1990-2013 NewTek, Inc. All rights reserved.

LightWave 11 Features

Introduction

Features new to 11.6 or behaviors changed from 11

will be marked in the addendum with the logo shown here. Items with accompanying content will be marked with

Welcome to LightWave 11.6


LightWave has a fantastic track record of amazing projects which have used its powerful tools and renderer to create the amazing images that inspire and move us. From high-end Hollywood feature lm and television series projects, to leading video game franchises, to architectural and medical visualization. LightWave is the complete tool to empower your creative ideas and projects. We are excited to present this new version of LightWave 11 with improved instancing; updated ocking; new soft body Bullet dynamics; Genoma rigging and more to add to LightWaves powerful arsenal of proven technology, together with improvements to pipeline integration, workow and existing features. This addendum manual presents in-depth explanations of how to use all new additions to LightWave 11 through 11.6. For areas outside of this addendum, please refer to the LightWave 10 documentation present in LightWave (F1) or available from your user account on lightwave3d.com. LightWave 11 builds on what LightWave has always been good at - oering the best all-round 3D tool for 3D artists. This release also solidies LightWaves ability to t neatly into pipelines, and we believe the new additions will bring real benet to artists working in production and freelance roles alike. Were proud of this release and hope you enjoy it!

LightWave 11 - VFX and Animation with a Proven, Award Winning Track Record
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 1

LightWave 11 Features

New to 11.6
A guide to nd the main functions new to this release of LightWave 3D

3D Display p299 3D Printing p06 Alembic p179 Assignments p325 CgFX shaders p289 Color Picker p275 Compound Nodes p277 DPX (Digital Picture Exchange) Image Loader/Saver p199 Genoma Spline Control p241 Image Viewer Improvements p306 Input Node p283 11.6 Instancing Changes p52 Lasso and Paint Selection Acceleration p254 Light Fallo clamping p284 LUT Expansion p200 Matching Perspective to Camera or Light p297 Python Reduced Instruction Set module (PRIS) p333 Raycast Node p36 Scene Editor Enhancements p274 Spline Control p22

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 2

LightWave 11 Features

Licensing Changes

LightWave 11 now uses a software-driven licensing scheme for LightWave. Existing users with dongles can continue to use their dongles or use the software version as they choose and commercial plugins tied to the dongle using the SDK will continue to work using the software license. As with the dongle, running LightWave multiple times on the same machine is possible, and the software license is applicable to Windows 32-bit and 64-bit, and Macintosh OS X equally. New purchasers of LightWave can purchase a hardware dongle on request but it wont be necessary, meaning that LightWave can become a completely digital product making purchasing licenses much simpler since no physical product will need to be shipped.

How it works
Everything from now will work through the www.lightwave3d.com website. LightWave will be available through your favorite reseller if youd like that personal touch, but www.lightwave3d.com is open 24/7, 365 days a year. If youd like to buy a new license, or upgrade an older LightWave to the latest version you can do it here. To do so visit the shop pages at the Buy LightWave link. You do not have to be logged in to do so. The shop will sense your location, put the price for LightWave in your local currency and include local sales tax once you click the Buy Now button.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 3

LightWave 11 Features

Licensing Changes
Enter your payment details and hit next. You will be given a conrmation page so you can make any edits and then you can hit next again. There will be a pause as your payment is processed and then you will be presented with download options for LightWave and the license.key le. If you already have the trial version of LightWave (11.0.3 or more recent) installed, you only need to download the license.lwk le and apply that to your Trial Edition for it to become a full license. Applying the license.lwk is a matter of dragging the lwk icon over your Layout or Modeler window and dropping it. You will need to restart LightWave to activate your license.

FAQ
Will my dongle continue to work? Dongles will continue to work and can continue to be used. If you are still running Windows XP you will have to keep using the dongle. Software licensing needs Vista or more recent. Will my commercial plugins work if I dont use my dongle? Commercial plugins tied to a dongle should* work equally well with the software license. I usually have several Layouts open and a couple of Modelers. Will I still be able to do that with a software dongle? Multiple copies of LightWave using the software lock can be run on the same machine, there is an alert if multiple copies of the same license are run on dierent machines on the same network. What happens if I run multiple copies of the same license on dierent machines on the network? You will get a message that your dongle could not be found and then a message saying that the number of licenses owned has been exceeded. You can either buy additional licenses or close other copies. I like the dongle. Will I still be able to buy new seats using it? Yes, purchase of a dongle will be available however you will need to wait to receive your LightWave physically if you would like a dongle. Before it arrives you can use the fully-featured trial edition. I would like to upgrade an older license of LightWave that I bought from someone to the latest version. Will I be able to? Yes. As long as you bought a full version with a dongle you can upgrade it. Purchasing an older version of LightWave without a dongle means that the owner is selling an upgrade, not a full version. If I want to drop my LightWave on a USB key and take it to a job can I? Yes, but you will continue to need to use your dongle. The software license only works when you install LightWave locally using the provided installer.
* Commercial plugins getting the Lock ID using the SDK will normally work without changes. Plugins using their own scheme may need to be updated.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 4

MAIN TITLE
SUB-TITLE

3D Printing

Image courtesy of MakerBot 2013

LightWave 11 Features

3D Printing
3D Printing Support
LightWave has always been a good tool for 3D printing with its measurement system based on real-world quantities rather than the mysterious units used by some other software. This means that if you model the Empire State Building to scale in LightWave, it would print out at 1,454 ft (443.2 m) high - presuming you had a printer capable of such dimensions, the time to wait for the printout and the money to pay for all the material youd need. LightWave 11.6 makes it easier than ever to interface with a 3D printer with the import and export of the main le formats used. There are STL, PLY importers and exporters and for fullcolor 3D printing we support object-oriented VRML export.

Introduction to 3D printing with LightWave


Modeling for 3D printing is a new discipline for many with LightWave and requires a certain rigor. Models need to be watertight, otherwise known as manifold. This means that they are a solid continuous surface with no holes. You cant use any of LightWaves tricks, like subpatching or double-sided polygons, everything needs to be present in the model but equally you do not need to worry about polygon topology.

The rst ring is manifold, there are no holes. The second is manifold too. The ring is hollow but the polygons are thickened. Our third ring is not acceptable as an object for 3D printing. Because LightWaves polygons are single-sided, the inside of the ring counts as a big hole, even if it has been surfaced as double sided.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 6

LightWave 11 Features

3D Printing
The next important factor is that there can be no intersecting polygons - thats to say polygons that pierce others without being connected.

The green fold on the left will print well. It has at least 2mm thickness and the fold in the center is contiguous. The red object on the right wont. The two polygons share nothing and have no thickness.

Upresing
When you print a model with too few polygons, it can look facetted in print. If this isnt the look you are going for, you can subpatch your object and then freeze it. However, this will reduce the size of ner details as they respond to the subpatching algorithm. A better way to reduce facetting can be achieved by using the Subdivide tool set to Smooth. Subdivide needed three iterations to get to an acceptable level of smoothness across this mesh, going from 7,380 polygons to 472,320.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 7

LightWave 11 Features

3D Printing
Mesh Repair

When exporting as STL or PLY Mesh Repair gets automatically called to check on the quality of your mesh. It oers several xes: Clear Stray Points - if you have any points not attached to polygons in your model, they will be removed. Clear One Point Polys - If you have any single point polygons in your model, they will be removed. Clear Two Point Polys - Two-point polys can be very useful in LightWave for all manner of things, but they are no use for 3D printing. Cap Holes - As previously stated, meshes for 3D printing need to be manifold - thats to say with no holes. Cap holes gets rid of any holes in your mesh. Triangulate Polys - Since our mesh doesnt need to look pretty for animation, merely correct for printing, it is best to triangulate for complete compatibility. Non-Manifold Edges - Edges that are non-manifold are ones that connect more than two polygons. You can also call Mesh Repair manually since its not just useful for 3D printing but for your objects in general. If you have a reason for wanting to keep 2-point polys you can always untick that x.

The edge of this box was selected and extended. The edge connecting the ap to the box becomes a non-manifold edge.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 8

LightWave 11 Features

3D Printing
Example: Preparing the Alien Emissary for 3D Printing
We wanted to test LightWaves capabilities for 3D printing by sending our Alien Emissary model straight out of LightWave to Shapeways (http://www.shapeways.com/) 3D printing service for a full-color 3D print. 1) We started with the Alien Emissary from the LightWave 10 Content Directory. The scene le came complete with a character object, TIF texture maps, and a rig that could be used to pose the mesh (01). The mesh was 2.6 meters tall. This is an appropriate height for an alien character, but too tall for a small statue meant to t on a shelf. The model would have to be scaled at a later point (02).

2) A bust statue does not require arms or a lower body, so we chopped o the arms and all geometry below the lower torso (03). The mesh was not scaled at this point, because we wanted the option of posing the character with the existing rig.

We also created an endomorph that could close the mouth and reduced the size and number of polygons in the mouth cavity to make it more suitable for a print (04-06).

3) A shell with no thickness cannot print (07). The arm holes needed patching. We patched the
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 9

LightWave 11 Features

3D Printing
arm holes using Make Poly. Then used Bevel to give these n-gons a bit of an inset, then the Spikey Tool with a 0% Spike Factor to convert the n-gons into triangles. The results spackled over the arm holes nicely (08).

Although the arm holes were now sealed, the alien was still a shell with no thickness. It had a large, open hole at the bottom.

One solution might have been to patch over this lower torso hole, sealing it o and fullling the watertight mesh requirements for 3D printing. However, a solid torso would have used a lot more material and cost a small fortune. In 3D printing, the less material used, the less costly the print. A hollow torso would not only make for a lighter statue, but also a cheaper print. We used the Thicken tool to create an inner surface and a reasonably thick wall. Mindful that this alien would be scaled down to about 25% of its original size for printing, we thickened the alien by 10mm. This way, when the alien was scaled down to a quarter of its size later, the wall thickness would not be too thin for printing (10). We also turned on the checkboxes for Create New Surface and Create Side Surface to make the new geometry easier to select and manipulate and gave the Thickened surface a dierent wireframe color. This made it easy to see intersections in the geometry, for example the eye and chin areas (11).

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 10

LightWave 11 Features

3D Printing

4) The interior sides of the eye socket, chin and mouth cavity geometry were simplied and smoothed out so that they would not intersect the outer geometry. The endomorph to close the mouth also needed some tweaking on the chin geometry (12-14).

5) The alien now had a watertight mesh that could be printed if scaled down to t the printing bed. There was just one problem: gravity. This mesh had nothing to hold it upright after printing. At best, it could rest on its back if printed (16).

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 11

LightWave 11 Features

3D Printing
It would need a pedestal. It would also need a structure inside it that could connect it to that pedestal. We built a structure by placing 2x2 subpatch cubes inside of the model and using Bridge to connect the sides of these cubes to the inner wall and to each other (17-20). This structure could later work with pedestal geometry to support the bust.

6) We also created a weight map vmap called Thickened to mark the inner wall geometry with values of 100%. This weight map would be later used to invert the ZBrush displacement on the inside of the mesh (21).

7) Because the mesh matched that of the original alien, the original rig in Layout could have its mesh swapped out for the bust mesh. The alien could then be posed in Layout instead of Modeler. One advantage of posing in Layout is that many poses can be tried in one scene by keying dierent poses on dierent frames. (22-24) Morph Mixer was used to close the mouth.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 12

LightWave 11 Features

3D Printing

The nal pose chosen was not too dierent from the original pose. The mouth was closed and the head raised slightly (25-26).

8) The original node network in the Displacement Node Editor was modied to invert the ZBrush displacement on the interior geometry. That way, if the displacement map made an indent on the outer wall, the same spot on the inner wall would be raised instead of similarly indented. This helped preserve the wall thickness (27-28).

9) When saving a subpatch object, Save Transformed respects the Subpatch Display Level. If the Subpatch Display Level is set to 0, Save Transformed will save out a subpatch model. If the Subpatch Display Level is set to 1 or higher, Save Transformed will save out a frozen, tripled mesh of polygons. The higher the Subpatch Display Level, the higher the number of polygons. We set the Display Subpatch Level to 6, which meant that the bust (not including the pedestal or the eyes) would have 321,120 polygons when frozen. The more polygons used to describe details, the smoother the 3D print would be. We then used Save Transformed to save out a copy of the mesh in its posed, frozen position (29). A dierent lename was used for this copy so as not to overwrite the original subpatch object.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 13

LightWave 11 Features

3D Printing

Although the exported mesh contained the bust geometry, it did not include the eyes. We selected the eyes object, set the Display Subpatch Level to 3 and used Save Transformed to export a frozen copy of the eyes in the same posed position as the bust (30).

10) We now had two objects representing the posed and frozen geometry of the bust and eyes, respectively. These objects into Modeler and placed into a single layer. As spheres, the eyes did not need any special treatment. However, the bust needed one last inspection to make sure that its ZBrush displacement did not cause any intersection errors between the exterior of the skin and the interior of the skin. Making sure that the interior had a dierent wireframe color than the exterior of the geometry was about to pay o (31).

11) Spinning the model around revealed an intersection between the interior and exterior geometry of the head in the rear (32). This intersection had to be resolved to ensure a good quality print.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 14

LightWave 11 Features

3D Printing

Selecting the oending geometry and using a combination of Magnet and Dragnet to push the geometry back into the skull xed the problem (33). 12) At this point, the bust had a pose and good geometry. Now it needed to be scaled to print size. Scale was used to bring this mesh down to 25% of its original size. It was now about 200 mm in height (34).

13) It could be printed, but it would not stand up on its own. This bust still needed a pedestal to support it after printing. Like the bust, the pedestal required high enough resolution not to appear faceted and a minimum thickness of 2 mm in order to be printable. It also required UV mapping for any texture maps. The pedestal was built to scale, using Lathe on a spline to create the shell of the pedestal (35) and mapping it with cylindrical UVs (36). We then used Thicken to give it a minimum wall thickness of 2 mm, and (as before) gave the Thickened surface a dierent wireframe color. Color Wireframe and Textured Wire display modes were used to detect any intersecting geometry, and the inner geometry was cleaned up by deleting unecessary loops with the Edit Edges tool.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 15

LightWave 11 Features

3D Printing

14) A 3D printer can handle intersecting geometry up to a point. We took advantage of this and attached the pedestal with intersecting geometry. We lowered the bust onto the pedestal until the support structure within the bust intersected the top of the pedestal. There was no Boolean involved, just the intersection of two separate meshes (37).

15) The bust now had a pedestal. It now needed to meet Shapeways standards. All polygons need to be planar for 3D printing. The bust was already made up entirely of triangles. As a precaution, we tripled the mesh of the pedestal (38). 16) Shapeways accepts GIF, JPG and PNG les for texture maps. GIF images are restricted to 256 colors, while the lossy nature of JPG les can result in compression artifacts. We opted to convert all of the original color TIF image maps to PNG les and save the model using them instead of the TIFs. For the statues surfacing, all non-color maps were removed, since the 3D printer was only concerned with geometry and color data (39).

17) LightWaves VRML exporter will export the rst layer of the object, so we pasted the pedestal
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 16

LightWave 11 Features

3D Printing
geometry, the bust and eye geometry into the rst layer of the object. This was then exported as a *.wrl le using the VRML exporter. 18) Lastly, Shapeways expects a ZIP le that contains only the *.wrl and associated texture maps in PNG, JPG or GIF format. This ZIP le cannot contain any folder structure whatsoever. Only les can exist inside this ZIP le. Shapeways is also case-sensitive, so the texture maps should have the exact same capital and lower case letters as the original texture maps.

The end result surveys our oce

For 3D printing there is no polygon budget and there are no tricks like smoothing or normal mapping. Your geometry needs to capture all the detail of your model; you are not going to use it for animating with.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 17

LightWave 11 Features

3D Printing
STL Import/Export Format
STL is the grandaddy of 3D printing le formats and is in regular use today. It is the lowest common denominator that misses out on some of the bells and whistles of more recent formats but can be guaranteed to be understood by all software dealing with 3D printing.

Import
STL les can be dragged and dropped onto LightWave to load or they can be loaded using the Load Object le requester. When loading in either fashion you will be presented with an Options box like so:

Weld - welds the points of the mesh so that using Select Connected will select the whole mesh Up Axis - For LightWave its Y, but bringing in an STL created with other software might have a dierent Up Axis. This merely rotates the object so it stands upright. Import Units - Since STL objects have no inherent unit system, one needs to be determined from the number eld and the dropdown next to it. If you are bringing in an STL made in LightWave, the default of 1 m is good.

Export
When you export in STL format, the rst thing to consider is that the format only supports triangles. If your object has any polygons of a dierent number of sides you will see this message:

Any polygons in your object with more sides will be tripled. Polygons with fewer sides (1-point, 2-point) will be deleted. Once you have clicked OK you will get this options window:

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 18

LightWave 11 Features

3D Printing

In it, you can choose whether your STL le will be saved in ASCII or Binary, what the Up Axis is and Unit Scale for the destination environment. There is also the Positive Quadrant setting, which moves the object into the +X, +Y, +Z space for printing software that prefers it.

PLY Import/Export Format


PLY is Stanford Universitys evolution of the STL format and doesnt specically require triangles. It can keep also additional data about an object, such as Vertex Normal maps, UV maps and Vertex Color maps.

Import
When you bring in a PLY le through the le requester or using drag and drop you will be presented with this Options window:

It is essentially the same as its STL counterpart only now you can choose to import the UVs, Vertex Colors and Vertex Normals with the object if you wish.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 19

LightWave 11 Features

3D Printing
Export

As for STL with the Up Axis and Export Units, but Normals, Vertex Colors and UV Coordinates are only available if your object has them. For the File Type, if you choose Binary you have the option of Big or Little Endian encoding. Since most processors on the market today use Little Endian encoding you will probably be safest using it for your exports.

VRML Support
VRML .wrl les can be saved from Layout or Modeler. VRML is important, not so much for its use on the web these days, but for color 3D printing. It is the only format that supports image-mapped polygons right now. The advantage to being able to save a VRML object from Layout is that said object can be posed and deformed by modiers like IK in LightWave allowing you to set your model up comfortably. LightWave cannot currently load VRML les.

Please note that when exporting as STL, PLY or VRML only the current object layer is considered. None of these formats support multi-layered objects.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 20

MAIN TITLE
SUB-TITLE

Spline Control

LightWave 11 Features

Spline Control
Spline Control

LightWave 11.6 presents a whole new way to animate using a virtual spline. LightWave users familiar with the Animation Path Wind tool will feel instantly at home with the way that Spline Control is set up and users transitioning from other 3D software will appreciate the exibility LightWave brings with its virtual splines.

How to Create the Spline


In order to use this tool, the user must create a virtual spline. This is not a new idea for LightWave, since Animation Path Wind used a virtual spline back in LightWave v9. To create a virtual spline, the user must parent two or more items to a parent item. These child items must also meet the following two conditions: they must be marked active with checkmarks in the Scene Editor, and they must have no children of their own. Then that parent item must be referenced by the Spline Control setting of at least one other item in the scene. The parent item represents the container for the spline, and the child objects will represent the nodes for that spline.

Bones and Joints can serve as the child items that dene the nodes of a virtual spline. Unlike Objects, Lights and Cameras, however, Bones and Joints default to inactive (unchecked in the Scene Editor) when rst added to a scene. Because Spline Control ignores inactive items in a Spline Control Items hierarchy, Bones and Joints will not appear to work until they are activated in
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 22

LightWave 11 Features

Spline Control
the Scene Editor. In addition, two or more of these active Bone/Joint items must have no children of their own in order for these items to count as the nodes of a virtual spline.

When the root of a hierarchy is presented as a Spline Item, Spline Control considers all of the items on that hierarchy that have no children of their own. This means that the user can parent items together in order to insert puppet controls between the nodes of the virtual spline and the Spline Item that forms the root of the hierarchy. An example of how Spline Control only considers leaf-children can be found in the 01_Learning section of the 11.6 example content.

To align the rotations of a virtual splines nodes to itself, change the Heading Controller, Pitch Controller and/or Bank Controller to Spline Control. When no specic spline item is specied, the nodes will align their rotations to the spline that they themselves describe.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 23

LightWave 11 Features

Spline Control
How to View the Spline
You have the choice of how you would like the spline displayed in the GL section of the Options panel. Here are the choices:

Curve When Selected (Spline is not selected so theres nothing to see otherwise it would look like s yellow version of 4)

Ribbon When Selected (Spline is selected)

Curve (Spline is not selected)

Ribbon (Spline is not selected)

Curve, Ribbon When Selected (Spline is selected)


Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 24

LightWave 11 Features

Spline Control
When the Spline is not selected and the Curve or Ribbon options are chosen it will be drawn in the object color for the Spline object. If the Spline is selected it will appear in the normal LightWave yellow as shown in 3 and 6. There is an additional option, Show Spline Targets. This links a dotted line back from each node to the parent of the whole spline no matter how deep inside the hierarchy it is.

Show Spline Targets and Curve, Ribbon Selected options chosen (Spline is selected)

How to Tweak the Spline


Rotating the Heading and Bank of each node on the virtual spline will aect the bend and twist of the spline.

How to Activate/Deactivate Spline Control on a Per-Channel Basis


Spline Control aects Position and Rotation channels by default. However, these can be disabled on a per-channel basis by going to the Controllers and Limits tab of the Motion Options panel and changing Controller options in the Position/Rotation tabs from Spline Control to Key Frames.

Open vs Closed Splines

A spline is open by default. To create a closed-loop spline, select the spline item - that being referenced as the Spline Control of another item. Type m to access the Motion Options panel, and go to Controllers and Limits. Activate the Closed Spline checkbox to close the spline.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 25

LightWave 11 Features

Spline Control
The Z Position Represents the Distance Traveled Along the Spline
Animate the Z Position of an item driven by Spline Control to push that item up or down the spline.

Item Chains
A chain of items refers to a hierarchy where each item is the child of the next item. An example of an item chain would be a linked chain of train cars, where the caboose is parented to a boxcar, which in turn is parented to the engine. Another example would be the bone chain that represents the spine of a snake or the spine of a Chinese dragon. To apply Spline Control to an item chain, select all members of the item chain, type m to access the Motion Options panel, and change the Spline Control item from (none) to the parent item representing the virtual spline. All items in the chain will conform to the spline. Animating the Z Position of the root item in the item chain will push/pull the entire item chain along the spline. You do not have to apply Spline Control to an entire hierarchy. For a Chinese dragon, apply Spline Control only to the spine bones of the dragon and not to the leg and arm chains. That way you can use Spline Control to animate the spine of the dragon and other means (such as FK or IK) to animate the legs, arms, head and jaw of the dragon.

Animate the Nodes of the Spline to Animate an Item Chain


Animate the nodes of the spline to change the shape of the spline. This, in turn, will change the shape of the item chain that conforms to the spline.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 26

LightWave 11 Features

Spline Control
Getting Started with Spline Control
1) Launch Layout. 2) Add a null object to the scene, and name it Spline ( the name isnt important for identication, just for simple steps) 3) Add two more null objects to the scene, and give them each the name, node. (Again, the name isnt important, name it what you want) 4) Parent the two node null objects to the Spline null object. 5) Give the second node null object a Z position of 1 m so that it is spaced 1 meter away from the other node null object. 6) Select the Camera of the scene and use the keyboard shortcut m to open up its Motion panel. 7) Locate the Spline Control setting near the Parent and Target settings. Change this Spline Control setting to Spline.

Congratulations! You have just created a virtual spline that by default overrides the Position and Rotation channels of the Camera. A line will be drawn through the two node null objects to show you the path of the spline. 8) Now, select the second node null object and clone it twice. 9) Move these clones away from the original null object and from each other. You have just added two more control points to this spline.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 27

LightWave 11 Features

Spline Control

10) Select the Camera (which still refers to the Spline null as its Spline Control). While under the inuence of Spline Control, the Z position of the Camera represents the distance traveled along the spline. In the lower-left-hand corner of Layout, enter XYZ values of 0 m, 0 m, 0 m for the Position data. If you do not have Auto Key enabled, make a key now to keyframe the Camera. 11) Scrub to frame 24, enter a Z value of 2 m for the Position data and make a keyframe for the Z Position. The Camera will travel 2 m along the spline. The values shown in the lowerleft-hand corner will be the XYZ values applied by Spline Control. These are the same XYZ values that will be reported to tools that reference motion data, such as Same as Item. 12) If the Camera banks unexpectedly, there are two ways to correct it. The rst way: Select the Camera Type m to bring up the Motion Options panel Go to the Controllers and Limits tab Go to the Rotation tab Change Bank Controller from Spline Control to Keyframes.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 28

LightWave 11 Features

Spline Control

The user can then keyframe the bank by hand. However, the alternate way is to try to correct the spline path itself: Select each null item called node (the child objects that dene the nodes of the Spline) and rotate their Heading to align them with the path of the spline. This can help reduce unexpected banking errors as the camera moves along the spline, but it may not be as reliable as disabling Spline Control for the Bank Controller.

Note that you can also use Spline Control with Instancing for interesting animation possibilities. The process is described in the Instancing section on page 57. Genoma also adds Spline Control features described starting page 241.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 29

LightWave 11 Features

Spline Control
Going Further
Included with the content for 11.6 are a number of scenes that demonstrate very well what SplineControl can do, with helping text.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 30

LightWave 11 Features

Spline Control
Curve to Spline
Creating splines in Layout is ne when you are only using a few nulls to make your spline, but if you need hundreds to make a complicated path then creating them all with nulls in Layout could be a laborious process. A tool has been added to Layout to streamline the creation of such splines. To use it, create a curve in Modeler using whatever method you like (Add Points, then Make Open Curve on the Create tab; import an EPS using the Spline Curves option, etc.), save it and send it to Layout. In Layout, go to the Setup tab and in the Edit group use Curve to Spline. If you have multiple splines in your object you need to split them over several layers since Curve to Spline only works on the rst spline in a layer. Rather than using nulls, the controls in the spline in Layout are created using bones (specically Joints), which has two advantages - the Layout object list isnt lled with nulls needlessly, joints automatically have a pleasing control shape and can be sized in the viewport using the Options > Display > Handles & Icons settings.

Export Spline
Export Spline is a tool in Setup > Edit to convert Spline Control splines in Layout into Modeler curve objects. Simply select the head of a spline object and hit Export Spline and the entire spline will be saved as an LWO that can be further edited in Modeler, then reimported to Layout using Curve to Spline again. When reimporting like this, Curve to Spline will note that the spline has already been used and intelligently update node positions and quantities as needed rather than generating a new spline.

Example: Curve to Spline and Spline Instancing


In a very bling example, our client wants their name to appear in diamonds. We have created similar scenes with Flocking before, but now lets use tools new to 11.6 for a similar eect.

1) Starting in a vector drawing package we will create our logo and export it as an EPS le.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 31

LightWave 11 Features

Spline Control

2) Bringing the EPS into Modeler we will use the Spline Curves option and the Rough Curve Division Level will be plenty. Use Layers > Connected to Lyrs to split all the characters onto their own layers. Because we have imported splines, the centers of letters and dots on lower case Is will be separated. If you are using a script font, the text will come in as though joined, but you may well want to Kill Polygons and recreate the spline as a single loop.

3) Name all the layers of your object to make things easier. For each object making the logo we will want an object to instance. For our example, use the Gemstone tool to create a new layer in our spline object.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 32

LightWave 11 Features

Spline Control

4) Save the object and send it to Layout. In Layout use Setup > Edit > Curve to Spline to convert your curves into Spline Control splines. If the Bone icons are too big, hit d to enter Display Options and change the Bone Icon Size.

5) Get Properties on your Spline objects and add an Instancer. In the Instancer choose the gem to Instance and set the Instance Type to Spline. Choose a number of instances that seems right for the letter and check Distribute. Youll want to mess around with Scale and Rotation to give a more random appearance.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 33

LightWave 11 Features

Spline Control

6) By default, an Instanced object is set to World Coordinates and we will use that to our advantage to create an implosion where the diamonds come together to form our word. At frame 0 move the instanced object away from 0, 0, 0. At after the delay you want, say 60 frames, move it back to 0, 0, 0. This will form a cloud of diamonds that come together to create your logo.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 34

MAIN TITLE
SUB-TITLE

Raycast Node

LightWave 11 Features

Raycast Node
Raycast Node for Motion , Displacements and Instancing
The easiest way to think of the RayCast node is that it makes objects aware of their surroundings. Cars can stick to roads, lamps to desks, automatically.

Getting Started

To begin with well use the simplest of examples. Create a new Ground Plane object using Modeler Tools > Create > Geometry > Ground Plane. Give it 10 subdivisions in X and Z. Once done, click Modeler Tools > Toggles > Toggle Subpatch to make it a subpatch object.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 36

LightWave 11 Features

Raycast Node
Select the Ground Plane and go into Object Properties with p. On the Geometry tab, change Display Subdivision to 6 and then on the Deform tab, click the Displacement Map T button. In the window that opens, change Layer Type to Procedural and hit Use.

Now use Modeler Tools > Create > Geometry > Sphere to make a ball. Were not going to be accurate in this example since we just want to show the ball reacting to the terrain, not rolling. Accept the defaults, and when the ball is presented move it up to Y = 1 m.

Go to a Top view and animate the path the ball will take across your bumpy terrain and then switch back to Perspective view. If you press Play now the ball will oat over the terrain.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 37

LightWave 11 Features

Raycast Node

Lets change that by going into the balls Motion Options by pressing m. Click on Add Modier and choose Nodal Motion (01). Double click on the entry and a node editor will open showing two nodes, Input and Nodal Motion. Were going to add a third: Ray Trace > RayCast Geometry (02). The only things that need to be done with this new node are to double click it to set the RayCast Object(s) to be used, and to connect the Intersect output to the Nodal Motions Position input (03). Now press Play again.

Going Further
Perhaps the twisty turny path you have imbued the ball with is trying to avoid obstacles placed on the terrain. We thought the same so wanted to place some concrete pillars in the way of our plucky ball. We used the same RayCast node to position these pillars on the bumpy terrain.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 38

LightWave 11 Features

Raycast Node

Use Modeler Tools > Create > Geometry > Cube to make a single pillar and give it a Height value of 3 m in Y. Dont forget to move your pillar up in the Y so it is above the terrain. Copy the Nodal Motion modier from the balls Motion Options and paste it into the pillars Motion Options. Now as you drag the pillar about you will see it is stuck to the terrain. Clone it a few times and dot them around the terrain for your ball to avoid.

The Ray Cast Geometry node can be processor-intensive and your scene playback might stutter particularly if the Nodal Motion window is open or you are showing Motion Paths (GL tab in Options). If performance is still sluggish with these options disabled, make sure you bake the displacement to an object by using File > Save > Save Trans Object.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 39

MAIN TITLE
SUB-TITLE

Unified Sampling

LightWave 11 Features

Unified Sampling
About Unied Sampling
The way that LightWave handles shading, lighting and antialiasing quality has been overhauled in LightWave 11. Previously these settings were scattered around the user interface, making changing various settings tedious. More importantly, these settings didnt work as well together as they could to produce the best results. In LightWave 11 these settings now work in tandem with each other and the render engine, and the render engine now only takes samples where it needs to. This often results in improved quality at equal or improved render times. It is also now much easier to control the maximum number of samples LightWave will use. Previously this was not possible and could result in overly long render times. When using Volume lights with jittered sampling, set the Volume Quality to Low and adjust the quality/speed using the max camera samples and adaptive quality. They can render much faster this way. This is the same reason we set the light and shader samples to 1 by default with the new sampling. A number of changes to the interface have been made as a result of this feature. Here is an overview of the dierences between LightWave and previous versions:

Nodes
Material and Shader nodes no longer have a Samples setting. These settings now reside in the Render Globals > Render tab under Shading Samples.

Surface Editor
In the Surface Editor > Environment tab, Reection/Refraction Blurring no longer have a Samples setting. These settings now reside in the Render Globals > Render tab under Shading Samples.

Light Properties
Lights no longer have Quality or Samples settings. These settings now reside in the Render Globals > Render tab under Lighting Samples.

Antialiasing Settings
On the Camera Properties panel, youll now see a Minimum Samples and Maximum Samples setting. These replace the previous antialiasing settings, except when using the Classic Camera.

Render Options
Two new settings; Shading Samples and Lighting Samples are now present on this panel. This is where the global (or unied) settings for all shading and lighting quality settings are located.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 41

LightWave 11 Features

Unified Sampling
Overview of Controls

Shading Samples
This aects all nodes that previously had a Samples setting (such as blurry reections/refraction) and replaces them with a single, global value. To shade a pixel, LightWave needs to gather information about it. Shading samples dene how many rays are red to that pixel to determine its overall shading. Every pixel in the rendered image is hit by an initial ray red from the camera; when a hit occurs. If you have Shading Samples higher than 1, more rays are red. The amount red is set by the number of Shading Samples, so if you set it to 4, that many rays are red. This process is repeated for each pixel if Minimum Samples is higher than 1, and is repeated as many times as set by the Maximum Samples in Camera Properties. Lower numbers render faster at the expense of quality or noise in the image, the reverse is true for higher numbers.

Light Samples
Works in a similar way to shading samples, but for light (or shadow) quality. The lower the number the faster rendering will be, again at the expense of noisier shadows. Higher numbers result in smoother soft shadows, but will result in higher render times. This setting is now for all lights.

In previous versions of LightWave this setting was samples squared, so the default light quality setting of 4 prior to LightWave 11 would equate to a sample setting of 16 in LightWave 11, worth bearing in mind if you are loading older scenes.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 42

LightWave 11 Features

Unified Sampling

Antialiasing
On the Camera Properties panel, there are now two controls that replace the previous Antialiasing controls found in LightWave except when using the Classic Camera - Minimum Samples and Maximum Samples. If Adaptive Sampling is unchecked, Maximum Samples is ghosted and you only need concentrate on the Minimum Samples value. When using only Minimum Samples, this is similar to the standard Antialiasing levels in previous versions of LightWave.

Classic Camera antialiasing remains unchanged. The new settings do not apply.

Minimum Samples
This value determines how many camera rays are generated per pixel. As the name suggests, this allows you to set how many samples are ALWAYS taken per pixel on the rst pass of the image. When Adaptive Sampling is active, setting a higher minimum value will result in fewer Adaptive Sampling passes, because the image has already been through initial antialiasing.

Maximum Samples
Available when Adaptive Sampling is on, this allows you to limit the number of samples LightWave will ever get to during the Adaptive Sampling process. Previously in LightWave it was dicult to set a limit to this stage of the process, meaning that LightWave could keep on rening in the Adaptive Sampling stage, even when no more antialiasing was really needed, or was perceptively visible. This can result in equivalent or improved quality at equal or faster render times than previous versions. While the threshold detection has not changed, the way in which additional samples are taken has. Previously when the Adaptive Sampling Threshold was breached, the Adaptive Sampling
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 43

LightWave 11 Features

Unified Sampling
routine would be in control of how many more samples it would take; you had no control over this. In LightWave 11, every time the Adaptive Sampling Threshold is passed it will now take one more sample. It will keep taking one more sample every time the threshold is hit unless it reaches the Maximum Samples setting, or there are no more pixels that are selected by Adaptive Sampling detection for renement. The result of this means that lowering the Adaptive Sampling Threshold to resolve ner noise in an image does not mean it will result in the expensive render times of previous versions, due to the render engine not taking the same amount of samples at that stage. Render times will clearly be increased, but whats important to understand is that before in LightWave, a setting of 0.01 would be as extreme as most users would be willing to go; now you can set it to 0.005 or 0.001 along with an appropriate Maximum Samples setting to achieve equivalent or in many cases higher quality than previous versions of LightWave, without the same time penalty this once meant. As with previous versions of LightWave, nding a good balance between render quality and speed is very scene dependent. You may need to experiment with the Maximum Samples and Adaptive Sampling Threshold on a smaller area of your scene using the Limited Region render.

Unied Sampling Changes


Unied Sampling is a method new to LightWave 11 for creating your renders, which has been further rened to make your renders faster in 11.5. Now, instead of the default Light and Shading Samples being set to 8, they have been reduced to 1 each.

This change means that setting up your scene and hitting F9 immediately will give a faster impression of what your nal image will be like, but you will probably need to massage your settings to get the best balance between speed and quality for your nal image. Start by raising your Max Samples setting in Camera Properties to 16 and if you are using traditionally noisy lights or surfaces you might consider raising the Lighting and/or Shading Samples but slowly, perhaps to 2 or 3. Examples of noisy lights would be Area, Dome, Spherical and noisy surfaces would be things
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 44

LightWave 11 Features

Unified Sampling
like blurred reections or CarPaint - things that in previous versions would have had a Samples or Quality setting. You should think of the Lighting/Shading Samples and Max Samples settings as being multipliers. For example, your Shading Samples are set to 8 and multiplied by the Max Samples setting in Camera Properties. If we imagine that you have set this to 16, then 16 x 8 would re a maximum of 128 shading samples in total for every pixel of your image. If you also set your Light Samples to 8, you would have 128 shading samples and 128 light samples per pixel, and this starts to become quite heavy to render. Lowering the Light and Shading Samples from 8 to 1 can decrease render times dramatically, at the cost of extra graininess. In typical usage, increasing these samples too much is overkill because the samples lost are already regained for free once you begin using Anti-Aliasing and Adaptive Sampling to eliminate icker and aliasing.

When using the Shadow Catcher nodes Roughness setting Shading samples need to be set to at least 2 or any reections will disappear.

Additional Notes

Old scenes loaded into LightWave 11 are not aware of the new Min Samples and Max Samples settings, and therefore will be set to their defaults. This could mean that your old scene appears to render either slower or faster but noisy. You will need to adjust the values to suit your scene. Due to changes in the way samples are generated, the Rays Per Evaluation and Secondary Bounce Rays in the Global Illumination panel are aected. This means in order to get similar results to previous versions of LightWave, you will need to increase these values, often doubling them. It wont take any extra render time, but is needed to account for the dierences in number of GI samples generated with the new system. When the Use Gradient option is checked in the Global Illumination panel LightWave uses the old sampling method for Global Illumination only. When o then it uses the new sampling. Ray Cuto on the Render Globals panel looks at the eect of the ray on the nal pixel color. The more times a ray bounces the less it contributes to the nal pixel color. The cut o is a way to save computation by eliminating rays that have no real eect on the nal pixel.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 45

MAIN TITLE
SUB-TITLE

Instancing

LightWave 11 Features

Instancing
About Instancing

Image Courtesy NewTek Forum user Cagey5

Instancing allows vast duplication of objects in a scene with very little overhead. With instancing huge virtual polygon counts can be achieved allowing the artist to populate their scenes with incredible detail, yet retain reasonable render times and memory usage. While instances can be thought of as clones of the original source objects, they do not need to look identical. They can be randomly scaled, positioned, rotated and even surfaced entirely dierently from the source, allowing for a huge variety of uses. Instancing capabilities have now been added to Layout. The Instancer Tab on Layouts Object Properties panel is where the action happens. The selected object in the Object Properties panel will be the point source for the Instance Generator, once it has been added to the source object. Several instancing distribution methods are provided. Instances can be displayed in OpenGL as normal objects, bounding boxes, as points, or not at all, as the user chooses and are fully supported in VPR. Instances work with Classic, Dithered and Photoreal Motion Blur and Surfaces can be varied among the instances.

Instances work with all LightWaves built-in cameras except the Classic camera.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 47

LightWave 11 Features

Instancing
Getting Started with Instancing
To get you going with Instancing, were going to make a very simple example purely using Layout that should whet your appetite for knowing more.

Start by visiting the Modeler Tools tab and use the Create > Cube and Create > Ground Plane buttons. You can leave the settings for these exactly as they are.

Make sure the Ground Plane is selected and go into Object Properties by hitting p on your keyboard or this button at the bottom of the Layout interface.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 48

LightWave 11 Features

Instancing
Go to the Instancer tab and choose Instance Generator from the dropdown menu.

Double click Instance Generator and from the Add Object dropdown choose New Cube Object. Congratulations youve made an Instance. Right now, its Type is Item Pivot and since the Ground Planes pivot is in the same place as the Cubes, the instance you have created is in the same place.

Lets make things more interesting. Change the type to Surface and put in 1000 instances. They are all overlapping, so lets shrink them down and position them more dynamically.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 49

LightWave 11 Features

Instancing

In the Scale tab set the Min to 1 % and Max to 10 %. In the Oset tab just change Max Y to 2 m. In the Rotation tab set Max H to 45 .

Now play. Use VPR to show your cubes rendered instead of those blue bounding boxes. Up the quantity of Instances - try a million or more!

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 50

LightWave 11 Features

Instancing
There are several types of instancing for the user to choose from. Most of these provide additional dedicated controls when activated. In addition, each instance type can use the options found under the tabs at the bottom right of the panel to control the distribution and range limits of various attributes for instances. Nodes are available to allow for varying the surfaces among instances, and controlling other attributes as well. First we will list the types and their dedicated controls, then we will cover the controls in the tabs below.

Instancing Changes
In LightWave 11.5 you can now have independent settings for each element in an Instancer panel. Copying and Pasting settings is now available in the Instancer Edit menu. You can also directly enable and disable rendering of Instances in the Render Globals > Render tab.

Also new to 11.5 is the ability to dene Surfaces in the Instancer Polygons type. You can choose surfaces by name and each click on a name toggles it on or o, or simply click All.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 51

LightWave 11 Features

Instancing
11.6 Instancing Changes
New to LightWave 11.6, the Instancing panel is now completely multiselect-aware and Spline instancing has been added.

Overview of Controls

Instance Generator Name


You can have multiple Instance Generators attached to an object. The text entry eld found at the top left of the panel allows you to enter a name for the Instance Generator youre editing. This is the name that will appear in the Instancer list on the Object Properties panel, so that you can tell multiple Instance Generators apart.

Add Object Popup Menu


This lists the objects in the scene, and allows the user to select the objects that will be instanced. When an item is selected, it then appears in the Instanced Objects List, just below the two dropdown menus.

Edit Popup Menu


Remove Selected - Removes the selected object from the Instanced Objects Window. Remove All - Removes all objects from the Instanced Objects Window.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 52

LightWave 11 Features

Instancing
Replace Object - Pops up a list of the objects in the scene, and the user can pick one to replace the object currently selected in the Instanced Objects Window. Add from Layout - Adds selected object or objects to the Instanced Objects Window. Remove from Layout - Deletes selected object or objects from the Instanced Objects Window. Replace From Layout - Swaps one item selected in Layout for one item selected in the Instanced Objects Window. Copy Settings - This copies all the transform settings (Scale, Stretch, Oset, Rotation and Nodes) for the selected instance item now that all instance items in an Instancer can have dierent values. Paste Settings - This pastes all the transform settings for an instanced object now that all instance items in an Instancer can have dierent values.

Instanced Objects List

Lists the instanced objects and provides controls for several basic attributes. Active (Checkmark) - Controls whether an object will be instanced or not. Instance Color - Selects the OpenGL color for instances of this object. Visibility - Controls how the instances for this object are displayed in Layout. None - Instances are hidden in the viewports (but they are still active) Point - Instances are displayed as points. Bounding Box - Instances are displayed as bounding boxes (default option). Wireframe, Front Face Wireframe, Shaded Solid, Textured Shaded Solid - Displays the mesh of the instanced object. This could severely slow down your scene, use with caution. Transformation Handling - Sets handling of transformations of the instances with respect to the source object. World - When world coordinates are used, the instances will respect any transformational changes made to the source item (default option). Local - When local coordinates are used, the instances ignore any transformational changes made to the source item. Parent - When instancing hierarchies, setting parent mode ensures the hierarchy maintains the relative positions of its elements.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 53

LightWave 11 Features

Instancing
Hierarchy (Checkmark) - Selects whether a hierarchy attached to the source item should also be instanced. O - Attached hierarchy is not instanced (default option). On - Attached hierarchy is instanced. Item - Name of the object(s) used as an instance source.

Generation Tab

The controls in this tab are where you set the type of generation for instances. The types are: Item (Pivot) - Creates an instance at the pivot point of the host object. A usual use case for this would be to use a null to create a clone of a scene item. This is what Clone Instance does. Points - Creates instances at the points of the host object. Max Points - Automatic way to set instances to match the number of points in the host object. This setting evaluates subdivision geometry, so youll always get the full number of instances regardless of display vs render subdivisions. Instances - Set the number of instances to create. Polygons - Creates instances at the polygons of the host object. Max Polygons - Automatic way to set instances to match the number of polygons in the host object. This setting evaluates subdivision geometry, so youll always get the full number of instances regardless of display vs render subdivisions. Instances - Set the number of instances to create. Particles - Creates instances at the locations of particles (for use with particle emitters only). Surface - Creates instances on all surfaces or a designated surface of the host object. The host surface must be quads or triangles, no n-gons. Instances - Set the number of instances to create. Surface Name - Select the surface(s) on which the instances will be placed. Distribution : Random - Places the instances randomly on the selected surface(s).
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 54

LightWave 11 Features

Instancing
Uniform - Place instances at uniform distances on the selected surface(s). Relax - (Active when Uniform is selected) You can relax the instance distribution across your object in a series of iterative steps that will gradually quantize placement making instances more evenly spread. There are 40 levels of relaxation and each one marks an iteration, so setting it immediately to 40 will take some time to show results depending on the quantity of instances to be processed. If the instances overlap, then either too many are being packed in or the scale is too high. Rectangular Array - Creates instances in a 2D or 3D box-like array. X, Y and Z Instances - Sets the number of instances to create in each Axis. X, Y and Z Spacing - Set the spacing of the instances along each Axis. Radial Array - Creates instances in a 2D circular array on the selected axis around the pivot point of the host object. Instances - Set the number of instances to create. Axis - Set the axis for the array. Radius - Set the radius of the array. Start Angle - Set the starting angle of the array on the circle. End Angle - Set the ending angle of the array on the circle. Oset - Sets an oset distance perpendicular to the axis chosen between the instance at the start angle and the instance at the end angle. The instances between will be proportionally oset. Motion Path - Creates instances along the motion path of the host object.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 55

LightWave 11 Features

Instancing

Giving a Null a motion path and then assigning it an Instance Generator allows this chain of Layout-created cubes to follow the Nulls motion path with a great deal of control.

Instances - Set the number of instances to create. Separation - Time in seconds between each instance. Time Oset - This slips the instances forward and backward along the motion path, and again is in seconds. If the value was 1 , then the instances would appear 1 second further along the motion path. Negative values slip the instances further back. Lock Motion to Time - This makes the instances move along with the motion object. You can use this in conjunction with Time Oset to make the instances move along with the object, but further ahead or behind in time. Scale Motion Time - Scales the speed that time passes when Lock Motion to Time is on. For example, 0.5 would move the instances at half the speed of the motion object, while 2.0 would move them twice as fast. Follow Motion Object - Instances are generated from the motion object forward in time, or backward; this control determines the behavior. If Follow Motion Object is on, the rst instance is generated at the motion objects position and the rest trail backward down the path. Otherwise the instances are generated ahead of the motion object with the nal instance generated at the motion objects position. Separation Jitter - Jitters the Separation randomly so the instances are not uniformly distributed along the path. A value of 1 would jitter randomly from 0 to the separation value in either direction. Oset Frequency - Setting is in seconds; randomly jitters the position of the instances as they move down the path, like a simple ocking behavior. The positions change every
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 56

LightWave 11 Features

Instancing
second of the value of Oset Frequency, so for a value of 2 the instances should change position every two seconds. Use Local Oset - The oset values in the Oset tab can be either applied in world or local coordinates relative to the alignment of the instance on the path. Scale Positions Only - If the motion object is scaled as it moves, the instances can be scaled along with it, or just their positions can be scaled, to make them spread out from the path or move towards it.

Spline - Creates instances along a Spline Control spline. Instances - How many Instances youd like to place along your spline. Separation - How far apart you want the instances. The control is disabled if you choose the Distribute checkbox. Distribute - This control spreads the instanced items evenly along the spline. It ghosts the Separation control when used. Oset - You would use the Oset setting to create an oset from the start of the spline for your instances.

Options Tab

Display Preview - For faster interaction when working with a large number of instances, set the percentage of instances to be visible in the viewport. This does not aect nal rendering, but will make the UI, OpenGL and VPR more responsive by rendering with a lowered amount of instances. Random Seed - This value is what instancing uses as a base to generate a random number. Changing this will vary any settings using random values e.g. random scale. Every Instance Generator will have its own unique number, but if you wish dierent instance generators to use the
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 57

LightWave 11 Features

Instancing
same random state, you can set the same number here. Useful if you want items in more than one instance generator to be aligned. Motion Blur Time Slices - This is a setting for rotations. Low numbers give a segmented look to objects moving in an arc, but the default setting of 10 should give a good look in most cases.

Above the transform settings are three controls: Weight - The weight property can be used for limiting (turning o ) the number of instances being shown, despite how many instances you have set. It does this by determining an approximate amount of probability of an item being shown, using the value you set. You can use a simple value, or the Texture Editor for more advanced weighting. This property can also be animated, so you can have instances appear/disappear over time.

The weight is not the percentage of the maximum number of instances for each item, but is the approximate probability as a percentage of that item being shown. Note that this randomness is designed to work with large quantities of instances. If you are working with a small number of instances it would be wise to use a dierent method, such as Points or Polygons, if you expect xed quantities of instances.

Weight Examples
Imagine we have a scene with only one item being instanced across a plane, with the max number of instances set to 100. At a 100% weight (or probability) it would clearly show all 100 instances. However, this setting can be used to limit the number of instances; if we set the weight 50%, you
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 58

LightWave 11 Features

Instancing
would only see approximately 50 instances, because they have a 50% chance of being shown.

1 Item, Weight: 100% (100 Instances out of 100)

1 Item, Weight: 50% (53 Instances out of 100)

If you count the number of instances in the 50% weight image above, youll notice there are 53 instances and not 50 as you might expect. To explain why this is the case, we need to add another item into the mix.

2 Items, Weights: 100% (100 Instances out of 100)

2 Items, Weights: 50% (53 Instances out of 100)

Two items being instanced at 100% weight will result in 100 total instances, but with each item approximately equal in number (both have 100% probability of appearing, so they are approximately equal in number). If we set both items to 50% weight, they now have 50% probability of being shown, however, we wont see 100 instances as you might think, but 53 as before. This might not make sense at rst, but the key word here is probability, so lets try and explain. The instancer has been set to have a maximum number of 100 instances. Lets imagine that number as a list of 100 instance slots, that are drawn in order from 1 to 100 (this is not how it works internally, but will help explain the concept).
1 2 3 4 5 99 100

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 59

LightWave 11 Features

Instancing
To achieve a random distribution when we have more than one item to instance, that list of instances also needs to be lled randomly, so as the instancer draws each slot in order, we see the instances scattered in a random fashion rather than ordered in groups of each instance item.
1 2 3 4 5 99 100

However, creating a randomly ordered list of items to be instanced is not very ecient, especially when you have the potential to have thousands or even millions of instances. This is why the instancer does not work this way. Instead, it uses the probability of an instance being shown, or the weight value. In reality, the instancer goes through the number of instances set, looking at the items in the instancer list and working out the probability to be shown for each item at that instance number. It determines this by a random percent value, if that value is less than the weight amount for the item, then the instance number its on is shown. Due to this randomness, the probability that an instance will be visible can vary a little, which is why there are 53 instances in this case and not exactly 50, but doing it this way is much faster than building and storing a pre-determined list of random numbers. That is why this method should not be used if instance numbers are low or exact numbers are required, since the variance for a small set will be larger proportionately than for a large set 53 out of 100 is a lot more signicant than 503 out of 1000 although both examples here have the same +/- 3 variance. Time Scale - Allows any instanced hierarchies to be animated slower or faster than the original object hierarchy that was instanced. Time Oset - Sets the animation oset (in seconds) of any instanced hierarchies from the original object hierarchy that was instanced.

Time Oset only works when the Instanced item is set to Parent and not World Coordinates.

Instance Transformation Options


At the bottom of the Instance Generator panel are a set of tabs for controls that can be used with each type of instancing. These are Scale, Stretch, Oset, Rotation, Nodes. Scale, Stretch, Oset and Nodes are identical for each type of instancing. Scale, Stretch, and Oset each provide two modes, Uniform and Random, for handling of the distribution of the attribute. In 11.5 these settings are unique to each item in your Instance list.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 60

LightWave 11 Features

Instancing
Scale Tab

Allows for varying the size of the instances. At the top of this tab are two functions that need additional explanation. Scale by Polygon Area - This compares the size of the polygons that will be used to position instances with the size of the original object being instanced. It also controls the amount of inuence the original objects scaling has on the Neutral Scale Factor. Neutral Scale Factor - This factors what size your instances will be for the polygon area they are being instanced on. Hence a Neutral Scale Factor of 2 will mean that two instances will t inside the area of the polygon. Both of these settings function in conjunction with the other scaling and stretching options available to you, increasing the exibility available. Mode : Uniform - All instances will be scaled at the same size. Scale - Sets the size by percentage. Random - Creates instances at varying scales based on the min/max settings. Min - Smallest size for an instance, as a percentage. Max - Largest size for an instance, as a percentage.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 61

LightWave 11 Features

Instancing
Stretch Tab

Allows for varying the proportions of the instances along each axis (X/Y/Z). Mode: Uniform - All instances will have identical proportions. Stretch X/Y/Z - Settings for the percentage of change to make in each axis. Random - Creates instances at varying proportions based on the min/max settings. Min X/Y/Z - Sets a minimum size in each axis. Max X/Y/Z - Sets a maximum size in each axis.

Oset Tab

Allows for an oset from the initial position the instance was created. Modes : Uniform - All instances are oset the same distance on each axis. Oset X/Y/Z - Settings for the oset distance for each axis. Random - Instances are oset at varying distances based on the min/max settings. Min X/Y/Z - Sets the minimum value for the distance of the oset. Max X/Y/Z - Sets the maximum value for the distance of the oset.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 62

LightWave 11 Features

Instancing
Rotation Tab

Allows for controlling the rotations of the instances in a variety of ways. Some of these options will be determined by the type of instance generation used. Alignment (Dependent on generation type): Item (Pivot) : Item - Instances align with the host item. Points : Item - Instances align with the host item. Normals - Each instance aligns with the normal of its associated point. Polygons : Item - Instances align with the host item. Normals - Each instance aligns with the normal of its associated polygon. Edge Align - Rotates an instance so its Z axis points at the center of the shortest edge of the polygon its generated on. Particles : Particles - Each instance aligns with its associated particle. Surface : Item - Instances align with the host item. Normals - Each instance aligns with the normal of the surface at its location. Rectangular Array : Item - Instances align with the host item. Radial Array : Item - Instances align with the host item. Rim - All instances are oriented to the pivot point of the host item.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 63

LightWave 11 Features

Instancing
Motion Path : Motion Item - Instances align with the motion item. Path - Instances align heading to the direction of travel along the path. Mode : Uniform - All instances have the same orientation. Rotation H/P/B - Entry elds to set Heading, Pitch and Bank. Random : Min H/P/B - Set minimum rotations for Heading, Pitch and Bank. Max H/P/B - Set maximum rotations for Heading, Pitch and Bank. Target Item - Instances orient to the pivot point of a target item. Target Item - Pick the target from the list of scene items, including lights and cameras. Target Mode - Changes how targeting is calculated. Look At - Instances all look at the pivot point of the target item. Axis Aligned - Instances all align with an axis of the target item. Axis X/Y/Z - Active when Axis Aligned is the target mode; selects the axis of the target object to align the instances with.

Nodes Tab

Access to the Node Editor for controlling the transformation and weighting of instances using nodes. Node ows can also be turned on/o without needing to delete or hook them. Use Nodes - Toggle on/o. Edit Nodes - Allows the user to access the Instance Generator Node and control instancing and attributes using a node ow.

Instance Generator Node


This works in conjunction with the settings in the transformation tabs on the panel, and allows node-based control of these items, as well as of the weighting of the instanced items. Any settings not controlled by nodes will use the panel settings, this allows you to mix node-based control with those on the main instance generator panel. Each of the inputs correspond to their equivalents in the main interface:
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 64

LightWave 11 Features

Instancing
Weight TimeScale TimeOset Scale Scale Min/Max Stretch Stretch Min/Max Rotation Rotation Min/Max Oset Oset Min/Max

The node transformation inputs are aected by whatever mode you have chosen in the main panel for the corresponding transformation. For example, if you had a node ow controlling Scale Min/ Scale Max, but in the instance generator panel you have the Scale Mode set to Uniform then the node ow will not inuence anything as you have chosen a dierent Scale Mode to that which the node ow is controlling. TimeOset only works when the Instanced item uses Parent coordinates.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 65

LightWave 11 Features

Instancing
Example: Abstract Sphere

For the animated abstract sphere above, we used a Turbulence procedural texture to drive the uniform Scale of our instanced cubes. We also set the Stretching to be Random and converted the same Alpha output from Turbulence into a Vector to drive the Stretch Max value to exaggerate the eect.

Hiding Instanced Objects


When you have used an object as an instance, it can be irritating to see it in OpenGL and renders still. You have several ways of removing it from view. 7) You can untick the Active entry in the Scene Editor. This removes it from VPR and renders, but not OpenGL.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 66

LightWave 11 Features

Instancing
8) You can use the Scene Editors Maximum Render level to hide the original object.

9) You can set the Instances of this object to use a Local coordinate system, whereupon you can move the original object out of camera view or position it to swim against the tide, as here.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 67

LightWave 11 Features

Instancing
Surfacing Instances
Instances can be uniquely shaded using Nodes in the Surface Editor, whether just a simple color change, or completely dierent materials. This section deals with the options you have at your disposal.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 68

LightWave 11 Features

Instancing
Random Colors (Fixed Random Output)
Creating random coloring of instances is done using the Instance Info node, connecting the Fixed Random output into a Gradient node, and then into any color channel. Setting keys at 0 and 1 on the gradient represents the total number of instances. An easy way to understand this is to think of key 0 as being the rst instance, and key 1 being the last. Every instance in between is then given a randomly picked color from the 0 - 1 gradient range. This is useful so that even if you change the number of instances in the Instance Generator, all instances will be included in the 0 - 1 range. The colors are picked at render time, and remain associated with the instance they were assigned to for the life of the instance. However if you change the number of instances, then the coloring may change as there are now more instances to consider.
Instance ID # 0 1 2 3 4 5 6 7 8 9

Randomly Picked From Gradient


Hermite / Linear / Bezier

0 Gradient Keys

You can of course add as many gradient keys as you like to introduce more random colors
Instance ID # 0 1 2 3 4 5 6 7 8 9

Randomly Picked From Gradient


Hermite / Bezier

Setting Up Random Coloring

Gradient Keys

10) Once you have instances setup, open the Surface Editor and click on the Node Editor. 11) Add the following nodes to your ow: Spot > Instance Info Gradient > Gradient
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 69

LightWave 11 Features

Instancing
12) Connect Fixed Random on the Instance Info node to Input on the Gradient node, and then Color on the Gradient node to the Color input on the Surface node. 13) Open the options for the Gradient node and gradient keys at positions 0 (top) and 1 (bottom). Choose a dierent color for each key. When rendered, instances will now have random colors between the two colors you set in the Gradient node.

Absolute Coloring (ID Index Output)


The ID Index output on the Instance Info node allows you to specify exact colors for each instance using gradient keys at set values, whole numbers that correspond to the instance ID number. Only keys set at whole numbers will be correctly assigned, as instance IDs are integer values, for example, setting a key a 1.5 will not change the color, it would have to be set to 2 to have any eect.
Instance ID # 0 1 2 3 4 5 6 7 8 9

Stepped

Stepped

Hermite / Linear / Bezier

Gradient Keys

Setting a gradient key to Stepped mode will continue the previous key color until you specify a new one. You can also blend between colors by setting the gradient key to either Linear, Hermite or Bezier modes.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 70

LightWave 11 Features

Instancing
Example: Monitor Screens
A project requires you to have monitor screens showing dierent images. Using Instancing means it is simple to have a large quantity of monitor screens, but showing dierent images?

In order to show dierent images we will need to use the Node Editor for texturing. First we will create a Gradient with several entries. You do not need to change anything about these entries except to toggle Show Output on each key, change the Smoothing to Step and the Post Behavior to Repeat.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 71

LightWave 11 Features

Instancing
How many keys depends on how many dierent images you have. We are using four for this example, so we add ve keys - one for each image and one for the repeat. This last one does not need its output shown.

Use a 2D Texture > Image node for each of your images and a Spot > Instance Info node. Put the ID Index output from Instance Info as the Input for the gradient and load an image into each Image node and send its Color output to appropriate Key Color node on the gradient. You can also use the Fixed Random output from Instance Info, but then you need to be sure the keys on your gradient are at integer values. You can of course use image sequences instead of still images to have a set of television screen in a department store, for example.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 72

LightWave 11 Features

Instancing

Using an image sequence works with instances, but using an image sequence copied in the Image Editor (instanced) fails upon scene reload. If you need to modify a sequence, then just use a new original sequence to prevent the failure.

Using Material Nodes (Multi Switch Node)

Material nodes are a special case when used with instancing. You can clearly use one Material node with random coloring on its inputs, but having completely dierent materials applied to individual instances is a dierent matter. There is a special node designed for this purpose.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 73

LightWave 11 Features

Instancing
The Multi Switch node allows you to switch between dierent Material nodes based on the instance ID. Heres how to set it up:

1) Once you have instances set up, open the Surface Editor and click on the Node Editor. 2) Add the following nodes to your ow: Spot > Instance Info Materials > Multi Switch Materials > Car Paint Materials > Dielectric Materials > Conductor 3) Connect ID Index on the Instance Info node to Switch on the Multi Switch node, and then Material on the Multi Switch node to the Material input on the Surface node. 4) Open the options for the Multi Switch node and click Add Input until you have three inputs in total on the Multi Switch node. 5) Connect each Material output on the Material nodes to each successive Material input on the Multi Switch node. If using ID Index as the Instance Info input, every instance will cycle or switch through each of the Material nodes you have connected in the Multi Switch node, if you want to randomize the chosen materials, add a Random Integer node (Tools > Random Integer). Connect the ID Index to the Seed input on the Random Integer node, then the Out node to the Switch input on the Multi Switch node as shown in the diagram above.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 74

MAIN TITLE Flocking

SUB-TITLE

LightWave 11 Features

Flocking
About Flocking
LightWaves ocking system is based on 3D computer models of coordinated animal motion, things like ocks of birds, herds of animals or schools of sh. It can be used with LightWaves instancing system or HyperVoxels.

The ocking algorithm itself is based on just three principles in order to create this seemingly complex motion. These are Separation, which keeps your ock from getting overcrowded; Alignment, which keeps the ock all heading in roughly the same direction; and Cohesion, which is eectively the opposite of separation and keeps your ock bunched together. Flocking can be seen in OpenGL and VPR. Instances and HyperVoxels controlled by Flocking can be motion blurred and use Depth of Field like other instances. Hypervoxels, like other volumetrics need the camera to be moving to be compatible with Photoreal Motion Blur (PRMB).

Flocking doesnt currently work with negative frames.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 76

LightWave 11 Features

Flocking
Using Flocking
In order to set up Flocking in LightWave you will need a ock and at least one director. This director can be a goal or something to avoid, meaning you can either lead or chase your ock. An eector can be as simple as a null object though you can attach a director to geometry - for instance, the leader of the pack or the nasty predator chasing the herd. The director needs to move to excite the ock into movement of their own. Although an unmoving goal will draw the ock to it, its not very interesting behaviorally. It should also be stated that the behavior of the ock is completely deterministic, there is no fractal randomness here. A ock animated on one machine will work in exactly the same way on another, and more importantly will render the same too.

Setting up a Simple Flock


1) Well start with an empty scene of 200 frames to which you add Flocking from the Windows menu, or the FX Tools tab.

2) In the Flock Master window add a Generator. The defaults wont give us a very interesting result, so change the following values: Count X: 10.0 Count Y: 10.0 Count Z: 10.0 Size X: 4.0 Size Y: 4.0 Size Z: 4.0 This will give us a ock of 1,000 agents ready to y.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 77

LightWave 11 Features

Flocking
3) Add a Director - Goal to your scene and move it o in the distance. For this example ours is moved about 20 m in the Z. If you hit Calculate All Motions now and then Play on your timeline your agents will all head o to the goal, avoiding bumping into each other, but otherwise not interesting until they reach the goal, at which point they overshoot and try to reach it again, and again. 4) So well give them something to avoid. Add a Director - Deect and change its Deect Core and Strength to 5.0 and 3.0 respectively. Position it about halfway between your ocks starting point and the goal. Hit Calculate All Motions again and you should get something like the image below:

To get the pretty colored trails for your ock, increase the Show Trails number. It represents the number of frames before and after the current one that will be shown.

Make sure you hit the Calculate All Motions button each time you make changes to your ock or directors before you press Play on the timeline again.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 78

LightWave 11 Features

Flocking
Overview of Controls
Flocking is composed of several custom objects all controlled through a central Master Window as we saw in the rst simple example. You can always control your ock and directors through the Object Properties > Geometry > Custom Object window and your settings will be duplicated in the Master Window. For simplicity, this documentation will only describe the presentation of the settings through the Master Window interface.

This window has three main sections. Across the top we have two dropdown menus and the Calculate All Motions button. Down the left we have a familiar listview of all the ocking elements in the scene. On the right, the settings for each individual element broken down into tabs.

Menus
Add New... Generator - will create a Null-based ock generator. Director - Goal - will create a Null-based director that your ock will gravitate towards. Director - Avoid - will create a Null-based director that will repulse your ock directly away. Director - Deect - will create a Null-based director that will push your ock away tangentially. Director - Arrive - will create a Null-based director with deceleration rules for your ock. Director - Path - Will create a null-based director that will be the basis of a Path director. You will need to animate the null over the course of the scene for it to work. From Scene Items Generator - This allows you to add a Flocking generator custom object to an existing scene item. Generator from Mesh Points - If you use this option it turns the points in the object
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 79

LightWave 11 Features

Flocking
into placement for your initial ock giving the opportunity to create initial ock shapes other than the default box or sphere. Generator from Mesh Polys - As above but uses the meshs polygons to place the ock. In both cases, ocking rules apply so if the points or polygons are too closely spaced the ock will initially explode outwards. Director - Goal, Arrive - Adds a Director custom object to an existing scene item. Director - Avoid, Deect - As above. Director - Path - Will create a Director from a null that you have animated over the course of the scene.. Basic Setup - Creates a Generator and a Goal Director, both will be placed at the origin. This is simply a rapid way of adding ocking to a scene, since in most cases that is what you will do. Predator-Prey - This will create a pair of ocks - one predator, one prey. The prey will have a Goal Director attached to it so that the predator ock will rush towards the prey ock. The predator ock has an Avoid Director attached so as it rushes toward the prey they scatter. You will want to adjust the base values Edit... Remove Selected, Remove All - Removes either the selected ocking generator or director, or removes them all at once. Duplicate - An exclusive operation (copy operations outside the Flocking window do not aect what you have copied inside it) that allows you to duplicate Flocking elements. Rename - Renames the selected item. Multithread - A toggle to optionally multithread ocking calculations. Some calculations are actually quicker to calculate single-threaded, which is why this is left as an option. Calculate all motions - The most important button in the Flock Master window. Make sure you hit it every time before you hit play in the scene. Calculations should not take very long to accomplish, even with complex ocking motions.

Items List
The listview on the left contains the following elds:

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 80

LightWave 11 Features

Flocking
A (checkmark)- Determines whether the element is active in the scene. Class - Whether the item is a generator or director. Type - What sort of generator or director the item is. C - The display color in OpenGL Scene item - the name of the item for the scene.

Generator/Director Cache Settings

Starting with the Cache tab since that is unique for all ock elements, this tab controls caching for the scene to make it less processor-intensive. Use Cache toggle - Ticking this will lock the Properties tab completely, you will not be able to make new changes to the behavior of your ock or directors. Cache lename - When Use Cache is on, this eld is ghosted and serves only to be able to read the cache lename and location. Load Cache - This button is available whether you are using a cache or not and allows you to load a dierent saved solution for your ock elements. Save Cache - Available when Use Cache is not enabled, presents a le requester where you can choose where your cache will be saved.

Director Properties

Directors are the Flocking elements that direct ocks. There are several choices to make when picking the type you want: Goal - The ock will be drawn to this director in as direct a route as possible.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 81

LightWave 11 Features

Flocking
Arrive - As above, but there is a user-denable deceleration zone surrounding the director. Avoid - The ock will ee this director in as direct a route as possible. If the Avoid director is large, the ock may stutter as it tries to nd its way around. Deect - The ock will ee this director in a more tangential fashion giving a smoother result. Path - The animation path for this Director will be used as a path for the ock to follow. Plane - The ock will not cross an innite plane. Multiple planes can be set up to provide a tunnel. Goal and Avoid directors have the following options: Range - Leaving this at 0 will aect the whole scene. If you have multiple directors in a scene you can give them xed ranges and when entering the range of a second goal some will peel o to go to the new destination. The Range circle shown in the viewport is an indicator of the linear fallo for the attractive power of the goal with maximum at the central point and 0 at the circle edges. Weight - For a Goal or Arrive Director this dictates how an agent will make a choice between two equidistant goals. A higher weight makes the director more attractive to the ock. For Avoid or Deect Directors weight determines how repellent the directors are when there are multiple directors equidistant from the ock. Strength - Directors all apply a change in speed to an agent. Strength is a multiplier of that change. For an Avoid or Deect Director Strength determines how far out from the central point of the director the ock will be permitted to come. Set the Strength high enough and the ock wont enter the sphere of inuence at all. Deect directors add a further option: Deect Core - This is the inviolable core of a Deect director. Flocks will try not to enter it. Path directors add one additional option to Goal and Avoid directors: Steps - Denes the resolution of the path. Arrive directors add two dierent additional options to Goal and Avoid directors: Arrival Radius - This determines the size of the arrival point for the Director. Decelerate Radius - This determines at what distance ocks should start to decelerate for landing. Plane directors have no options.

Path Example
The Motion Path option for a Director gives you a lot of direct control over your ock, with a little bit of chaos as some fall out of the path you give them. It creates a very natural-looking pathfollowing animation. Heres a quick guide how it works:

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 82

LightWave 11 Features

Flocking

1) Set your scene to 600 frames and change your viewport to Top. Zoom out so you can see the whole width of the grid. Create a Null. 2) Give it a motion path over 300 frames. To simplify our starting example make sure the path doesnt get too close to itself over its course.

3) In the Flocking Master window choose Add New... > From Scene Items > Director - Path. 4) Set the new paths resolution. You want it to follow the nulls motion path quite closely. Here we have set 24 steps.

5) Now Clone the Path null twice and change the two clones animation paths. The fact that the frames used for the paths is the same does not aect how the paths work in Flocking. 6) Add a Generator in the Flocking window. By default it comes
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 83

LightWave 11 Features

Flocking
in at the origin, which is great for our rst path.

7) Hit Calculate All Motions in the Flocking window and you should see that your scene isnt long enough for the ock to get to the ends of both paths, but the fact they separate into two groups is nice. 8) We have added a couple of Arrive directors to the end of the right path and a Goal to the end of the left path and made our ock massively larger. More paths could be added to further subdivide the ock and the goals are radius-limited to only capture ocks that y nearby.

Generator Properties
There is a main section common to all Generator types that lists several important things.

OpenGL Color - Shows the color that will be chosen for the generator in OpenGL only. This has no bearing on rendered output. Display Preview - The percentage of your ocks you wish to show in Layout. If you are creating very large ocking scenes you dont need the slowdown of showing all the elements at once. Visible Trail Frames - This shows a trail leading and following each ocking agent to the extent you request. Setting to 100 will show the path an agent will take both 100 frames in advance and 100 frames behind. Show Details toggle - With this on you will see the collision circle around the agent and an arrow denoting its direction and orientation. With it o, each agent is represented by a dot.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 84

LightWave 11 Features

Flocking
Use Variance toggle - This toggle enables the Agent Variance tab explained below to be used otherwise it is grayed out. Edit - This presents a dropdown with the following options: Copy - Takes a copy of the current agent settings Paste - Pastes previously copied settings into this panel Copy to Variant - Copies the current base settings to the Agent Variance tab to reset the values to the same. Old Flight Mode - Provided for backwards compatibility with Flocking scenes set up in 11.0 - 11.0.3. Some users also prefer the owing motion given to ocks by the initial algorithms, but they do not work well with Arrive directors, which were added later. There are four tabs for Generator Properties as follows:

Generator Start/End Frame - If you wish for your generator to begin animating your ock for the whole scene, leave these set to 0. If you wish a delayed takeo set the Start value to a number greater than 0 and the ock will start to leave the generator at the time you choose. You will also need to change the End Frame for the time that the ock will have completely left the generator. Generator Shape - This dropdown oers two choices for the starting shape of your ock Box and Sphere. If you have used Object Properties to attach a Flocking Generator to an object you are also given two further choices: Mesh Points - There are two options. The Use Max toggle will set an agent at every vertex of the mesh, or you can use the Count eld to determine how many you want to create. Mesh Polygons - As above. The agents will be placed at the center of each polygon. Count X/Y/Z - If you are using the Box or Sphere options, you can decide how many ocking agents you would like in your ock. For ground-based ocks use 1 in Y. Size X/Y/Z - If you are using a Box generator this is the length of each side, if a Sphere, the radius in each axis.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 85

LightWave 11 Features

Flocking

Agents All the following options can be enveloped and driven by Textures. Particles use Agent Size - This toggle allows you to duplicate the size you set here for particles, to be rendered with HyperVoxels or other particle systems. Agent Size - This is a hard sphere radius that agents cannot get closer than. Like marbles stacked in a jar they can touch but they dont intersect, within the limits of the algorithm. Range - This is the range at which the agents attempt to avoid colliding with any other agents. This isnt a hard collision, it simply directs agents away from each other to maintain a gap between them. All entities in a ock such as birds or sh, will attempt to steer to avoid crowding their neighbours too closely and this is the setting that denes the closest distance at which they start reacting. This couples with the Avoid Collisions option detailed below. Cohesion Range - This is the range at which the agents attempt to move towards each other to maintain formation. It can be considered the stickiness of a group of agents, whether they stay in a big group or tend to splinter into small groups easily. This couples with the Cohesion setting detailed below. Match Velocity Range - This is the range at which agents try to match the direction of travel with their neighbours. In all groups of traveling things there is a general motion, usually each agent moves mostly in the same direction as its neighbors. This couples with the Match Velocity setting detailed below. Avoid Collisions - This is the strength of the agents desire to avoid getting too close to its neighbors. High values will make the agent move erratically, low values will produce much slower reactions. Cohesion - This is the strength of the agents desire to maintain formation. Higher values would move agents quickly towards each other, low values would produce more owing movements. Match Velocity - This is the strength of an agents desire to match the velocity of its neighbors. Higher values will result in very uniform movement, like an army marching;
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 86

LightWave 11 Features

Flocking
low values will result in very localized motion. Acceleration m/s2 - How fast the ock can achieve its maximum speed to chase Goaltype directors or ee Avoid-types. Min Speed m/s - If the ocks speed is not at 0, this is the minimum speed it will move. Use more than 0 to simulate a ock of birds or school of sh. Max Speed m/s - How fast the ock can travel. Turn Rate H/P/B - Agents move freely in any direction and try to orient themselves toward the direction of travel. This behaviour can be adjusted in the node editor, but the Turn Rate denes in what axes and how fast the agents can turn. Note these axes are relative to each agent. 0 values for any axis prevents rotation in that axis.

Agent Variance All the settings on this tab will be ghosted unless you toggle the Use Variance setting above. When you use it then the settings become available. The Variance tab initially uses the default values but you can specify a range for each option that is distributed randomly between the agents. For example, if the Max Speed on the Agent tab is 10 and on the Variant tab it is 20 and Use Variant is turned on, an agents Max Speed will be randomly xed between 10 and 20. The Particles Use Agent Size toggle is common to both tabs, the state of the option is the same regaardless of what tab youre on.

Takeo Initial Velocity m/s X/Y/Z - Assigns an initial direction for your ock to move in.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 87

LightWave 11 Features

Flocking
Use Normals - If you have assigned your ock to be generated by the vertices or polygons of an object, you can use their normals as a vector for initial velocity otherwise this control is disabled.

Flocking Nodally

There are two new nodes added to LightWave 11.5 for more complex Flocking. RayCast(Flocking) - This node is designed to be used with the Custom Object Ray Receiver in order to lock a ock to a surface. It has two inputs (Ray Origin, Ray Direction) and two outputs (Distance, Intersect). If you dont specify a Ray Origin or Direction, this node assumes that you are trying to lock agents to a ground plane and so taking the Intersect output from RayCastNode(Flocking) into New Position on the AgentControl destination node will normally lock the agents to whichever object you have applied RayCastReceiver to (in Object Properties > Custom Object) with no further modication needed. AgentInfoNode - this node gives vector information on the Position, Velocity and Bank Up Vector of an agent. It is most useful for adding banking to a ock. To do so, make sure that the Turn Rate for your agents is set in the Agents tab of the Flocking window. You will need some Bank and perhaps Pitch as well if your ocks motion is in all three dimensions. You can see that we have also added a VectorAdd node. The addition of a small value (0.3-0.6 is suggested) in the Y channel will bias the agents Bank rotation towards being upright. If you dont add this node, the motion of a ock going round bends will be more chaotic with some agents perhaps rolling completely.

Example: Chasing a Flock


This example shows both predator/prey behavior in Flocking and nodal control for ocks. Well start with a new 600-frame scene and the new Predator-Prey entry on the Flocking Add New... menu.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 88

LightWave 11 Features

Flocking

1) The default entries need some tweaking to get a more predator and prey-like setup. There are never as many predators as there are prey, so well move the Generator away from the Origin and reduce our attackers to only X: 2, Y: 1, Z: 2. Likewise well increase our prey ock to X: 10, Y: 1, Z: 10. Youll need to increase the box size to X: 5, Y: 1, Z: 5 too. Lastly, well change the Range on the Avoid Director to 8.0 to give the ock a chance to get away.

2) Well add a hilly terrain with a subdvided, subpatched 100m2 plane. Go into Object Properties and use a Displacement map to displace the terrain as you see t. We used a simple Turbulence procedural set to 15 x 15 m and raised some 8.5 m.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 89

LightWave 11 Features

Flocking

3) You need to tell Flocking that this terrain is your ground for the ock and their pursuers and you do that by adding a RayCaster to the terrain in Object Properties > Custom Object.

4) Now, you need to tell Flocking to tell both your predator and prey to use the ground. Make sure Use Nodes is checked and go into the Node Editor from the Flocking Master window. Add a RayCastNode from the Additional group and take its Intersect output into the New Position input on the Agent Control destination node. Remember to do this for both generators.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 90

LightWave 11 Features

Flocking

5) Hit Calculate All Motions in the Flocking window and watch your ock ee over the hills. Interestingly, once they reach the boundary of the terrain they beam up since the RayCastNode has no ground to put them on.

Using Objects as Goals or Avoids


Going into Object Properties on scene objects you can set any as Flocking items by visiting the Geometry tab and choosing Flock Director or Flock Generator. If you choose a Goal Director, Flocking will automatically deduce that you wish to use the polygons of your object as a goal, but you need to manually select Avoid Mesh if you wish for an object to become something to be avoided in your scene.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 91

LightWave 11 Features

Flocking
Example: Missile Launcher
We can use a new tool for Flocking to create smoke trails for a missile launcher ring. The scene requires a bit of setup and youll need to provide your own missiles. terrain and missile launcher.

1) Create a at polygon with 12 subdivisions. This will be our launcher. Send it to Layout and open the Flocking Master window and choose Add New... > From Scene Items > Generator Mesh Polygons.

2) Add a Null, call it Path. Animate its passage over the course of your scene. Dont make turns that are too sharp or you may lose your missiles. You can clone this null a couple of times if you like and change the course of the other nulls so you end up with a choice of paths your missiles can take.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 92

LightWave 11 Features

Flocking

3) With your Path null selected, go back to the Flocking Master window and choose Add New... > From Scene Items > Director - Path. You may want to increase the Steps in your path if the course taken is intricate. We have given our three paths 39 Steps here.

4) Add another Null and call this one Emitter. This will be your particle generator, so add an Emitter from the FX tab of Object Properties. In the settings for the emitter, go to the Motion tab and set Explosion(m/s) to 2.0. In the Etc tab set Parent Motion to 0 %.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 93

LightWave 11 Features

Flocking

5) Open the Motion Options for the Emitter null and add the Flocking - Item Motion modier. You can choose which of the ock will have particles trailing by changing the Index number here, but were going to put this emitter on all of our missiles.

6) Clone the Emitter using Ctrl-c and set it to 11 clones. An emitter will be placed on each missile in the ock. You can now use Instances to change your ock members into missiles trailing smoke.

Sometimes the link gets lost between emitter and ock agent. Hitting Calculate for the PFX gets that link going again.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 94

LightWave 11 Features

Flocking
Example: Avoid and Attract Mesh
Meshes can be used both as things for ocks to avoid and things to attract ocks. In this simple example well do both.

1) Youll need some asteroids. For this example, a level 4 tessellated sphere was used sized to about 1.5 m, sized in two dimensions to make it atter and jittered to make it less regular. It was subpatched then frozen to give it more detail. In a second layer, a level 1 tessellated sphere was created and resized to be larger than our rst layer. This is going to be our avoid mesh.

2) With our asteroid made, send it to Layout. Parent the Avoid layer to the Asteroid itself so that it moves with it and you may want to use the Scene Editor to hide the Avoid mesh since were more interested in what happens with the asteroid.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 95

LightWave 11 Features

Flocking

3) Make a Clone Hierarchy of the Asteroid layer (so that the avoid layer is cloned too) and move and rotate it a bit in front of the rst asteroid. Now well open the Flocking Master window and rst select our original asteroid and use Add New... > From Scene Items > Director - Goal. Now select the cloned avoid layer and choose Add New... > From Scene Items > Director - Avoid. Change the Director Type to Avoid Mesh (as shown in the green inset).

4) Clone Hierarchy our cloned asteroid with its Avoid Mesh layer a few times so you can create an asteroid eld. Position them in all three dimensions and change rotation on each to get more variation.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 96

LightWave 11 Features

Flocking

5) Now create a generator in the Flocking Master window. Use Add New... > Generator. Move it away from the goal asteroid. In our example weve moved it to about 15 m away in Z with the avoid asteroids between the ock and its goal. Your scene elements are complete. Now hit Calculate all Motions in the Flocking Master window. Your ock should go to the goal asteroid and alight. If they dont avoid the other rocks we need to set the Probe Length and Strength accordingly - by default they are at 1.0 and are sensitive to the scale of your scene. When you select an Avoid Mesh director you should see a pincushion eect. This is that directors Probe Length. Setting it too short will mean the ock has less chance of seeing it, setting it too long will result in avoidance long before necessary. To get this good eect here we have set it at 1.2 for each of the Avoid Mesh Directors and upped the Strength to 10. 6) This is a satisfying result, but lets expand. Directors dont have to stay as they are for the whoie scene. Make your scene 500 frames. Using Envelopes, we can make the asteroid nearest to where they started more interesting. Select the asteroid nearest the Generator, not its child Avoid Mesh shell. Add a goal to it using Add New... > From Scene Items > Director - Goal. Add an envelope to this goals weight starting at 0 ending on 30 at frame 500. You can either change the TCB handles (as shown in the image) so that you have an increasing curve of weight or put in a third key somewhere in the middle so that the rst asteroid doesnt attract the ock before they have reached the other perch. Either way, your ock should avoid all the asteroids to get to the last one, land, then take o again to head back to the rst asteroid before the scene nishes.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 97

LightWave 11 Features

Flocking

Example: Mecha Fish


The mecha sh ocking example from the 11.0 manual has been revised and updated for LightWave 11.5 showing how you can use Flockings updated features. The example is a loose guideline to steps to follow since your own will doubtless follow a slightly dierent path, just like Flocking. 1) Well start with loading Lino Grandis menacing mecha sh. Use Load from Scene to bring in the sh from \Flocking\Mecha_Fish\Scenes\Fish_Animation.lws.

2) In Layout, well set our scene length to 600 frames and make a new Generator for a ock. Use a Box with a count of 4 x 4 x 4 and a size of 5 x 5 x 5. Open the Presets window and double click School. That will give us a ock of 64 agents that behave like sh. Once were happy with how they move we will vastly increase the numbers.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 98

LightWave 11 Features

Flocking
3) We need to apply our sh model to our ock, so call up Object Properties for the Generator and go to the Instancing tab. Add an Instance Generator and set it to Particles. Add object and choose your sh model.

4) You now have a school of 64 sh with no goal, so we should add one. In the Flock Master window add a new Goal Director. Move the goal away from the sh so they have something to swim towards. 5) We have made an instanced school of sh swim towards our goal, but the animation is fairly static and the sh stay in their initial cube shape so we need to add more interest. On the path between our Generator and Goal add a new Deect Director and set its range to something adequate for your scene (try a Range of 10 m and a Deect Core of 5 m to start and if that seems overlarge adjust). Calculate again and now your sh will split to go around the obstacle. 6) Its still not amazingly interesting so add two or three more Deect directors and place them oset to the side and above of the direct path, making sure that they at least overlap the path a little and inuence the ock as it passes them to the goal. They will also need Ranges and Deect Cores adjusted. Lastly, add some Avoids starting at their default Range of 1, but with Envelopes set to stepped to explode them into 10 m balls as the school of sh passes.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 99

LightWave 11 Features

Flocking
7) Now lets move the Goal. Scrub through the timeline and watch for when your ock reaches the goal. At this frame, move the goal to a dierent location and keyframe it in place (if Autokey is active, this will happen automatically). Now calculate and watch the sh change direction. If the new position for the Goal takes the sh past the Avoid or Deect directors so much the better.

8) To get rid of our original model and only leave the instances in our scene, we need to visit the Scene Editor and make sure that the original model is marked as inactive by unchecking the left most column entry for it. This will stop the original sh from being rendered.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 100

LightWave 11 Features

Flocking

9) You have probably noticed that we have six entries in our Scene Editor for MechaFish. Our sh is animated through an MDD le and to prevent all our ock from making the same movement at the same time, we have cloned our initial sh several times. We then visited the I/O tab to use the new MDD Multi-Loader, explained in full on page 228.

10) Now that you have an animation you are satised with, all that remains is for our 64 sh to become a real school. Try upping the quantity to 10 on each axis for 1,000 sh, but youll also want to increase the size of the box they hatch from because if its too small they will explode out of there trying to maintain their distance. Bear in mind also that you will probably want to increase the size of your avoid and deect directors so they have more impact on a much larger quantity of sh.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 101

LightWave 11 Features

Flocking
In addition to moving your goals, try using the Envelopes for size and weight for the Avoid and Deect directors to create sudden disturbances that make the sh create sudden turns or billowing in their movements.

If you need to use Calculate all Motions once you have applied your MDD-animated, subdivided sh, the chances are that calculations will be very slow. Turning SubD level down to 0 on the sh helps a lot, but better to remove the instances until you are ready to render your nal animation.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 102

Bullet MAIN TITLE Dynamics


SUB-TITLE

LightWave 11 Features

Bullet Dynamics
About Bullet Dynamics

LightWave 11 adds Erwin Coumans open source, production proven Bullet Physics Library to its dynamics tools. This new feature is extremely simple to add to a scene, but its use is a little dierent to the HardFX plugin LightWave users are familiar with.

In order to ensure dynamics calculations are free of problems, it is worth noting these guidelines: Make your models not too small, or too large, as Bullet gives more predicable results when working with objects sized roughly between 0.4 - 10 m. Any collision objects such as ground planes should not be innitely thin, but have some thickness. Objects made of triangles and quads will generally behave better. When using the built-in shapes within Bullet, have some Collision Margin set. 10mm is a good default. Bullet doesnt work with negative frame numbers. Prepare your objects for dynamics, ensuring: Models are air-tight, meaning all points are merged and there are no un-modeled holes in your mesh (missing polygons). All single points, and 2-point poly chains are removed. Objects dont have extremely long, thin polygons.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 104

LightWave 11 Features

Bullet Dynamics
Example: Getting started
Lets start with a simple example just to try it out. For this we wont even need to use Modeler, since we will use the updated Modeler Tools in Layout to create all the geometry we need for the scene. 1) To get going, we need a oor for our test object to collide with, so go to the Modeler Tools tab > Create Geometry > Cube and set Width: 10 m, Height: 0.25 m, Depth: 10 m.

2) We need to add some elements to bounce o our oor, so we shall add a default Sphere from the same menu. No need to change its settings. 3) Next, well make some clones of our sphere, three should do the trick. Well need to move the spheres up from Y=0 and separate them to give them some distance to fall and you should end up with something like this:

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 105

LightWave 11 Features

Bullet Dynamics
4) Now well go into the new FX Tools tab. Select each Sphere in turn and click the Rigid Body button. Next select the New Cube Object object and click the Static Body button from the same group of buttons. Now hit play, thats it! For more control, click the Item Properties button in the FX Tools tab in Layout to give your objects dierent properties and see how that changes things. The following section covers the controls you have in Bullet to achieve various dynamic eects.

Although we have used Layouts Modeler Tools to create our spheres for this quick example, for the best results with soft bodies always use a tessellation-type sphere, not a globe-type sphere. All those edges converging at the poles of a globe sphere makes for a weak spot, making it much easier to deform there than anywhere else on the sphere.

Overview of Controls
In Layout there is now an FX Tools tab that hosts Bullet as well as other motion eects items. Bullets properties are split into the following groups: Bullet Group: Enable Dynamics - This turns Bullet on and o globally for the scene. Item Properties - This opens the Bullet Properties on the Item tab. If any dynamic objects in Layout are selected when this is clicked, they will be selected in the Bullet panel. World Properties - This opens the Bullet Properties on the World tab. Remove Body - Removes selected objects from Bullet, so they are no longer part of any calculations. The Bullet settings for the objects will be lost. Dynamic Body: Rigid Body - The object will be subject to all the Hard Body settings that Bullet can oer, such as Gravity or Density, but will not break apart. Parts Body - This is a great accompaniment for the new Modeler Fracture tool. It keeps your object whole until there is a collision event. Deforming Body - This adds a Soft Body matrix to your object. Your mesh will now be deformed following the rules you set for it. Collision Body: Static Body - This is the type to add for objects that will not move or be subject to other forces, but will react with other bodies. A oor is a good example of a static body. Kinematic Body - Gives the selected object characteristics similar to Static, but it can be moved through keyframed animation, thus it is an object that is under user control. As with Static, it aects other dynamic items but cannot be aected by them.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 106

LightWave 11 Features

Bullet Dynamics
Visual indication in OpenGL as to which items have Bullet applied is available if you use the Draw Collision Shapes setting in the Bullet World Properties tab. To apply this and for further customization you need to click on the Bullet Item or World Properties buttons in the FX Tools tab to open the Bullet Dynamics window.

Hitting Esc on the keyboard will cancel a Bullet calculation in progress.

Bullet Dynamics Window


Inside this window, the rst button at the top of the window is to Enable/Disable Dynamics globally in the scene. This is the same as the button present on Layouts FX Tools tab for ease of access. Next to it is a Reset button, moved from its previous position on the World tab. The Edit dropdown menu presents several options to add, deactivate and activate or remove selected or all items like so:

You can also open the Preset shelf (F8 when the Bullet Dynamics window is active) or save presets for the selected dynamic item. Currently, the Bullet properties that can be saved within presets are:
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 107

LightWave 11 Features

Bullet Dynamics
Density Friction Bounciness Linear and Angular Damping Glue Strength Breaking Angle Breaking Distance Merge Points Mesh lter Linear and angular stiness Shape retention Damping, drag and lift coecients Volume scaling and conservation Dynamic friction Self collision Solver iterations For forces: eld type, strength, density, axis, direction

In fact, its probably now easier to say which settings are not saved to presets and why. They are: Enable/disable dynamics item Shape Activation and deactivation settings Collision margin

In addition, neither the mass method nor the given mass are saved to presets currently. The intention is that presets save material properties, independent of the specic mesh used. Next to the Edit menu there is a button new to 11.5 that allows the user to either show all of a scenes items or only those that have some dynamic properties.

Bullet Dynamics Properties


The other buttons in the window are divided into two tabs and a list. The list contains every dynamic item in the scene along with the type of dynamic body assigned and a checkmark for individually enabling or disabling the object.

Item Tab
Dynamic - This button replicates the functionality found in the list, for enabling or
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 108

LightWave 11 Features

Bullet Dynamics
disabling an individual object. (You can also double-click an item in the list to activate/ deactivate it from dynamics calculations, remember, when an item is disabled, the dynamics solution will need re-calculating). Type - Shows a dropdown with the same dynamic type choices as presented in the Layout FX Tools tab, namely Rigid, Parts, Static, Kinematic, Deforming and the Forces Forceeld, Vortex and Explosion.

Shape Tab
Shape - The collision shape the object has for Bullet. This is a dropdown with ve options - Box, Sphere, Capsule, Cylinder, Convex Pieces and Mesh. Convex Pieces approximates the mesh shape as a set of convex pieces. Convex pieces are faster to simulate than Mesh shapes, but take time to pre-process (the Decomposing passes you see happen). Since Convex pieces approximates the shape you can lose some details that may or may not be important, unlike using Mesh which uses the shape exactly. The other four are simplied shapes to make calculation swifter. Collision Margin - Adds a margin to the collision shape. It makes the shapes a bit thicker and can prevent fast moving objects from tunneling through other objects. When using the built-in shapes, a Collision Margin greater than 0 is recommended (10 mm). It wont oset your objects, but helps with calculation errors, this is especially true for smaller objects. When using any of the Mesh modes, the Collision Margin will oset your geometry, but can greatly reduce any calculation errors, so try setting to a low value, and only set to 0 mm if you really need to.

Activation Tab
Initial Activation - Sets whether the object starts o active (aected by forces such as gravity), or sleeping (not aected by forces until the rst time the object is hit). When an object stops moving (or close enough), it will be put to sleep, unless it is set to the third option, Always Active. The fourth option, Activate on Last Key allows you to give an item some momentum before it is aected by Bullet dynamics and works based on the velocity of the motion keys you have assigned the item.

Two keyframes have been set for the ball at 0 and 3. When the last keyframe has passed, Bullet takes over using the velocity and vector set by the keyframes. The distance between the two keyed positions will give the velocity of the ball so setting a wider gap will make for a faster trajectory.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 109

LightWave 11 Features

Bullet Dynamics
Deactivation Time (s) - This allows you to control when dynamic items are set to rest by Bullet. Measured in seconds, this value sets how long a dynamic items linear or rotational speed has to be under the threshold settings, before it is then put to sleep by Bullet. This helps control any jittering of items near the end of a simulation. Sleeping items will naturally be awoken if they are disturbed by any further collisions. Linear Speed Threshold - This allows you to set the maximum distance an item can travel per second to be considered by the Deactivation Time before it is stopped by Bullet. Angular Speed Threshold - Same as Linear Speed, but for rotation. This sets the threshold rotation speed (degrees per second) which the item needs to be below to be considered by the Deactivation Time before it is stopped by Bullet.

Rigid, Static and Kinematic Properties


Mass Distribution - Determines how Bullet considers the mass of an object to be distributed. Two objects with dierent mass distributions can behave dierently even if they have the same shape and weight the same. For example, a solid sphere can act dierently than a hollow sphere. Bullet oers several distribution methods: Solid - Mass is distributed through the object, it is solid. Surface - The mass is distributed over the surface of the object, the object is hollow. Vertices - The mass is concentrated at the vertices of the mesh of the object only. Mass Specication - Determines how Bullet calculates the heaviness of an item. Bullet can calculate an objects weight based on mass, or density. Mass is the overall weight regardless of what the object is made of or how big it is. For example: you can set a 1m cube to be the same weight as a 10m cube, and they will clearly be the same weight, whereas if you set the density of a 1m and 10m cube to 1kg, the 1m cubes mass will be 1kg/m cubed (1m x 1m x 1m x 1kg = 1kg) and the 10m cube would be 1,000kg/m cubed (10m x 10m x 10m x 1kg = 1,000kg). Quite a dierence in Bullets world! Bullet oers several calculation methods: Mass (kg) - Only available when Mass Specication is set to Given Mass. For Parts mode, the amount is divided up accordingly to each parts overall volume, so smaller pieces will be lighter than larger pieces, as expected. Density (kg/unit) - Only available when Mass Specication is set to Density. The mass of the object is then calculated by multiplying the unit specied (kg) per the unit type set in either of the density modes. Therefore; kg x (Volume/Area/ Number of Points). Friction - The friction coecient of the object. Makes objects slow down when in contact with other items.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 110

LightWave 11 Features

Bullet Dynamics

Friction: 0% (Blocks Only)

Friction: 25%

Friction: 50%

Friction: 100%

In order for Friction to have an eect, colliding objects must each have a non-zero Friction value. Bounciness - Determines the level of rebound when objects collide with each other.

Bounciness: 0% (Blocks Only)

Bounciness: 25%

Bounciness: 50%

Bounciness: 100%

In order for Bounciness to have an eect, colliding objects must each have a non-zero Bounciness value. Linear Damping - Dampens the linear (translational) motion of the object to slow down its movement.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 111

LightWave 11 Features

Bullet Dynamics

Linear D: 0% (Blocks Only)

Linear Damping: 25%

Linear Damping: 50%

Linear Damping: 100%

Angular Damping - Dampens the Angular (rotational) motion of the object to slow down its spinning.

Angular D: 0% (Blocks Only)

Angular Damping: 25%

Angular Damping: 50%

Angular Damping: 100%

Parts Properties
When Parts is chosen as the body type for an object, additional parameters become available: Glue Strength - This determines how tightly bound parts are to each other. A low value will have them explode apart at rst touch, a high value will keep them together.

Glue Strength: 0%

Glue Strength: 25%

Glue Strength: 50%

Glue Strength: 100%

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 112

LightWave 11 Features

Bullet Dynamics
Glue Strength with no Breaking Angle/Distance set is very dependent on the items scale and Mass Method used. Be aware that if your objects weight/mass is too low, Glue Strength can appear to have little eect when set above 0%. Try increasing your objects weight/mass until you see the eect. Breaking Angle - The threshold angle up to which parts can twist/bend before the bond (Glue Strength) between them breaks and the parts then separate. Breaking Distance - The threshold distance up to which parts are allowed to move apart before the bond (Glue Strength) between them breaks and the parts then separate. Merge Points toggle - When active, Merge Points will attempt to ensure that matching vertices on either side of a fracture have the same position, ensuring the mesh stays air-tight while the parts are not broken.. This does have a cost in processing time and memory.

Example: Choreograph your destruction


Achieving realistic destruction is as much as matter of choreography as it is modeling. You need the parts to break when most dramatically suitable. To do this you need more than just Bullet on its own. Lets start with a modeled oor and tower. Use the box tool to create a wide and deep box, but dont give it much height, the example here is 65 m2 by about 1.5 m high. Our tower stands about 30 m tall and is 4 m square. Note that the tower is subdivided - Fracture works better with square polygons so if it had been left as a single polygon we would have got long thin splinters from a fracture.

Our Tower with the Floor in a Background layer. Fracturing the Tower using Voronoi shatter and 300 cells. The resulting Tower showing its exploded Morph. (The layer with the original tower model on should be removed from the Send to Layout list by clicking in the rightmost column in the Layers panel (F7) in case you wish to make further changes to the original.

Now that that preparation for our model is complete, we turn to Layout. In Layout, make the ground a Static object and the tower a Parts object in the FX Tools tab. If you run the scene now the tower falls apart instantly. What we want is for the tower to break only where and when we want it to. To do this, rst we need to set our Tower not to fall apart immediately. Setting the Glue Strength to 100 % and turning o Breaking Distance will achieve that. Now if we run the scene we see that nothing breaks.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 113

LightWave 11 Features

Bullet Dynamics

We need a way to reduce the Glue Strength in an area of the Tower so it can break in that area. The way to do it is with a gradient on the Texture button of the Glue Strength. First, add a null to the scene and set a path for it that directly intersects the tower over the course of the animation.

We have given our Null an Item shape at 2 m to give some idea of the volume of breakage our null will cause. The ball wont appear in the render, this is purely an invisible cause for the breakage. Now we need to create the gradient for the Glue Strength value.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 114

LightWave 11 Features

Bullet Dynamics
Things to note here are: 1) Set the Input Parameter to Object Distance 2) The name of the object you are using to provoke the breakage 3) Set the 0 m Parameter to 0 4) Set the next parameter to the distance away you want to start reducing the Glue Strength 5) You can switch the Smoothing to Step if you want a clean break. If youd like to use multiple nulls to break your tower in dierent places at once, you must set the Blending Mode for each additional null to PShop Darken.

All you now need do to complete your choreography is judge when and where the impacts on the tower take place by animating your nulls to suit. Dont forget to turn o Enable Dynamics while you are creating the motion paths for the nulls and go to frame 0 to turn it back on, then go to the end frame of the scene to make Bullet calculate all the dynamics in one go.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 115

LightWave 11 Features

Bullet Dynamics
Deforming Body Properties
When Deforming is chosen as the body type for an object, additional parameters become available:

Mesh Filter - This uses the chosen weight map in the geometry to determine what parts are dynamic. Any polygons with vertices in the chosen geometry with a non-zero value in the weight map will be considered as a deforming body, those with no weight map value are ignored by Bullet. Shape Retention - This works in two ways. With Shape Lock set to None, it determines how little or much the mesh is deformed by Bullet. This mode is controlled completely by dynamics. If you set Shape Lock to one of the other options, your object will react in dierent
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 116

LightWave 11 Features

Bullet Dynamics
ways, as noted below. Shape Lock - works in conjunction with Shape Retention. It presents a dropdown with four choices: None - The shapes translation and rotation are fully controlled by Bullet; Translation - Translation responds to keyframing. Depending on the level of Shape Retention set Translatin will still respond to the dynamic solution as well. Rotation is still completely controlled by Bullet; Rotation - The opposite. Rotation can be keyframed but Bullet controls the translation; Translation & Rotation - The mesh will follow the keyframed rotation and translation, but will be reacting to dynamics in relation to the motion. Linear Stiness - How resistant edges are to stretching or shrinking, or how sti or stretchy the object is. The higher the value the more it will attempt to maintain the lengths of the edges. Angular Stiness - How resistant the object is to bending. The higher the value the more it will attempt to maintain the angles between edges. Damping - Dampens the motion of the vertices. Volume Scaling - Scales the volume of the object, inating or deating it. Volume Conservation - How well the object maintains the (scaled) volume. When set to 100 % it attempts to keep the volume of the object equal to the target volume; set to 0 % it doesnt conserve the volume at all. Friction - Denes the friction of the softbody. 0 % for frictionless (lots of sliding), 100 % for maximum friction (no sliding). Solver Iterations - How many passes are done by the solver to solve the linear and angular stiness constraints. Higher values take longer to calculate, but increase the simulations accuracy. Self-Collision - Enable/disable detection of and response to the softbody colliding with itself. Self-Collision Margin - The collision margin used for self-collision only, unlike the other collision margin which is used for collisions between dierent objects.

Make sure you set the Subdivision Order to After Displacement or Last for any Deforming Body subpatch objects or they will not work. Subdivision Order does not matter for polygonal objects.

Example: Getting started with Deforming Bodies


As for our rst example with Rigid Bodies, well repeat but with Deforming Bodies. This requires a very small amount of additional setup, but with satisfying results. 1) In common with the previous example we need a oor for our deforming objects to fall on.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 117

LightWave 11 Features

Bullet Dynamics
Choose Modeler Tools > Create Geometry > Cube and set Width: 10 m, Height : 0.25 m, Depth: 10 m. Set the Surface to Floor.

2) Now make an element to bounce o the oor by using Cube again, but this time setting it to Width: .5 m, Height: .5 m, Depth: .5 m. The number of Segments should be set to X: 10, Y: 10, Z: 10 and the surface to Cube.

3) In the FX Tools tab, set the oor object to be a Static Body and the small cube to be a Deforming Body. 4) Now we need to make some clones of our small cubes. As with the rigid bodies tutorial, go for three. Then we need to move the four objects up in the Y and rotate them randomly so you should end up with something like this:

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 118

LightWave 11 Features

Bullet Dynamics

5) Open FX Tools > Item Properties. Select the four deforming cubes and set their Collision Margin to 10 mm and Shape Retention to 50 %.

6) Give the fours cubes dierent Shape Retention settings. 100 % will not deform the object at all, but setting it lower will give increasing amounts of deformation.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 119

LightWave 11 Features

Bullet Dynamics

Using a Deforming object for Collision


When using a character or anything else deformed by bones, morphs or displacement as a softbody collider, you need to transform the mesh itself (or part of it) into a Bullet Deforming body. If you want to maintain the original shape of the deformed object, you need to set some parameters in the Bullet Softbodies panel: Shape Retention must be set to 100% Shape Lock must be set to Translation & Rotation Both Linear and Angular Stiness must be set to 0 Volume Conservation must be set to 0.

Use simple kinematic shape objects parented to the bones of characters to create eective softbody colliders. Capsules are perfect for this.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 120

LightWave 11 Features

Bullet Dynamics
Forceeld, Vortex and Explosion Properties
These three new Bullet Dynamics types share similarities in their settings and eect. They are global to a scene and aect all other dynamic objects in the scene although fallos can be created using gradients to isolate the eects to certain regions of 3D space. Note, textures for Force settings using World Coordinates wont work correctly.

For each of the three types - Forceeld, Vortex and Explosion - the eect is chosen between one of three options: Force - applies the type as a force. That means that lighter objects will accelerate faster. Similar to hitting something. Acceleration - is like gravity. All objects accelerate at the same rate regardless of mass. Velocity - is more like wind. Objects will have forces applied to them so that they reach a given velocity (even if that velocity is 0). Using Velocity opens up the Density property. Density is used to determine how quickly the objects match the velocity set. Set to 0 it will never match (like there is no air at all), while 1 means it will get to the target velocity pretty much immediately (like a stick in a fast-owing stream of water). The forces can be directed along the axis chosen and can be varied using Envelopes or Textures. In addition the Explosion Type has an extra Direction - Center. This marks the Explosion dynamic object as the centre of a radially expanding explosion. In the example shown below, the ball and cube are subjected to a forceeld to prevent them hitting the oor.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 121

LightWave 11 Features

Bullet Dynamics

Note that the gradient is applied to the oor rather than the falling objects. Forces are global, so the two rigid body objects falling toward the static oor object are the items that will be aected by the Forceeld. The strength of the eld that is applied to a given rigid body is determined by evaluating the texture at the position of that rigid body. In this case, it would evaluate the gradient by determining the distance of the rigid body position from the gradient input object. The ball and cube thus fall toward the oor but are rebued the closer they get.

You can animate the position, rotation and scale of a force-type Dynamic element over the course of a scene rather than using the axes to vary how your scene reacts to a Force.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 122

LightWave 11 Features

Bullet Dynamics
Example: Swirling Leaves
Thanks go to Greenlaw from Little Green Dog for sharing this scene.

Bullets new Forces are ideal for creating this kind of scene. It is easy to set up and reacts very naturally. For the example shown, we began with creating a solid oor and some columns to add interest and turbulence for the leaves. The leaves themselves are simple hexagons divided down their length for more of a shape:

The leaf is given a UV map to make it easier to texture and textured with a Color map the alpha of which is used for Transparency. The leaf is made double-sided to ensure that it remains visible and the Specular and Glossiness channels are textured to make the leaf more visually interesting. Lastly the leaf is duplicated using Point Clone Plus. Open the Multiply > Duplicate > More > Point Clone Plus panel and enter the desired parameters. For oating leaves, use full randomization for rotation;
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 123

LightWave 11 Features

Bullet Dynamics
for ground cover, Randomize only the Heading the full 360 degrees and randomize the Pitch only slightly (maybe 10 degrees). Click OK.

In Layout, on the FX Tools tab, the oor and columns SquareBV object is made Static, the LeavesFloating object is added and made Parts and lastly three nulls are added to the scene and Vortex, Explosion, and Forceeld are applied.

Lets start with the simple. Our SquareBV object has Static applied, and the other settings are as follows: Set the Shape to Convex Pieces and Collision Margin to 10 mm; Mass Distribution should be Solid and Mass Specication set to Density with a Density of 1000 kg/unit; Friction is set at 30 % and Bounciness reduced to 10 %. Now well deal with the LeavesFloating object: Type is set to Parts, Shape is Cylinder and Collision Margin to 10 mm; Mass Distribution set to Surface and Mass Specication to Given Mass with a value of 0.001 kg; Friction is set to 30 %, Bounciness 5 %, Linear and Angular Damping to 50 %; Glue Strength is set to 0 % and none of the other settings in this section are engaged. Lastly, well change our three Force settings. The three forces are arranged in a column at the center of the scene with the following settings:
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 124

LightWave 11 Features

Bullet Dynamics

For the Forceeld layer, the size of the Fractal Noise texture is 2 m on all axes.

The Explosion layer is the simplest. Set it to a low negative number so that it drags the leaves into the center rather than forcing them out.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 125

LightWave 11 Features

Bullet Dynamics

The Vortex layer has a gradient on the Strength setting. It is set up like this:

The values go from 0 to 0.1 and back to 0 over the 6 m range. With these settings you should have
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 126

LightWave 11 Features

Bullet Dynamics
a ne swirl of leaves rushing around your courtyard. Add other objects or use a texture to create a more visually interesting Vortex.

World Tab
The settings on this tab aect the whole Bullet simulation. Gravity X/Y/Z - Although the default is set to an Earth standard gravitational acceleration of -9.8 m nothing prevents you from having your gravity point in any direction, or even varying it using Envelopes and Textures. Dynamics Framerate (fps) - Set the frames per second for dynamics calculations. By default this is at 180 fps. Decreasing the value will result in faster calculation times at the expense of simulation accuracy (objects penetrating each other). Increasing will result in the opposite, more accurate simulation, but with slower calculation times. Time Scale - By default this is set at 100%, however, using an Envelope you can slow down, speed up or even reverse dynamics time independent of the scene time to create cool Bullet Time animations like those rst popularized in the Matrix lms. Draw Collision Shapes - This shows both mesh cages and the built-in shapes Bullet is using for the simulations in the viewport.

Reset - If you ever see results in Bullet that seem strange to you, it could be the cache needs re-calculating from scratch. This button does just that, it clears and resets the cache Bullet is using when solving the dynamics, then rebuilds it when you scrub or play the timeline.

Bullet Cache
As Bullet solves dynamic calculations, it stores the results in a cache so that animation playback can be uid. The cache is automatically stored in the Dynamics folder of the current Content Directory for the scene (this can be changed in the Options > Paths window, which can be accessed by pressing the o key). The cache le is named the same as the scene le, but has a .dynacache extension.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 127

LightWave 11 Features

Bullet Dynamics
To generate the full cache for a dynamics simulation, a quick way is to go to the end frame on the timeline, rather than pressing play. Either click on the last frame in the timeline, or bring up the Goto Frame window (f key). Doing it this way means that although LightWave has to calculate the simulation for the whole scene in one go, it doesnt have to display every frame update in the viewport, resulting in quicker calculation times.

Bullet and Hierarchies


If you note that the motions of a parent object are not being updated in Bullet for a child object with Bullet applied, you need to reset your dynamics cache on the World tab of Bullet Properties.

Bullet and Bones


You can now parent a Bullet-controlled kinematic object to a bone and animate the bone using IK, targeting, etc. and the Bullet dynamics will read the motions.

Bullet and FiberFX

To create hair and fur that is aected by Bullet, you should rst set FiberFX Dynamic Gravity to O and set Gravity to 0% so they do not interfere with Bullets calculations. Fibers need to be polygonized by right-clicking on the item in your FiberFX window and choosing Polygonized Mixed.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 128

LightWave 11 Features

Bullet Dynamics

This will create guides in geometry that are automatically weighted from end to tip with 0 % weight at the root and 100 % weight at the tip. Make sure you save your ber object after it has been polygonized. If you want the hair to deform but not the object its attached to, use a Mesh Filter in the Bullet window set to the ber weight map that was created when you polygonized the hair. If you want it all to deform set the Mesh Filter to none.

Bear in mind that if you dont want the object to deform you will need to animate it to get the hair to ow. Bullet wont react to the object at all because objects that have no weight map are ignored by Bullet and the hair will merely hang down unless you move the object around. In Bullet set Mass Distibution to Vertices if you have a polychain-only object (or you are animating only the polychains of a mixed object).

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 129

LightWave 11 Features

Bullet Dynamics
Styles in FiberFX are morph maps that need to be activated in the scene by choosing Morph Mixer from the Object Properties window. Nothing needs to be done in Morph Mixer but by opening the window you are telling LightWave that it should remember you have a style on your bers. Dynamics wont work with styles though and when you use Morph Mixer it turns o the style. If you want to animated your FiberFX styles you can use Morph Mixer and Bullet will react to the changed style. Speed up calculation of dynamics by turning o the display of bers when calculating.

FiberFX requires multiple passes to work with LightWaves photoreal motion blur. Since this adds a considerable overhead to rendering time you may prefer to motion blur as a post-process.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 130

MAIN TITLE
SUB-TITLE

Fracture

LightWave 11 Features

Fracture
About Fracture
This new Modeler tool (Multiply tab > Destroy > Fracture) breaks apart an object and makes the resulting segments into parts for use with dynamics. There are three algorithms implemented in the Fracture tool: Voronoi, an algorithmic way of breaking an object in a natural-looking fashion; Halves, a recursive split-in-half algorithm; and Matrix, a matrix-cutting algorithm. Many aspects of 3D work involve modeling properly for the intended use of the model. For example, many articles and discussions are available on how to model characters in order to be able to animate them properly. The ow of the polygons in the model is critical to getting the correct deformations to occur. There are similar discussions of modeling requirements for other purposes. For the current version of Fracture, you will get better results if you avoid geometry with long thin polygons, or with a disparity in the size of the polygons in the mesh - large polygons mixed with tiny ones. Lastly, any object to be Fractured needs to be frozen, not sub-patched because Fracturing will destroy the polygon ow needed by subpatches.

Cutting tools need to be fully closed meshes. For example, a cutting tool for Fracture cannot be a cone that you have chopped the top and bottom o of and distorted, so that you have an open mesh with a hole in the middle; you need a closed mesh, with no holes and preferably tripled.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 132

LightWave 11 Features

Fracture

Results animated in Layout

Overview of Controls
Common Settings
Interior Surface - Entry eld to set a name for the interior surfaces created in the fracture process. Random Seed - Entry and minislider to adjust the random seed used for the fracturing process. Preserve Original toggle - On keeps the unfractured original geometry in the layer it was created. O does not preserve the original geometry. The undo system in Modeler will not always be able to recover the original geometry, so maintaining the original with this option can be useful if you need to retry the fracturing to get the results you prefer. Create in - This oers the choice of either creating a completely new fractured object or creating a new layer for the existing object. Part to Layers - LightWave will happily deal with the fractured object being in a single layer, but if you need to export to a dierent program that needs separate layers you can use this.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 133

LightWave 11 Features

Fracture
Explode Controls
The Explode morph map can be used as a poor man dynamics. Just animating the morph to explode a seemingly solid object and adding particles and HyperVoxels can often substitute for expensive dynamics simulations. Explode Parts toggle - When checked this makes an exploded Morph map of the parts. Explode Distance - Sets the maximum distance for the explosion. This controls how far to move each connected part away from the center of the object. Explode Randomness - Species a percentage by which to vary the distance. For instance, if distance is 1m and randomness is 50%, then the pieces will move away from the center anywhere between 0.5m and 1m. Explode Morph - Name for the exploded morph map.

Morph Maps can be examined using the M icon at the lower right of Modelers interface and the dropdown menu that goes with it. This way you can see the morphed object and the base fractured version.

No Dynamics. The morph, some lens are and particles are enough to make a good background explosion.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 134

LightWave 11 Features

Fracture
Fracturing Algorithms
Voronoi
Use - There are three choices: Random Points - This will create randomly positioned Voronoi cells with which to break up your object based on the value set with the Cell Count eld. Background Layer Points - A set of points on a separate layer to the geometry you wish to fracture will be used for the basis of the Voronoi cells. The points need to be shown as a background layer, similar to Boolean operations. Points outside the geometrys bounds will be clamped to the bounds for the cutting operation. Background Layer Polys - This is something of a mix between Random and Background Layer Points. To use it, you need to create a closed 3D shape in a layer that you have as the BG layer for the object to be fractured, and the Cell Count eld is available to ll that shape with the required number of cells used to fracture the original object. Cell Count - This eld is ghosted if you are using Point Selection since the number of cells is determined by the quantity of points you use.

This image shows a Background Layer Points Voronoi fracture. Although the points are not within the bounding box of the mesh to be fractured they still have a pleasing eect.

Background 3D shapes for cutting Voronoi Fractures in Background Layer Polys mode must be closed objects. It is best to triple them and make sure all normals are facing outwards.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 135

LightWave 11 Features

Fracture
Matrix
Detail - The detail factor controls how many pieces are created. The value entered is exponential (similar to subdivision surfaces) - 1 = 4 parts, 2 = 16, 3 = 64, etc. Jitter Amount - Controls how much to jitter the source cutters. Higher values lead to more uneven results. Jitter Iterations - Controls the number of times jitter is applied. This is similar to the iterations value in smoothing tools. Higher iterations with low values gives a dierent result to fewer iterations with high values. The former would move each point around more than the latter, which will move certain points more.

The three images show diering levels of Jitter and Iterations. 1 is no jitter, 2 is a Jitter amount of 50%, but an iteration count of 50, which is high and 3 is a jitter amount of 90% with only three iterations giving a far more jagged appearance.

Halves
Cutter - This determines the shape of the cutter used to fracture the objects. Fractal Cube - Creates more organic results - like a rock being fractured. Cube - Makes straight slices - very angular results. Max Angle - This sets the maximum angle of rotation of the cutter as it is making slices. If you set it to 0, all slices will be axis-aligned and the results are very cube-like. With a high value, more sharp pieces that arent axis-aligned are generated. Unevenness - This chooses how uneven the splits are, by percentage. At 0%, everything is split down the middle. At higher values, the algorithm splits more o center. Its a guide so where it cuts is still random, but with higher values the results will be more random.

The three images above show: 1. Perfectly even cuts, no unevenness and no angle variation, 2. Changed unevenness to cuts that are not exactly halves, 3. Shows adding in an angle variation.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 136

LightWave 11 Features

Fracture
Fracture in Layout
Fracture is also available in a simplied version directly in Layout. You can nd the tool in the FX Tools tab in the Destroy group.

Like Fracture in Modeler, you can dene the interior surface name, the random seed you wish to use and the number of cells you wish to break your object into. The Voronoi method will be used for fracturing and your object will be saved with the new lename you choose.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 137

MAIN TITLE
SUB-TITLE

Virtual Studio

LightWave 11 Features

Virtual Studio
About Virtual Studio
Virtual Production workows are changing the face of CG and live action production, visualizations, and design. Most individuals and small to mid-sized studios assume that virtual production technology is out of reach but the truth is that this technology is scalable and very exible. With LightWave 11.5 and its Virtual Studio you can perform virtual location scouts of a 3D set, record handheld camera moves on a fully 3D LightWave scene, use game controllers like the PS3 Move controllers to drive character animation, and control lights all in real time. In fact, any channel that can be animated in LightWave can be controlled with Virtual Studio. Clients love this type of interaction for meetings and virtual walkthroughs and now it is easily within your reach with LightWave 11.5 Virtual Studio. LightWaves development team are bridging the gap between real and virtual worlds. Our real world interface with LightWave has been fairly constant for years using a 2D screen output, a keyboard, and a mouse pointer with some buttons. These days, there are more real world devices we can tap into to allow real world humans to interact with LightWave. These include: motion tracking devices, 3D mice, gesturing, accelerometers, virtual buttons, wireless displays, joysticks, cameras and more. With Virtual Studio, LightWave can support many of the capabilities of a real studio, such as recording and adjusting live action, the key being live action. Animators have always had the ability to adjust motion in an animation at a fundamental level (key frames) but producing the most realistic looking motion requires capturing real world data or simulating it procedurally. The purpose of LightWaves Virtual Studio is to work with real world data by bridging the gap between LightWave and a real world studio.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 139

LightWave 11 Features

Virtual Studio
Overview of Controls

Before we go into specics, here is a presentation of the three principal windows Virtual Studio uses in Layout. These can all be found in the Virtual Studio tool group in the Top Menu section of Layouts menus. The button beneath this group labeled Studio LIVE is a toggle that replicates the LIVE! button inside the Studio window for ease of access.

The Device Manager

This assigns your connected device to be used for the Virtual Studio. You need to click the Enable column for the device type, this will be either a HID (Human Interface Device) compatible peripheral, the Intersense VCam or the PlayStation 3 Move controller. If there are devices you dont own, or are never likely to, you can remove them from display to make it tidier. Right click on the manager entries you wish to remove.

If you plug in a device of the type you have removed, you will get the entry back in Device Manager.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 140

LightWave 11 Features

Virtual Studio
Once you have enabled your specic device, you can click on the devices name to see the readout of LightWave-supported Tracks. In the case of PlayStation 3 Move.Me controllers you can adjust the gem hues at the top of each Move controller. The gem color settings in this panel are just used as a guide for Move.Me to change the gem colors (they wont necessarily be exactly the same as on this panel) and colors that are too similar will not be allowed. The Console Sword button changes the onscreen appearance of the Move controller to the sword object assigned to the gem on the PS3.

The generic version of a HID device is purely the HID manager version. The generic device is limited in functionality, usually just to button presses; elements like accelerometers need to be specically programmed. If you need to choose between devices always choose the non-generic version that has been specically programmed for LightWave. Going further, you can remove them from view with the HID Manager Settings window.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 141

LightWave 11 Features

Virtual Studio
The Control Booth

This is where you set up behaviors using Layout commands to drive functionality for your device. The control booth is a way to control Layout similar to how one would assign keyboard shortcuts to do things that the user would normally use the GUI to do. These behaviors are not part of the scene. The control booth is a user interface tool. To know what commands are available go to the Utilities tab and click Save CMD List. The Space Explorer in this example has fteen buttons in addition to the central controller and these can be assigned actions in the Control Booth. These settings are saved into a cong le in your user directory: %USERPROFILE%\.NewTek\ LightWave\11.5\congs\ControlBooth.cfg on Windows systems, and under OS X: ~/Library/ Application Support/NewTek/LightWave/11.5/congs/ControlBooth.cfg You can import or export collections of commands by clicking on the + symbol at the bottom left corner of the window.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 142

LightWave 11 Features

Virtual Studio
The Studio

This is where you will record your performances using the devices you set up in the Device Manager, using the behaviors you set up in the Control Booth although the Virtual Studio can be driven without a third party peripheral. You can have an unlimited number of Performances recorded for a device to choose between for incorporation into your scenes timeline.

Listed in this window are the traits that will be recorded with the Virtual Studio. Name - the name of the item. Double clicking on the name will open the node graph showing the connections needed for setting it up. Alternatively you can single click on Edit... in the Nodes column.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 143

LightWave 11 Features

Virtual Studio
Value - is the readout of the current output from the trait. Nodes - Click on the entry in this column to edit a traits node network. Padlock - Allows the user to lock all the settings for the item (or group) so that no changes can be accidentally made without rst clicking the padlock again. A - For active. This determines whether the virtual studio will be looking at output from the trait. Clapper board - The take number you are on. You can click on this number to change the take, or to add a new one. Snowake - Freeze. This icons stops all evaluation from the item. Rec - This arms the device for recording. This is an individual record function so that you control which traits are to be recorded. Play - This arms the specic channel for playback. Like record, its an individual function. By default, when you bring a new trait into this window the Rec and Play columns are armed. At the bottom of the window there are more functions: + Clicking this button brings up a submenu: New Empty Collection - Allows you to create a new group for assembling your traits. New Collection Of Selection - If you have a series of traits selected in the Studio window, this will put them all in a new collection. Collections are renamed by double clicking on them. New Take - This will set up a new take for the selected trait. - Will bring up a submenu: Remove Active Take of Selection - Removes the current take. Reset Active Take of Selection - Zeroes out the take, but doesnt remove it. Remove All Takes of Selection - Deletes all takes from the selected Studio trait. Remove Selected Collections - Removes the selected collections. Active - A global button to evaluate Studio functions. LIVE! - Live is the live-feedback evaluation of the scene (and its traits) that updates viewports to see the feedback. Without Live!, scene evaluations only occur when the scene time changes and in a few other situations, but not at a consistent frame rate like with Live! enabled. FPS eld - This requests a frames per second rate for the whole scene when used through the Virtual Studio. The following number is the actual reported FPS, useful for complex scenes that might not be able to play back at the requested rate. Allow Rec - This is the Global record button. It allows the individual Rec settings. Allow Play - This is the Global Playback button. It allows the individual Play settings. Punch In/Out - used if you only want to use the Virtual Studio for a section of the scene. Left
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 144

LightWave 11 Features

Virtual Studio
at 0 it will record the whole scene. 1-shot - this records the motion of your traits during a single playback of your scene, when it reaches the end of the timeline recording stops. This also works if you are playing back in reverse to reverse-record your traits at which point it will automatically stop when the timeline reaches the beginning of the timeline. Performances - this opens a sub-menu related to storing multiple performances. Performances are useful for more complex setups where there are multiple scene assets being aected. A use case may be giving a director multiple options to choose from; but instead of being able to change just one take to accomplish that, it may require a lot of settings changes. The performance would encapsulate all the setting changes (to traits only) for quick switching. Another example could be a single actor performing multiple roles in the scene: camera man, lighting, driving a car, eecting explosions where the car drives. A performance could be setup for each so that the real person can switch roles quickly and record or playback only the parts needed.

Studio Assets Submenu

There is a new submenu added to 11.5 that simplies the process of adding a new Virtual Studio device to a scene. Rather than needing to use Load from Scene to bring in a camera or light from a scene where they have been set up, the user can now simply choose the appropriate command from the menu to add a camera or spotlight. Examples have been put in this menu for PlayStation 3 Move.Me devices and 3Dconnexion Space Navigator, Explorer and Pilot Pro devices. Users can add their own devices to this submenu by editing the Python scripts and providing an identically-named scene. Look in LightWave/Support/Plugins/Scripts/Python/Layout/Virtual Studio directory to see the examples. Once done, the new scripts need to be added using the Edit Plugins window or by restarting LightWave if you use Autoscan Plugins, and then the plugin needs to be added to the Assets menu using Edit Menus.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 145

LightWave 11 Features

Virtual Studio
Example: Car Shoot

Note that to get VPR to resolve you need to turn o the LIVE! function so that the Virtual Studio isnt constantly evaluating your 3D device.

The director wants to shoot a turntable of a new car and wants to direct you in the motions you will use. Were using the Studio_Spyder scene from the content for this example. Use the Virtual Studio > Studio Assets menu to add a camera for the Space Explorer, Space Navigator or PlayStation 3 move.me system to the scene. If you wish to build your own node network to control the camera, individual nodes are explained starting on page 147; the 3Dconnexion setup used for this example is explained starting on page 146 of the manual and a move.me node explanation can be found starting on page 150.

Before anything else, make sure your Nav tab in Options is set to Device: (none)! You dont want to make Layout use the same device for two dierent purposes.

A Space Explorer was used for the purposes of this scene. If you have a 3Dconnexion device not listed in the Studio Assets menu, you will need to double click on the trait item in the Studio window and open the Device node to associate your 3Dconnexion device with the node network.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 146

LightWave 11 Features

Virtual Studio
Once you have your new camera in the scene you will see that it is positioned badly so you need to give it a better starting position using your 3Dconnexion device, if it doesnt move, make sure Live! is ticked in the Studio window or in the Top menu group of Layout. Now we can start. 1) You need to make sure you have Active, Live!, Allow Rec and 1-shot all checked in the Studio window. Up on the trait for the Item Motion: Single you want the Rec and Play buttons checked too. You should be on Take 1. The scene only has 60 frames so its going to be quick, but thats okay for this test. You need to be comfortable with using the 3Dconnexion device to control the camera smoothly and accurately and you can always change the playback rate of your scene if necessary. 2) When ready, press play on the scene and be ready to move your 3D mouse to capture the changes in position you want. 3) When the scene is done playing the Allow Rec button will switch o. Click the Allow Play button in the Studio window and play your scene back. You will see the motion you recorded. If youre not happy with it, you can always hit the Allow Rec and 1-shot buttons again and redo the take. If however, youd like to keep this take and try another, click in the Studio window in the clapperboard column. You will be presented with the possibility to choose between your takes or create a new one.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 147

LightWave 11 Features

Virtual Studio
4) Your takes can be chosen between and played back on the timeline and when you are happy to render make sure the Studio Allow Play button is active for the take you want to render. All your takes are saved into your scene le.

All four takes were rendered and saved into a single scene.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 148

LightWave 11 Features

Virtual Studio
3Dconnexion Example Setup
The node network for the 3Dconnexion example shown at the start of this section looks like this:

This is how the individual nodes work: 1) This is our Device node. Here we are using a 3Dconnexion Space Explorer. If you are using a dierent model you will have dierent outputs, but the main ones devoted to movement are the same for all models - v for Position and w for Rotation. 2) This Multiply node allows you to scale the sensitivity of the movement controls of your 3Dconnexion puck. The settings are shown in the window above. 3) This Multiply node allows you to scale the sensitivity of the rotation controls of your 3Dconnexion puck. The settings are shown in the window below. 4) These three Vector Scalar nodes allow you to change the axis order to match the devices rotation to the Euler angles LightWave uses (Heading/ Pitch/Bank). Here Y goes to X, X goes to Y and Z is passed through. 5) The three Scalar outputs from 4 go into a Make Vector node. 6) The all-important Studio Trait node. This links a scene item (in this case VirtualStudioCam) with your node network and thus your device. The Position goes straight to the Add node in item 10 and the Rotation to item 7. 7) The HPBAdd node combines the two rotations of your controlling device and your scene item. The result is sent to the destination Trait node. 8) The HPBMatrix node converts heading/pitch/bank Euler angles to a 3x3 matrix output as right/up/forward vectors.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 149

LightWave 11 Features

Virtual Studio
9) These outputs are taken, along with the original scaled output from the Devices v output, and an inverse transform is applied. This is to make the right/up/ forward vectors be relative to the Studio Trait nodes orientation (in order to better visualise this, imagine an arrow pointing northeast. What this node does is translate a forward push on the 3Dconnexion devices puck into forward motion for the arrow, that is to say in a northeasterly direction, not just north). 10) The Studio Trait Position and transformed Device v are Added. The result is sent to the destination Trait node. 11) The destination Trait node.

Virtual Studio Nodes


In order to set up a virtual studio scene and be able to use peripherals such as the 3Dconnexion mice a series of nodes have been added to LightWaves Node Editor. They are accessed by adding a Virtual Studio Trait motion modier to your scene item like so:

and then double-clicking its entry in the Virtual Studio window.

Item Info > Trait - A trait is a motion modier added to a scene item making it visible to the Virtual Studio. Once you have added this modier to your scene item, the scene item will become available in the Trait node in the node editor.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 150

LightWave 11 Features

Virtual Studio

Item Info > Device - A device is the tool you are using to control the Virtual Studio, whether it be a 3Dconnexion peripheral like the Space Navigator or Explorer; a PlayStation 3 Move controller or an Intersense VCam. The outputs for a specic device will be appropriate to that device. The Space Navigator for notebooks here shown has just four outputs for movement, rotation and the two buttons present, whereas the Space Explorer has a total of 15 outputs representing the dierent buttons on the device. When you add a device to your nodal network, you need to double click the node to present the following window where you will choose the device you wish to use.

If you set up a scene with a 3Dconnexion Space Explorer or similar with additional buttons and congured nodes relating to those buttons; then use a Space Navigator with no additional buttons the connections for the missing buttons will be lost if you save the scene. The nodes will still be there, but the connections will have to be remade when you reconnect a more fully-featured 3Dconnexion device.

Math > Vector > HPBMatrix - convert Euler angles (heading/pitch/bank) to a 3x3 matrix output as right/up/forward vectors (each being a nodal vector type).

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 151

LightWave 11 Features

Virtual Studio

Math > Vector > MatrixHPB - convert a 3x3 matrix (specied as right/up/forward vectors) to a vector of Euler angles (heading/pitch/bank).

Math > Vector > Multiply Matrix 3x3 - multiply two 3x3 matrices. For rotation matrices, this has the eect of combining rotations. The output is another 3x3 matrix represented as right/up/forward vectors.

Math > Vector > Transpose Matrix 3x3 - a rotation represented as a 3x3 matrix can be transposed which has the eect of inverting it meaning the rotation is reversed.

Math > Vector > HPBAdd - combine two rotations represented as Euler angles and output the resulting rotation as Euler angles.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 152

LightWave 11 Features

Virtual Studio
Move.me Example Setup
This is a PlayStation3 application that uses up to four PS3 Motion controllers and the PS3 Eye camera to track the position and rotation of each controller and sends that data across a network to client. That client, in this case, is the LightWave 11 move.me device manager. Once accessible to the LightWave11 device manager, the data can be used to control your scene elements and user interface.

PlayStation3 Setup
1) You must have the necessary hardware and physically set it up. Please refer to your PS3 console for specic setup instructions such as linking the controllers to your system. PlayStation3 console PS3 Eye camera PS3 Motion Controller (up to four; this example species two) Network connectivity to a LightWave11 system

2) You must also acquire the PS3 move.me software application. This is available via the PlayStation Network Store (availability in certain markets may be limited). 3) Start the move.me application and get past its instructional splash screens. The screen should display what the camera is seeing, and the upper left corner of the screen will show the consoles IP address with a port of 7899. This is the server that LightWave11 will need to refer to shortly.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 153

LightWave 11 Features

Virtual Studio
4) Repeat this next step for each PS3 Motion controller (also referred to as gem). At about three feet from the camera (PS3 Eye), point the Motion controller directly at and inline with the center of the camera lens, remain stationary, and press the Motion controller Move button (the largest top-side button). The gem will ash and nally settle-in on a color (Each gem will have a unique color.) You must be fairly still until the nal color is visible; this is a calibration procedure. After the calibration, do not rotate the camera as that will disrupt the orientation calibration. As the controller is moved, you will see a sword (or other avatar) represented on the screen. To disconnect the gem, press the SELECT button on its left side. This does not power o the gem, it only disconnects it from motion tracking in the Move.me application. You may then repeat the calibration as needed. It is important to note that gems can only be connected or disconnected when no clients are connected to the Move.me application. After about 10 minutes of non-use, a gem may disconnect automatically (the gem color will go out). If any clients are connected at that time, they must be disconnected before the gem can be reconnected. This behavior may change in the future.

LightWave Device Manager Setup


The device manager in LightWave 11.5 is the central place to decide what devices can participate with the studio and control booth features. The studio allows devices to aect your scene while the control booth allows devices to aect your user interface, which can also aect your scene. To be more clear, the studio feeds device data into your scene through its natural evaluation process similar to motion plugin evaluation, and the Control Booth interprets device data to issue Layout commands like those that can be entered by a user in the command input and command history panels. 1) Open the device manager panel. A table of existing managers is shown 2) Find the manager called PS3 Move.me and enable it.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 154

LightWave 11 Features

Virtual Studio
3) Open the settings for it. 4) Click on the + button to add an address entry. The default of 192.168.x.x:7899 should appear.

5) Look back at the console screen upper-left corner and change the IP address in the Move.me Manager settings to it. The address format is IP:port, so make sure there is a colon separating the IP address and the port value. 6) Enable the address entry. If all is well, the status should show 1. It is important that the PS3 Move.me entry on the device manager panel is enabled before attempting to enable an address entry. You can now close this settings panel.

The PS3 Move.me manager should now have four devices (gems).

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 155

LightWave 11 Features

Virtual Studio

7) A device must be enabled for its data to be received; so enable the devices of interest in the device manager panel. Highlight a device to see its data in the tracks table below and conrm its operation by watching the data change as you manipulate the gem.

At this point, the gem devices are available to studio and control booth.

More than one PS3 console may be connected simultaneously therefore allowing more than four gems in LightWave11.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 156

LightWave 11 Features

Virtual Studio

IMPORTANT! Windows rewall rules may be preventing the data stream even though the setup appears correct. A quick way to troubleshoot this is to disable the Windows rewall for the network connection that the console is on and re-check for track data changes. For a direct network connection between the LightWave11 system and the PS3 console, there is less risk in disabling the rewall; but when the connection is also to the internet, special rewall rules may be necessary. The Mac platform does not have this issue.

The name of a device is its identity when used through LightWave and it should be unique from other devices. Because this name will change depending on how the hardware is setup and what hardware is available, it makes sense to rename devices to something you will use in your scenes and on your system. That way, a simple name change in the device manager will keep away the need to change all scene references to a device. Device names can be changed by double-clicking on its name. The device name and active state are remembered the next time you start Layout as well.

Scene Setup
The scene can be as simple or complex as you like. With up to four gems per PS3 console, you have a lot of options. This example sets up a virtual camera and a virtual spotlight as well as some control booth behaviors.

Take recording requires mapping device data to your scene elements; this is the purpose of studio traits. Control booth behaviors are not recorded in a take.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 157

LightWave 11 Features

Virtual Studio

Virtual Camera Motion


The virtual camera motion will be directly tied to the gem motion. 1) Create a scene camera and name it virtual camera. 2) Open the motion properties for it, and add the Virtual Studio Trait modifer. This will add a new trait to the Studio.

3) If the studio panel is not already open, you may open it in either of two ways: a) Open the properties for the plugin and click on the Studio button, b) choose the studio menu option (provided your menu conguration has it available).

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 158

LightWave 11 Features

Virtual Studio
4) Edit the node graph for this new trait. In the studio panel, locate the trait named ItemMotion:virtual camera and double-click its name or click Edit in the Nodes column. This opens a node graph with a target node representing the traits position, rotation, and scale. 5) Add a device node from the Item Info category to the node graph.

6) Open the properties for the device node, and set the manager and device to PS3 Move.me and PS3_Gem0 respectively.

If the devices are available in the device manager window, they can be selected via the drop-down gadgets in the panel. Otherwise, you may simply enter the names directly; however, no understanding of them will be available to complete the node graph. You may continue on with the node graph and make the nal connections once the required devices are available. Once the node graph connections are made, they will be remembered when reloading your scene even if the devices are no longer available.

7) Connect the device node XYZ and HPB to the trait Position and Rotation respectively;

8) In the Studio panel, enable the LIVE! button and make sure the value to its right is reasonable for your system (suggested 10 to 30). This value is a evaluation update rate. It determines how many times per second the scene is evaluated and redisplayed in the view ports. This
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 159

LightWave 11 Features

Virtual Studio
allows you to see scene changes as a result of gem movement even though the scene time is not changing. Once this is done, you should now see the virtual camera moving in your scene as you move your gem.

The PS3 Eye must be able to see your gems colored orb to track its motion completely. 9) The scale and orientation of gem motion may not be appropriate for your scene. Parenting the scenes virtual camera to a null item is now useful by providing a more exible reference for the gem data. Create a null item called eye origin.

By default, the PS3 Eye is mapped to the scenes origin and gem data is relative to this. 10) Parent virtual camera to eye origin. The virtual camera will now move relative to eye origin. The eye origin item can be further parented to other items, even animated ones.

Virtual Camera Zoom


The gem virtual camera would not be very useful without the ability to control the zoom factor of your scene camera. We will create a channel trait for the camera zoom and applied the necessary node graph utilizing the gem trigger and move buttons. 1) Open the camera properties for the virtual camera scene camera. 2) Add an envelope to the zoom factor property (sometimes listed as lens focal length). This will open the graph editor. 3) Add the Virtual Studio Trait modier to the new ZoomFactor channel. This will create a new studio trait called Channel:virtual camera.ZoomFactor. Due to internal technical reasons, this will also create another studio trait called Channel:virtual camera..LegacyZoomFactor.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 160

LightWave 11 Features

Virtual Studio

4) We must adjust the node graph of the .LegacyZoomFactor trait only. Double-click its name to open its node graph. The target node has a single value called Value; this represents the traits value.

5) Construct the following node graph. An explanation follows.

This zoom graph relies on the Motion controllers Move and TPressure button data. The Move track is a simple toggle where 1 is pressed and 0 is not pressed. The TPressure track supplies
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 161

LightWave 11 Features

Virtual Studio
values from 0 to 255 depending on how hard the user squeezes the T trigger button. When you do not know what data values are possible for a track, look at the device manager panel in LightWave and highlight the device in question; the available data tracks and expected format will be displayed interactively. The result of the graph will be this: zoom in when the Move button is not pressed and zoom out when it is; the T determines how quickly to zoom. The logic node outputs a negative value when the Move button is pressed having the eect of zooming out. The node output values act as a scaling to aect how fast the zoom will occur. This output is multiplied by the TPressure value and sent to a pow node, which allows the zooming to appear more natural like that of a real camera zoom.

The previous zoom factor trait value is needed to give the node graph something to modify, since it applies a relative amount to arrive at a nal absolute trait value. The Studio Trait node allows us to specify which trait to use. We choose the same trait for which this is a node graph for.

The previous trait value is combined with the pow eect and clamped to keep the resulting zoom factor within a reasonable range.

The above scalar aects how fast the zoom with occur. The value must be very close to 1.0.

This is a very basic zoom control. One enhancement is to add another logic node to allow multiple
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 162

LightWave 11 Features

Virtual Studio
zooming speeds based on the amount the T trigger button is squeezed. A gentle press to zoom very slowly and a hard press for maximum zoom speed.

Virtual Spotlight Motion


Similar to the virtual camera, the spotlight directly uses the gem motion. 1) 2) 3) 4) 5) Create a spotlight type light called virtual spotlight Open its motion properties and add the Virtual Studio Trait modier. In the studio, open its node graph. Create a device node set to the manager PS3 Move.me and device PS3_Gem1. Connect the device node XYZ and HPB to the trait node position and rotation respectively.

Virtual Spotlight Light Intensity


The gem can also be used to adjust the light intensity via additional buttons. 1) 2) 3) 4) Open the light properties and add an envelope to Light Intensity Attach the Virtual Studio Trait modier to the channel in the graph editor. In the studio, open the new traits node graph. Construct the following node graph.

This node graph uses the gem Triangle track to increase the light intensity while the Square track decreases it.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 163

LightWave 11 Features

Virtual Studio

The light intensity is clamped between 10% and 98%.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 164

LightWave 11 Features

Virtual Studio
Virtual Spotlight Cone Angle
Similar to the virtual camera zoom, the spotlight cone angle can use the trigger and mode buttons 1) Add a studio trait for the Spotlight Cone Angle. (Add Virtual Studio Trait to its channel) 2) Construct the following node graph, which is very similar to the virtual camera zoom factor node graph.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 165

LightWave 11 Features

Virtual Studio
Glossary
Behavior - An assignment of a device track to a LightWave command setup via the Control Booth panel. Cast - A collection of characters Cast Performance - A combination of various chosen character performances. Channel - A devices data stream Character - A collection of traits. Character Performance - A combination of various chosen takes for each trait in a character. Character Preset - A denition of a character via its traits and connections to device channels and scene elements. Character Track - The desired movement a character is expected to make as the scene progresses. Collection - A container to better organize traits in the virtual studio and behaviors in the control booth. Control - An interpretation of device channel data to cause an action. Controls can have child controls. Control Booth - A feature that allows real world devices to issue commands in Layout. Device - An data input/output container usually representing a real world physical control. Device Manager - a manager of devices usually devoted to a specic method of communicating with them. The device manager panel accesses devices that are or have been available. Device Track - A part of a device that provides or uses time-dependent data. GEM - Motion controller used within the PS3 move.me application. HID (Human Interface Device) - This is an industry standard to communicate with devices. The HID Manager supports this mechanism and provides access to devices that support it as well. InterSense - An precise and range-limited motion tracking system. LIVE - A 3D view port feedback mode that evaluates virtual studio traits many times per second without adjusting the current scene time.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 166

LightWave 11 Features

Virtual Studio
Performance - A particular arrangement of all traits such that they produce a desired result. Preset - A collection of data used to remember settings applicable to specic aspects of the virtual studio. Its purpose is to save the user time and grief while setting up their virtual studio. Prop - A scene element that does not cause a response from a character, although, they can be manipulated by characters. Device - A set of channels representing input. Typically, devices represent real world hardware. Spike - A location marker for a prop or character. Stage - A place to arrange the cast and props and dene how the scene is to progress. Studio Asset - A virtual studio setup that can be added as an asset to your existing scene. Sword - An avatar used within the PS3 move.me application to represent a GEM. Take - A recording of a trait value as it changes through scene time. Trait - A scene asset that participates in the virtual studio. Virtual Studio - A feature that allows real world devices control of scene assets.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 167

MAIN TITLE
SUB-TITLE

Interchange Tools

LightWave 11 Features

Interchange Tools
GoZ
GoZ support has been added to LightWave 11 in both Modeler and Layout. As with any data interchange there are certain ideal workow practices to be aware of to achieve the best results. You should prepare geometry with tri and quad polygons only. ZBrush also expects one surface name and a single UV map on the object.

Our GoZ implementation is exible enough to allow you to work in a variety of dierent ways. You can begin your model in LightWave Modeler and send to ZBrush to create the UV map and paint your color texture map and generate your displacement and normal maps for the object. Then with a press of the GoZ button in ZBrush you can load the changed model back into Modeler and your shaders will be automatically applied to the object containing all color, displacement, and normal map information. Our LightWave Modeler GoZ implementation allows you to send an Endomorph on your object for further sculpting to ZBrush and back to Modeler. Imagine the facial targets and other eects you can create with this technique. Alternatively, you could begin the model in ZBrush and use GoZ to send your sculpt to Modeler for more detail, then go back to ZBrush to continue sculpting. You could then send your nal result directly to LightWave Layout, again with all the texture, displacement, and normal map shader information automatically set up. In Layout, even your bump displacement will be automatically set up on the object with the bump distance supplied by ZBrush to make it easier for you to get to the render quickly.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 169

LightWave 11 Features

Interchange Tools
Setting Up GoZ for LightWave

For our purposes here we will assume you have already installed and are using ZBrush and now you would like to add LightWave to your sculpting pipeline. Load the model you wish to sculpt in either Layout or Modeler. In Modeler it is the current foreground layer (or the selected endomorph) that will be sent while in Layout it is the currently selected object. Now go to the I/O tab in either application and choose GoZ. The rst time you do so there will be a slight pause as LightWave copies the necessary les to your ZBrush installation and then you will be in the ZBrush interface waiting to draw your object onscreen as a tool. Once done and modied to your satisfaction, pressing the GoZ button at the top right of ZBrushs interface will send your object back to LightWave, now with the additional sculpting. Here is an overview of what GoZ oers in both LightWave Modeler and Layout:

GoZ for Modeler


Geometry (tris and quad polys required) Color Map Displacement Map Normal Map Endomorphs UV maps can be created in Modeler or ZBrush. ZBrush only supports one UV map per object. The shader nodes are set up on the object but are not all present in Modeler. You need to open the object in Layout to access or edit all the nodes. Sub Tools are separate objects and that is how you should think of them in Modeler, not additional layers.

GoZ for Layout


Geometry (tri and quad polys required) Color Map Displacement Map Normal Map Bump Displacement (with bump distance automatically supplied by ZBrush) When you send your ZBrush Item with Color, Displacement, and Normal map to Layout nodes are automatically set up on the object and bump displacement in the object properties is activated. There is a continuous update of texture maps as long as you are painting to actual texture
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 170

LightWave 11 Features

Interchange Tools
maps in ZBrush and not just poly painting. You can see your displacement and normal maps with VPR.

If you select an endomorph in Modeler to send to ZBrush via GoZ, sculpt that endomorph and then send back to Layout instead of Modeler the base mesh will be overwritten. Always select the endomorph that you want to send and then make sure that same endomorph is selected on the object in Modeler before exporting back from ZBrush. Finally, note that if you change the geometry or polygon count in the middle of your process then vertex maps could be lost when exporting back to Modeler or Layout. This means you should get your geometry up to a certain level where it has enough points and polys to hold the sculpted detail when you res up in ZBrush. Do your sculpting and painting at that higher resolution level then when you hit GoZ in ZBrush to send back to LightWave the resolution automatically gets lowered back down to the base mesh. This is the typical workow most often used with ZBrush and other applications.

Example: Using ZBrush to Edit Morph Maps


One of the most exciting uses for the new GoZ functionality is to sculpt morphs for your characters. The process is very simple and straightforward, but illustrating it should set minds at rest. The content we will use for this example is the Mangalore warrior head, found in the LightWave 11 content (characters\Mangalore).

1) Well add a morph map to our Mangalore head. Weve called it Morph.Mouth_Open. Make sure its selected in your Morphs list and hit the GoZ button on the Modeler I/O tab.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 171

LightWave 11 Features

Interchange Tools

2) ZBrush will load or open and you can draw your warrior onscreen. Use ZBrushs Move Brush to spread the lips apart and hit the GoZ button in ZBrush.

3) The Mangalore head will reappear in Modeler and youll notice that you are still in the Morph. Mouth_open morph.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 172

LightWave 11 Features

Interchange Tools

4) Now you can create a new morph to sculpt. This time we are typing Morph.Frown. Once added, hit the GoZ button again.

5) In ZBrush we brush in the frown for the model and send back. You can carry on adding new morphs and sculpting them like this.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 173

LightWave 11 Features

Interchange Tools
Example: Converting ZBrush Fibermeshes to FiberFX guides
ZBrush v4R3 adds the ability to export the bers supported by ZBrush into LightWave to be used as guides for LightWaves own ber solution FiberFX. To do this is very simple:

1) Start with a project inside ZBrush and comb the hair as youd like it. Since the hair from ZBrush will only be guides for FiberFX you will not need a large amount of bers.

Reduce the Preview Fiber Visibility down to a low gure. ZBrush will give you the total number of bers that will be saved.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 174

LightWave 11 Features

Interchange Tools

2) Save your guides out of ZBrush as an LWO le and load it into Modeler.

3) The bers need to be converted into guides for FiberFX using the StrandMaker tool on the Setup Tab, in the FiberFX group. 4) The new polychains will be created on a separate layer, so they need to be saved to a new object (you can replace the existing curves on Layer 1 and save over your original object if you prefer).

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 175

LightWave 11 Features

Interchange Tools

5) Send this object to Layout and add FiberFX to it. Turn on Draw to see your newly-added bers. Youll see that the bers arent exactly following your guides. This is because of the Random Length and Gravity settings. Set them both to 0%.

6) If you wish to increase the quantity of fur on your object, increase the number of bers per guide using the Fiber Quantity setting in FiberFX.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 176

LightWave 11 Features

Interchange Tools
Additional GoZ Notes
Surfaces and UV Maps - Dont forget that ZBrush only expects one of each and will discard any others you have in your object. Make sure that if you have several of either you reduce them before sending to avoid losing your work. Saving your objects - It is a good idea to save your sculpt as a ZBrush tool. In case of any problems or wanting to continue work started before, saving the LWO from Modeler alone will not keep your sculpting information. Object assemblies - If you want to sculpt an object assembly as one piece in ZBrush, make sure the parts are separate objects (not just layers) and tick Import as SubTool in ZBrush GoZ Preferences. Cache - to perform the task of shifting data between ZBrush and LightWave, ZBrush has a directory of intermediate les. These are normally kept in C:\Users\Public\Pixologic\ GoZProjects\Default on a Windows system and /Users/Shared/Pixologic/GoZProjects/Default on a Mac. These temporary les are not automatically deleted and can take lots of room. If you see messages asking if you would like to use the object from disk, it is almost certainly because your ZBrush cache already has an object by the same name in it. You can clear this directory safely (when no GoZ process is running). Alternatively in ZBrush GoZ preferences there is an option to clear cache les. Layout or Modeler? - When you rst start sending your object between LightWave and ZBrush, you will possibly begin using GoZ with Modeler to initially prepare your object for sculpting and texturing. Once you are happy with this rst stage, you can tell ZBrush to start sending to Layout instead. To do this, can click the R icon on the ZBrush interface near the GoZ button to change which application GoZ communicates with. In this case, change it over to use Layout rather than Modeler.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 177

LightWave 11 Features

Interchange Tools
FBX Enhancements
FBX support has now been updated to version 2012.1 to support the most recent version of Autodesks MotionBuilder at time of writing. Please note that Camera Export from Maya to LightWave is only pixel-perfect when baking the envelopes in Maya, since curves are interpreted slightly dierently between applications. A command has also been added so that FBX export can be scripted. The command Generic_ExportFBXCommand has the following arguments: <SceneFile> <Version> <ExportCameras> <ExportLights> <ExportMorphs> <ExportModels> <ExportAnimations> <ExportMaterials> <EmbedMedia> <Type>

Re-parent Bone Hierarchy - This option, o by default, lets LightWave deal with Maya scenes where a deformed mesh is not in the same hierarchy as the bones. In LightWave, we usually have bones parented to the mesh directly (thats how LightWave understands what he has to deform using the bones). For a Motion Capture workow to work properly, this option needs to be o.

OBJ Enhancements
OBJ import and export has been further improved in LightWave 11. Large OBJs are now saved much faster than before. OBJs textured with image maps or numeric values in other packages will come in textured but Nodal or procedural textures will not translate in either direction. Autodesks Maya and Max reverse diuse and ambient, so the default behavior of LightWave now is to Reverse Ka & Kd for OBJ export. If you nd that textures are being transferred incorrectly, try switching this o on the OBJ tab of Options.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 178

LightWave 11 Features

Interchange Tools

Alembic Support
Alembic is an open-source object and scene format that was created primarily by Sony Pictures Imageworks and Lucaslm and presented at SIGGRAPH 2011. It is supported by most production 3D packages and LightWave 3D introduces support for Alembic v1.1 in 11.6. Unlike MDD les that are point-based, Alembic supports polygons and subdivision-surfaced objects. In LightWave it is similar to using Load from Scene in that it doesnt overwrite an existing scene le, but instead adds an object, or several, to an existing scene. Objects brought in with Alembic are purely controlled by the baked animation and cannot be moved, rotated or scaled otherwise.

Overview of Controls
Importing Alembic

To import Alembic .abc les into Layout you need to either visit File > Import > Alembic Loader, or the I/O tab and choose Import > Alembic Loader. A window will present a choice for scaling the Alembic le and for importing the le in a hierarchy with the selected item in Layout. When
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 179

LightWave 11 Features

Interchange Tools
Alembic les are brought into Layout, two things happen. The rst is that all the objects contained withint the Alembic le are converted to LightWave objects (LWOs), then second is that each object gets a Motion Modier (AlembicMotionController) that deals with diering rotation orders, and a Deform modier (MD_Reader) that handles deformation of the object. Surfacing is not maintained through Alembic but multiple Alembic les can be brought into the same scene. Dynamically-generated geometry is not currently supported.

Exporting Alembic

Exporting to Alembic uses Export > MD Multi Baker on the I/O tab. To export to an Alembic le you need to have the objects selected that you wish to export. Items to be exported can be nulls as well as geometry and things like Bullet dynamics are taken into account. Items will be baked to create the deformation/motion, so simulations are converted into frame-by-frame keyframe animation. Note that right now you can only export geometry OR lights OR cameras since in LightWave you cannot select items of dierent types together so you will need to create multiple Alembic les. This will be addressed in future versions.

Objects exported to Alembic can only have a single UV map. If there are multiple maps on an object, only the rst will be taken.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 180

LightWave 11 Features

Interchange Tools
Unity Interchange

LightWave can save scenes for Unity to enable a seamless transfer between the two programs. It is important to note, to avoid disappointment, that Unity is a very dierent beast to LightWave, with dierent restrictions and benets. There is a certain workow to follow to ensure that your Unity scene works as well as your original LightWave scene. First things rst, Unity is a game engine. It can create beautiful imagery but: Everything is dependant on UV mapping; A maximum of two UV maps per object are allowed; Procedurals, gradients, clip maps and nodes will not carry across - everything needs to be baked to image maps. LightWaves node system is a great benet here. If you can texture your scene as you would like using nodes, then bake out those textures to use as image maps in LigthWaves layered system then you can keep both ways of texturing in the same scene. If not, then you will probably want to set up a second content directory containing your scene repurposed for Unity. It is probably best not to assume that your delicate surfacing in LightWave will carry across and actually texture in Unity where possible, using LightWave to model the geometry and place lights, etc. Transferring surfaces between LightWave and Unity will use LightWaves Color channel (Diuse in Unity) and Luminosity channel (a second channel in Unity, usually used for Lightmaps, but also
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 181

LightWave 11 Features

Interchange Tools
for Bump/Normal maps). The example scene provided in the 11.5 content shows various surfacing techniques in LightWave and how they translate.

Example: Texturing in Unity

1) Well use this scene to get to grips with how texturing works in Unity. If this is your rst taste of Unity, install it as usual and then go to the support/3rdparty_support/Unity3D folder of your LightWave3D installation directory where you will nd a Unity package labeled LightWaveAppLink.unitypackage. This needs to be copied to your Unity installations Editor/ Standard Packages folder. Under Windows, this is usually here: C:\Program Files (x86)\Unity\ Editor\Standard Packages (for machines running a 64-bit version of Windows) and on a Mac here: Applications/Unity/Standard Packages.

2) Open Unity and select New Project. It will ask where, so create a new folder where
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 182

LightWave 11 Features

Interchange Tools
you would like Unity to run from. Also import the following packages: Character Controller.unitypackage LightWaveAppLink.unitypackage 3) Go to the folder you have created for this project and you will nd an Assets directory in it. Copy the Textures content from the 11.5 content folder into it. You should only use this version of the scene when you want to modify your Unity project. 4) Open the scene in Layout and hit s. This saves the scene and tells Unity that something has changed. Unity will re-import the scene as an FBX le.

5) In Unity, click the FBX version of the scene le and in the Inspector panel on the right set the Scale Factor to 1.0. Drag the icon nto the Hierarchy window on the left side of the screen. The FBX version is the icon with the image of the scene rather than the LightWave logo and is highlighted in the image above. 6) Now we will go through the textures in Unity, because you can see right away that they are not the same as those in LightWave. Clip - Change the shader to Transparent/Cutout/Diuse and you should get a clipmaplike behavior.

Tex_Bump - This is the most awkward one. Unity has assumed that this and the Tex material are the same because they have the same image in the Color channel in LightWave. We need to make a new Material in Unity. Do so by right-clicking in the Project window and selecting Create/Material. This will put a new material in the Assets/ Texture/Scenes/Materials folder ready to be named. Call it Tex_Bump, change its Shader to Bumped Diuse, select the UV-Fill image as the Base (RGB) image and the UV-Fill_BMP image as the Normalmap. You will be told that the image chosen isnt a Normal map, but do not click the Fix Now button. Instead, nd the image and click on it and change its type to Normal map in the Inspector and hit Apply.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 183

LightWave 11 Features

Interchange Tools
save the scene it will be reected in Unity, but this means that you may have to revisit some of the steps listed above to get things right again. To take things further and create a walkthrough, you can add the following Components: Camera: Character/Character Controller Character/FPS Input Controller Camera-Control/Mouse Look Floor Object: Physics/Mesh Collider 8) Now you can hit the Edit > Play command and your camera should fall to the oor where you can pilot it using the FPS controls of the WASD keys and your mouse.

The rst time Unity uses the LWS importer it will ask for the path to your LightWave directory and the path you specify will be remembered across sessions. If you would like to use a dierent path, use the Unity > LightWave > Choose LightWave Install Path menu button:

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 184

LightWave 11 Features

Interchange Tools

Additional Unity Interchange notes


Unity does not support animations with a scale of 0. For scenes where you will have explosions or other things that require a scale of 0 in LightWave, use a very small but nonzero value. LightWave lights and cameras are not carried across. The items only serve as place holders for Unity lights and cameras in the hierarchy view if needed. Textures for your LightWave scene should be baked to UV maps for the most faithful duplication inside Unity. Unity only allows two UV maps per object. The rst should be used in the Color channel, the second in the Luminosity channel, even if the LightWave textures are not intended for these channels. Because LightWave saves objects separately from scene les, you need to save both when you make texturing changes in LightWave. Unitys surfacing isnt as dense as LightWave so you will have to bake your surfaces (and lighting) to image maps since procedurals and nodes dont translate. While you dont absolutely have to stick to sizes at power of 2 values (256, 512, 1024, 2048, etc.), if you dont use them Unity will not be able to compress your images, meaning they will make the binary game le larger and might use more texture memory.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 185

LightWave 11 Features

Interchange Tools

Use the Inspector before you bring in your LightWave scene. You can change your scenes Scale, turn on Mesh Colliders for all your objects so that you dont need to enable them piecemeal as you create your Unity scene, and also use the From Models Material Material naming setting to better match your LightWave surfaces.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 186

LightWave 11 Features

Interchange Tools
Example: Realtime Visualization with Unity
One of the frequent requests we have is for some aspect of realtime visualization for architectural scenes. Unity in its free version is very capable of not only providing a standalone executable to give to your clients, but also a web player version so you can share using the web. Obviously this tutorial is not to give you a full understanding of Unity, but rather a taste of what is possible. Its up to you to nd out more about this excellent tool.

For our example were using the Lighting Challenge scene British Natural History Museum, modeled by Alvaro Luna Bautista and Joel Andersdon, available here: http://bit.ly/Hbijrp. The le is just an object so we have put it in a scene with a dome light lighting the exterior and four spherical lights for the interior. The texturing is not set up for LightWave (or Unity) but if we just wanted to get the scene into Unity quickly, the steps we need to take are as follows: 1) Once you have set up the scene for your Natural History museum in LightWave, we will create a new project inside Unity.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 187

LightWave 11 Features

Interchange Tools

Tick Character Controller.UnityPackage. This will give us FPS-style navigation, and also tick LightWaveApplink.UnityPackage. This will give us our LightWave automatic updating. Hit Create. Once Unity is loaded, you will see that there is an Assets folder inside your project directory. As an additional touch you can add the Skyboxes.UnityPackage package to create a sky for around the museum. 2) Copy your LightWave content directory into the Assets folder. From now on, only load your scene from this directory for any modications you do to the scene in LightWave. 3) If this is your rst use of Unity, it will ask for the path to LightWave. Once you have set that, start Layout and load your scene from the Unity project Assets folder. Whenever you save the scene in LightWave now, it will be updated in Unity. Right now we need to make an initial save so that we have something we can position in Unity. If you switch to Unity as soon as you have saved your LightWave scene you will see Unity is waiting for something and you may see progress bars like this appear:

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 188

LightWave 11 Features

Interchange Tools
4) Once it has nished you will see a new item in the Project tab. In our Scenes folder there will be a new le with the same name as your scene with a dierent icon. Click on this le so it appears in your projects Inspector pane, like so:

The Scale Factor needs to be set to 1. If you tick Generate Colliders and Generate LightMap UVs, which would be good, the initial import will take a long time. Also change Material Naming to Use Models Materials Once youve done this, drag the FBX le up into the Hierarchy tab. Unity will ask if you want to apply settings, do so and your model will appear in Unitys viewport.

The GlobalScale variable was set to 1 in Unity to make LightWave objects come in at the right scale since the script is LightWave-specic. However, it meant that all objects brought into a Unity project after that would also be set at 1, which could cause problems if you wanted to bring in OBJs or Max les into a project you created with LightWave assets. Thus the global scaling has been reset to 0.01 for safety and you will need to apply a scaling of 1 to your LightWave objects inside Unity.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 189

LightWave 11 Features

Interchange Tools
5) In your Hierarchy view, select the Main Camera and in its Inspector pane choose Add Component. You will need to do this three times to add: Character > Character Motor Character > FPS Input Controller Camera Control > Mouse Look 6) Our original LightWave scene had several lights, so we will now recreate them in Unity. Select the rst light in Unity and select Add Component in its Inspector pane. Add Rendering > Light and make this light Directional in the Inspector. Now select the other lights you placed in your LightWave scene and choose Add Component and Rendering > Light again, but make them Point lights and increase their range.

We have added a sphere GameObject to each of the lights so they show up in the game as glowing globes. Note also that we have set each of the lights to cast soft shadows. We are using the free version of Unity so it rightly warns us that we can only use realtime shadows with Unity Pro, however the aim here is to bake a lightmap.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 190

LightWave 11 Features

Interchange Tools
7) Select all objects and lights in your scene and open the Lightmapping window.

Tick the Lightmap Static box and up the number of Shadow Samples and the Shadow Radius to get better quality shadows. Now hit Bake Scene. It wont take long to bake and apply the lightmaps and you will have shadows applied to your scene. Be aware that if you move something in LightWave or Unity, you will need to bake again.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 191

LightWave 11 Features

Interchange Tools
8) Now you can hit the Play button at the top of Unitys interface to go into your realtime version of the scene. You can navigate by using the traditional FPS controls of WASD on a QWERTY keyboard or the cursor keys while your mouse dictates the view.

You can now use the Build Settings item in the File menu to create an excutable le for Windows, Mac OSX or Linux, or make a web player version for your clients to look at.

If you make changes to your LightWave scene, the changes will be propagated to Unity. Remember that since LightWave saves objects separately to scenes you will need to save both to get any changes you make to surfacing update in Unity.

If you follow along with this tutorial you may note you need to jump to get up the stairs and wonder why. This is because Unity splits the single Natural History Museum object into 27 parts to t within the maximum of 65k vertices in a single object and that means that the steps get carved up too. To keep the stairs in a single piece that can be climbed without jumping you will need to separate them from the main object manually.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 192

LightWave 11 Features

Interchange Tools
Example: LightMaps in Unity
One way to make your lighting more subtle even in the free version of Unity is to use lightmaps to recreate your LightWave lighting. Transferring these lightmaps is done by assigning them to your surfaces Luminosity channel and Unity will automatically place them in a second material slot dedicated to lightmaps.

Example

1) Here is a very simple scene with a box, with textures inside for the walls and oor. The textures are images applied to the UV Map in the Color channel.

2) The only light in the scene is a dome outside the box angled so that the inside of the box is
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 193

LightWave 11 Features

Interchange Tools

Lastly, go back to the Materials folder and drag and drop your new Tex_Bump material onto the appropriate polygon in the viewport. There is a second way of importing the scene so that this issue doesnt come up. Before you drag the scene into the Hierarchy list in step 5, click on the scene and look at the Inspector pane.

Note the Material Naming dropdown at the bottom of the image. By default it is set to Base Texture Name, but set it to From Models Material and you shouldnt have the problem described above. Tex - This one should have come in okay. You should just change the Shader to Diuse. Bump - This one is nearly okay. Change the Shader to Bumped Diuse, clear the image in the rst slot and put the same image in the second slot. The same warning will appear about it not being a Normal map, so repeat the process from before of nding the image, changing it to Normal map and hitting Apply. Proc - As you know, procedural textures dont travel between applications so they have to be baked, so for Unity this surface is the same as the Tex surface. You should just change the Shader to Diuse. Floor - Change the Shader to Bumped Specular and set the Normal map to FlrTile-Bump. You will need to change it as per Bump and Tex_Bump. 7) You have now brought your LightWave scene into Unity and converted the surfaces into Unity materials. Any time you make a change in LightWave and
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 194

LightWave 11 Features

Interchange Tools
lit partially. Well add a new Spherical light to the scene and position it inside the box, with a fallo that means it just touches one wall and the oor.

3) Now well set up a surface baking camera. Set it to the mesh for the box and the appropriate UV map. Set the resolution low. Were using 256 x 256 but you may even be able to get away with 64 x 64.

4) Add a Compositing Buer Export to your Image Filters (Ctrl F8) and choose Shading and/or Radiosity.

5) Render an image. In the Image Viewers Layer dropdown you will see the colour rendered image, plus an image for the Shading and/or Radiosity.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 195

LightWave 11 Features

Interchange Tools

6) In the Surface Editor, add the lightmap render to the Luminosity Channel. LightWave only supports greyscale images for any channel other than Color, but when the scene is sent to Unity, Unity will move the Luminosity Channel mapping to a secondary UV channel for a lightmap, which can be in color. 7) Save your objects and scene to update them in Unity.

8) In Unity, select the object that has the lightmap and you will see that the texture concerned is listed as Legacy Shaders/Lightmapped/Diuse. There will be two image slots in the Texture one Base, which should contain your image map and one Lightmap, which may be empty. All you need is click the Select button to add the lightmap image you rendered. The Lightmap wont look great in the viewport, but pressing Play should show it nicely in the game view.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 196

LightWave 11 Features

Interchange Tools
After Eects Interchange
LightWave 11.5 introduces a bidirectional link between LightWave and Adobe After Eects CS5 and higher. This link can deal with cameras, lights and nulls. To set up After Eects to make it ready to communicate with LightWave, you need to activate full scripting features in After Eects. The default is for scripts to not be allowed to write les or send or receive communication over a network. To allow scripts to write les and communicate over a network, in After Eects choose Edit > Preferences > General (Windows) or After Eects > Preferences > General (Mac OS), and select the Allow Scripts To Write Files And Access Network option.

The other step you need to do is to copy the AEtoLW.aex le from LightWave11.5/support/3rdparty_support/AfterEects to your After Eects Plug-Ins folder normally found in Adobe/Adobe After Eects CS5. In Layout the AE link is on the I/O tab in Layout where there are two buttons.

Send to AE sends your scene to After Eects and the Settings button allows you to change the path After Eects is installed on after the rst use where you are asked for the path. On the Macintosh, if you have multiple versions of AE installed select the one you want to use with the Settings button.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 197

LightWave 11 Features

Interchange Tools

Select your scenes camera and hit the Send to AE button. If After Eects is not running it will start and your camera will appear in a new composition named Default. If After Eects is running the item(s) sent from LightWave will appear in the currently active composition. You can undo this action in After Eects.

Once taken to After Eects and modied, you can send the camera and reference nulls back to LightWave using the File > Export > Send Selected Layer to LightWave 3D menu item. Make sure you have the After Eects camera selected for this to work. LightWave will appear with a camera with a baked motion path. You can repeat the same operation with reference nulls if you have any. Be aware that as of this time, only one item at a time can be sent. If required, you can reset the path to LightWave in After Eects using the Edit > Preferences > Reset Path to LightWave 3D menu item.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 198

LightWave 11 Features

Interchange Tools
DPX (Digital Picture Exchange) Image Loader/Saver

DPX is the most common digital intermediate format for scanned lm plates, whether analog or digital. It is the sister format to Cineon, and it can hold more color depth than a PNG or TGA le with varieties at 10-bit, 12-bit and 16-bit being most commonly used. Many facilities convert DPX les into low res JPG les purely to act as proxies for background images in a scene for compositing against, but LightWave now oers the possibility to directly use DPX les in a scene. You can even save renders in DPX format, though this is not advised for typical visual eects productions.

LightWave oers RGBA savers for the DPX le format in addition to RGB. However, few packages accept DPX les with an embedded alpha channel at the time of this writing. Do not use one of the RGBA savers unless you know that your destination package can open a DPX with an embedded alpha channel. For most production needs, the RGB savers should suce.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 199

LightWave 11 Features

Interchange Tools
LUT Expansion

For those artists dealing with client-provided LUT les, particularly with DPX sequences, LightWave now loads *.csp les in addition to *.3dl and *.cube les. LUT les can be loaded into the CS tab of the general Options panel of Layout, called with the o shortcut.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 200

MAIN TITLE Shadow SUB-TITLE Catcher

Image KAISERBRAND GbR 2011, Character Design by Johan Potma

LightWave 11 Features

Shadow Catcher Node


About the Shadow Catcher Node
Until now if you wanted to composite 3D elements into a photograph you had to use Front Projection to map an image onto a plane and then endlessly adjust the Luminosity and Diuse levels until your results looked about right, not an ideal workow. In LightWave 11 we have added a new node, called the Shadow Catcher. Not only does it do shadows, but reections too, and makes light work of compositing 3D elements into a backplate.

The process to setting up a composite shot is quite straightforward: Set up the background plate you want to composite the 3D elements onto: Using Background Image (Eects Panel> Compositing tab); Using Textured Environment (Eects Panel> Backdrop tab > Add Environment); or Using Image World (Eects Panel> Backdrop tab > Add Environment) Match the LightWave camera to the one that took the background plate, also match the position of where the real life camera was when it took the plate shot. Model and position the catcher objects that will be receiving shadows or reections so they align with their real life counterparts in the background plate, so 3D elements you composite in the shot interact with the plate by casting shadows and reections onto it. Match the lighting from the original background plate.

Overview of Controls
Shadow Catcher is quite simple to use and only has a few controls. Double clicking on the node will bring up the options window:
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 202

LightWave 11 Features

Shadow Catcher Node

Shadow Color - You have control over the color of the shadows cast to better match them with the original photo. Reection - Sets the amount of reection to show up in the catcher objects. Color - Allows tinting of the reection color Roughness - Shadows arent really aected by rough surfaces, but reections are, they become broken up or blurred on diuse (or rough) surfaces. This setting allows you better match the roughness of the surface youre compositing onto; increasing this value will cause reection blurring, or if you input a procedural texture into the Roughness input, allow breaking up of the resulting reection.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 203

LightWave 11 Features

Shadow Catcher Node


Example: Beach Camaro
Lets take a look at setting up a relatively simple compositing exercise. This beach photograph will provide a useful background plate to composite the car model onto, the sand is wet and provides a perfect example to illustrate the reection catching aspect of the Shadow Catcher node.

Camaro Model Courtesy Elvis Lewis Blazencic (www.lewis.tomsoft.hr)

Setting Up the Background Plate


We rst need to bring in the background plate we want to composite over, well be using the Background Image method. Open up the Eects panel > Compositing tab (Ctrl F7) select (load image) from the Background Image dropdown menu and choose our image.

To help align items with the plate when we start placing objects into our scene, we need to see the background image in the camera view. Open the Options panel > Display tab (d key) and set the Camera View Background to Background Image. Youll need to set the viewport type to Camera to see the eect of this.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 204

LightWave 11 Features

Shadow Catcher Node

Setting Up the Camera


We now need to match the LightWave camera to that of the background photo. The easy way to do this is to use the Real Lens Camera. Select the Camera and bring up the Properties panel (p key). Choose Real Lens Camera from the camera type dropdown (1), then choose (from image) in the camera type dropdown (2), select the image from the Image dropdown (3) and nally change Use fstop to Do not use fstop from the focal distance dropdown (4) as we dont want to use Depth of Field (DOF) because this will also blur the background image which already has DOF in the image.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 205

LightWave 11 Features

Shadow Catcher Node


Matching the Background Image Perspective
Once the background plate and camera settings have been setup, we need to position the LightWave camera in approximately the same location as the camera used to take the photograph so that our 3D objects match the same perspective as the background. Lets start by adding the ground plane object that we will be using to catch the shadows and reections. Go to the Modeler Tools tab > Create group > Geometry dropdown > Ground Plane. Set a size that will encompass the object and any shadows being cast from it, then name the Surface Shadow_Catcher for easy reference in the Surface Editor. You can also choose to save the object to disk during creation - this is important if you want to reload the scene.

LightWave Scenes and Objects are separate les on disk, which means whenever you save in Layout, you need to save the Scene and Objects separately. Saving the Scene will not automatically save objects, or any Layout-created geometry. If you save a Scene and quit LightWave without saving objects too, you will lose any changes to object surfaces or any Layout-created geometry you generated.

Now we have the ground plane created, lets load the object we want to feature in the composite scene. Moving and rotating the camera into the original photos camera position will match the perspective. This part is very much a matter of eyeballing until it looks right.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 206

LightWave 11 Features

Shadow Catcher Node


When taking a photo for use in compositing, you should also note details that will help at the camera matching stage, such as camera settings, height, position from any key items in the photo, time of day, lighting conditions. Additional photos from dierent directions can also be used for reection maps. Our scene now looks like this:

Setting Up the Shadow Catcher Material


The Shadow Catcher works by only shading shadows and reections from other objects in the scene onto surfaces the Shadow Catcher is applied to. Other material properties such as diuse are simply ignored, which is why it gives the illusion of objects being part of the background image. To apply the Shadow Catcher to the ground plane we created, open the Surface Editor (F5) and select the Shadow_Catcher surface we named earlier.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 207

LightWave 11 Features

Shadow Catcher Node

Make sure the checkbox next to Edit Nodes is checked to enable the Node Editor. Click Edit Nodes to open the Node Editor. Navigate to the Materials group in the Nodes list, and double click the Shadow Catcher material to add it to the node workspace. Connect the Material output on the Shadow Catcher node to the Material input on the Surface node. Once connected, open the Shadow Catcher nodes options. If the background image where your object will be placed has a reective surface, here you can set the amount of reection that matches, along with any roughness you judge the ground may have. Were now done setting the ground plane material.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 208

LightWave 11 Features

Shadow Catcher Node


Matching the Lighting
The last stage is to match the lighting and direction of the original background photo in your LightWave Scene. For outdoor scenes like our example, you may want to use a Dome Light rotated to match the direction of the shadows in your photo (the lights position doesnt matter). For sharper shadows use a low Angle for the Dome Light, higher angles result in softer shadows, For very diuse overcast lighting, angles up to 90 may be required. Enabling Radiosity - Render Globals panel > Global Illum tab (Ctrl p) also helps photorealism greatly. When rendered, your object should now look as though it was part of the original photo, as the shadows and reections appear to interact with any shadow catcher objects (ground plane in this example). Note the reection in the wet sand as well as the shadow.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 209

MAIN TITLE SUB-TITLE FiberFX

LightWave 11 Features

FiberFX
About FiberFX
FiberFX is LightWaves native hair and fur system. It has received a great deal of attention leading up to 11.5. Instancing is understood and used by FiberFXs volumetric rendering and multi-threading has been implemented for distribution and ber building, greatly speeding up operations on todays multi-processor machines. Fibers using the new Solid Volume mode can now be textured with nodes and FiberFX now contributes to alpha channels for all render modes. There has also been a complete revamp of its interface and there are many improvements to stability and functionality, which we will detail here.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 211

LightWave 11 Features

FiberFX
Overview of controls

FiberFX-bearing surfaces are now seen in the listview to the left of the interface, making it easier to see at a glance which surfaces have hair and which do not. The checkmarks we can see in the image above show that FiberFX is activated on the DemiBird_V2_Body_v001 object and that it is applied to the Torso surface. The GroundPlane object also has a checkmark, but because no surface name has been selected it is red. If an object only has one surface, the checkmark will be white anyway.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 212

LightWave 11 Features

FiberFX
If you right click on an object you will be presented with a dropdown menu like so:

The options in this menu are as follows: Clone - Creates a clone object that the parameters can be changed on. As an example you make a short white undercoat and the another layer of sparse long guard hairs over them. Save as Default - Saves the current style as the default for FiberFX from now on. Reset Default - Puts the default back to the medium-length brown hair style. Polygonize - Creates a polygon mesh of your hair style. Choosing this option brings up the following interface:

Polygonize has the following parameters: Sides: 1-sided is a single poly chain; 2-sided is at with polys on each side; >2 is an extrusion of n sides. Flatten: attens the tube. Triangles: make tris instead of quads. Billboard: makes crossed polygons suitable for mapping.

Sides: 2, Billboard

Sides: 8, Triangles

Sides: 12, Flatten 76.95 %

Sides: 12
Page 213

Copyright 1990-2013 NewTek, Inc. All rights reserved.

LightWave 11 Features

FiberFX
Polygonize Mixed - Will use the guides on a surface object to make new mixed mesh object with guides attached to the mesh.

Polygonized Mixed generates two-point polygons. There are two ways to keep these two point polygons from showing up in the render. The artist can disable Render Lines in Render Globals to prevent all two-point polygons in the scene from rendering. Alternatively, the artist can set the Particle/ Line Thickness of the object containing two-point polygons to 0.0. Particle/Line Thickness is found under the Edges Tab of Object Properties.

FiberFX Buttons

The rst two lines give you information about your current FiberFX settings and are followed by some general settings for FiberFX. Activate - To add FiberFX to an object, simply select it in the list on the left and click the Activate button. Alternatively you can double click the entry in the list. Deactivate - To remove FiberFX from an object click this button. Edit - This brings up a menu with four options: Copy - Copies all FiberFX settings from an object. Paste - Pastes all copied FiberFX settings. Load - Loads saved settings. Save - Saves settings. Edit Nodes - In common with all other node editors in LightWave there is a checkmark to use or not use any node networks that have been set up. With it checked you will use any node network that has been set up, with it o the only settings that will be used are those set up the main interface.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 214

LightWave 11 Features

FiberFX

The FiberFX nodes provide many opportunities for advanced hair manipulation. In addition to the destination node, there is one FiberFX-specic node, called Fiber Info that will give you all the information about your Fiber setup.

FiberFX
Color - Changes the color of the bers. Use a Fiber V input on a gradient to change colors based on the position along the ber length. Alpha - This scalar input allows you to drive the transparency of bers. Material - This input is for linking with Material nodes. Amplitude - Use this scalar input to change the amount of amplitude of the Vector inputs perturbation. Without any amplitude input 100% of the Vector input will be used, often resulting in harsh changes of direction. Vector - Controls the direction of the ber edge vector. The old and new ber directions are interpolated together by the Amplitude amount. Length - This scalar input controls the length of the ber. Double clicking the FiberFX node presents the user with this window:

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 215

LightWave 11 Features

FiberFX

Local Displacement orients the displacement to be performed along the underlying polygons normal, this mode is useful for creating swirls, as the ripples radiate down the ber. Turning it o uses object space displacement, use this mode for things like elds of waving grass. Nodal First changes the order that the nodes and other eects are evaluated, for instance, if you have gravity set to make the bers droop, it is possible to set the nodes to override the eect of the gravity. The default setting for nodes rst will prevent this.

FiberFX-FiberInfo
Fiber U/V - The position of the evaluation around (U) and down (V) the length of the ber. V starts from 0.0 at the root to 1.0 at the tip. Use this as an input to opacity on a node to control eect strength down the length of your bers. Poly Normal - The normal vector coordinates of the underlying polygon that the ber is growing from. Poly Center Position - The center position of the underlying polygon that the ber is growing from. Oset - The oset position of the ber currently being evaluated. Fiber Tangent - The normal vector of the edge currently being evaluated. Fiber Base Position - Position in local coordinates of the base of each ber currently being evaluated. Fiber Edge Position - Start position in local coordinates of the edge currently being evaluated. Fiber Number - Returns the ber number that is being evaluated. Oset Amt - The oset of each added ber from the parent guide ber. Cluster - Returns the bers Cluster number. Use it to determine if a clustered ber is being evaluated. To Up Right - Transform from polygon coordinates to up right. To Up Up - Transform from polygon coordinates to up up. To Up Forward - Transform from polygon coordinates to up forward.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 216

LightWave 11 Features

FiberFX
From Up Right - Transform from up right to polygon coordinates. From Up Up - Transform from up up to polygon coordinates. From Up Forward - Transform from up forward to polygon coordinates. Double clicking the FiberInfo node presents a window allowing the user to choose which FiberFX object is being used for evaluation:

FiberFXs controls are now divided over four tabs, with subtabs for the Fibers and Rendering tabs.

Fibers

Fibers has three subtabs and it is probably where youll spend most of your time with FiberFX. The subtabs are as follows:

Geometry

Max Fiber Density - Dictates how many bers your surface will have. Max Fiber Density can either be expressed with a number or with a texture. It can also be animated over time using the envelope. Relax - You can relax the ber distribution across your object in a series of iterative steps that will gradually quantize placement making bers more evenly spread. There are 40 levels of relaxation
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 217

LightWave 11 Features

FiberFX
and each one marks an iteration, so setting it immediately to 40 will take some time to show results depending on the quantity of bers to be processed.
Relax: 0 Relax: 40

Cluster - This will place additional copies of the guide ber around the initial ber to increase dynamic responsiveness. Cluster Radius - The radius around the original guide ber that is used for the placement of ber copies. Edit Guides - This allows you to style your hair and save the style as a Vertex Map with the object it is applied to. It will be discussed in detail after the overview of FiberFX functions, starting on page 182. Style - Apply a style created with Edit Guides. Volume Only - This toggle needs to be checked if you would like to see your bers in VPR. By checking it you turn o Fiber Type since that only concerns pixel lter bers, not volume bers. If you do not check Volume Only then Volume Type and End Caps will be ghosted. Fiber Type - Ghosted if you have Volume Only checked. This setting gives you a dropdown menu with four choices. If you polygonize them to make a model they maintain that alignment in the model as well: Thin - This a rasterized antialiased line at a maximum of two pixels thick in screen space. Thick X Align - This creates thicker lines that are rasterized into a buer so they can be drawn as at triangle strips. If you Polygonize them you can convert them into round or attened shapes. The bers are all aligned on the X axis. Thick Y Align - This creates thicker lines that are rasterized into a buer so they can be drawn as at triangle strips. If you Polygonize them you can convert them into round or attened shapes. The bers are all aligned on the Y axis. Thick Camera Align - This creates thicker lines that are rasterized into a buer so they can be drawn as at triangle strips. If you Polygonize them you can convert them into round or attened shapes. The bers are all aligned to face the camera. Thick Random Align - This creates thicker lines that are rasterized into a buer so they can
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 218

LightWave 11 Features

FiberFX
be drawn as at triangle strips. If you Polygonize them you can convert them into round or attened shapes. The bers are all aligned to a random axis. Volume Type - Ghosted if you dont have Volume Only checked. This setting gives you a dropdown menu with two choices: Stroke - Will create a camera-facing 2D shape. Solid - Will create a solid tube. It can be applied to any ber guides. You can generate and style the bers directly within FiberFX using the Edit Guides option, or you can use models set up with the FiberFX tools in Modeler (Fiber Modeler and StrandMaker, both available on the Setup tab in Modeler). Solid mode render bers with 3D volume at render time, in much the same way that Layout treats 2-point poly chains when you assign a negative Particle/Line Thickness for an object.

Pixel Filter: Thin Mode

Pixel Filter: Thick Mode

Volume Only: Stroke Mode

Volume Only: Solid Mode

End Caps - Only available if Volume Only is checked. Presents a dropdown list with a choice between: None - The ends of the Strokes or Solid bers are squared o. Cap Base - The base of each ber is rounded. Cap Tip - The tip of each ber is rounded o. In Stroke mode, you might need to reduce the amount of tip transparency to see the eect, since the default 20% hides the rounding. Cap Both - Both ends are rounded.

LightWave 11 implements an automated switch to Volume Only mode when using PixelFilter mode. PixelFilter rendering mode cannot support transparency, refraction or reection; Volume mode does. Since the two modes now render very similarly, an automated switching capability has been implemented. When any PixelFilter FiberFX items appear behind transparent objects or in reections, Volume Only mode will engage for these areas. For this to occur, the Raytrace Reections/Refractions switches need to be active.

Fiber Width - Sets the thickness of bers. Thinner bers are more transparent and build up density more slowly, whereas thick bers are less transparent and build up density faster. Model scale has
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 219

LightWave 11 Features

FiberFX
an eect on ber width, as does the distance to camera. Fibers further away are smaller in screen space and are more transparent. The percentage is based on human hair which has been measured at 0.017mm to 0.181mm with blond hair being the thinnest and black hair the thickest. At 100% width a ber is calculated using a median value of 0.05mm. Depending on the size of your object you may need to increase or decrease this value for a realistic eect. By default Solid bers have an equal thickness across their length. To vary the thickness, click the T button and select the Gradient Layer Type, then choose Fiber V as the Incoming Parameter and vary the thickness.

Note: In previous versions of FiberFX, changing parameters from root to tip relied on the Fiber U gradient type. With the addition of the new Solid Mode, an additional third dimension was needed. This means any setups using the Fiber U parameter will need to be switched to Fiber V.

Default, Equal Thickness

Modulated Using a Gradient

Edges - This is the geometric resolution of each ber. Fibers are given two by default, but if you have long bers you may need to increase edges in order to smooth the ber and avoid awkward corners rather than bends. Fiber Smooth - This is a subdivision technique for bers at render time so that Edges can remain low and long bers will still bend rather than corner. Since it happens at render time it has little impact on memory while working in Layout. By default Fiber Smooth is set at 2, which will subdivide each ber four times. There are four levels of subdivision each of which doubles the previous level.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 220

LightWave 11 Features

FiberFX

No Fiber Smoothing

Fiber Smoothing Set to 4 (Max)

Note: Setting Fiber Smoothing higher than needed can impact render times. Try incremental settings until you hit the smoothing level you need, rather than maxing it out. Gravity - FiberFX oers a simplied gravity. The default of 140 % approximates earth gravity on human hair. Use Dot - This function uses the dot product of the gravity calculations to make the bers act more like they are hugging the surface to which they are assigned. Dynamic Gravity - If you have applied gravity to your bers, checking Dynamic Gravity will ensure the position of the bers will be animated to always point in an appropriate direction for the movement of the object the bers are assigned to.

Styling

Fiber kink - This setting is only available when Fiber Smooth is set to 1 or above. As ber edges are subdivided, each newly created edge end point can be perturbed. This creates a kinked look to the bers.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 221

LightWave 11 Features

FiberFX
Because subdivision of bers is performed just before the edges are drawn, they are not used in creation of the shadows, as these are created prior to subdivision. As a result, the kinking eect will not be visible in shadows. Splay - This setting controls how far away bers are tipped from each other using the polygon center or guide ber as the basis for splaying the bers. Stray - Random bers can be shorter or longer giving a look where just a few strands of hair stand out from the rest, giving a more natural look. Swirl - Controls how much each ber is twisted, based on a splay center based around the polygon center or the guide ber. Random - Only available when Swirl is not zero, this randomizes the starting rotation of each ber. Swirl Turns - Gives the number of complete revolutions swirls make. Tuft - Progressively shortens bers further away from the center of the polygon or guide ber. Clump - Gathers bers together as though sticky or wet based on polygon center or guide ber. Scale - Gives a length to bers. Scale is based on the size of the object - 100 % long bers on a mammoth built to scale will be a lot longer than similar 100 % bers on a y modeled to scale. Random Length - Randomizes the length of all the hairs on a surface to give more variation. Distinct from Stray because the randomization is applied to all bers. Part Angle - Denes an angle between adjacent guides that cause the bers to follow the nearest guide and not interpolate. This causes parts in the hair style instead of interpolating. The Part Angle will by default be applied to all bers on an object, but can be controlled as in the image below by using a gradient texture applied to a Weight Map or simply a Slope in this case. The Part Angle can be small and still have a large eect since it is based on an examination of the rst segment on the guides and the dot product is used to determine if bers should interpolate or follow the closest guide.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 222

LightWave 11 Features

FiberFX

Bump - This eect perturbs the initial ber direction by simulating a surface bump using the local gradient of the texture. Similar to the Bump Channel in LightWaves Surface Editor. This eect needs a procedural texture or image in the texture channel to be visible. Root Only - Only the root of the ber is used to calculate the bump giving a dierent look to the ber arrangement. Direction Bias - This setting becomes available when the object with bers has a Bias Vertex Map created with Modelers FiberFX interface. It determines the ratio between the settings for the bers in the window and those contained in the VMap concerning direction. Bias VMap - Presents a dropdown from which you can choose a Bias Vertex Map.

Bundle

The Bundle tab is only for a single polygon guide for bers, any other object will ghost the settings on this tab. The polygon guide should consist of a chain of two-point polygons with at least four points along the chain. The quantity of bers in the bundle is decided on the Geometry tab and then options are applied here. Bundle - This presents a dropdown with three options as follows: None - Removes all bundles of bers.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 223

LightWave 11 Features

FiberFX
Twist - Creates a twist of bers based on the Count eld. Braid - Creates a plait of bers. You arent limited to a Count of three for this however setting the Count eld to two will result in exactly the same result as using Twist. Count - Determines how many bundles of bers are going to be created. Strength - Sets how tightly the Twist or Braid will be applied to the bers. Higher values lead to an increase in turns involved for the full length of the bers, which will always extend the full length of the guide. Spread - The radius of the circle the braided or twisted bers make. A gradient can be used to reduce the size of the circle as the bers grow. Twist - While Strength dictates how the bundles as a group are twisted, Twist twists each individual bundle in the count.

Rendering
This tab and subtabs is where you will set up how your bers look when rendered.

Color

This tab is where you control the base color of your rendered bers. At the top of this tab is a dropdown menu where you choose the type of texturing you wish to use. There are two modes for coloring bers, Mixed (default) and Textured. Mixed - This color mode blends between two ber colors (each with a dierent root and tip color). You can also set the amount each color inuences the overall ber color. At 0% Base / Tip Color 1 will be the predominant color, at 100% Base / Tip Color 2 will be the predominant color. Blend - When Blend is checked, the color values themselves are actually mixed, as opposed to just the quantity of bers using those colors.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 224

LightWave 11 Features

FiberFX
Highlight - This setting randomizes ber shading by choosing lighter and darker values based on the original base colors used. The percentage determines how dierent the light or dark values are from the original colors. Textured - When this mode is selected you will be left with only one Color setting. Unlike Mixed color mode, all your bers will be the same color. However, you can now also use the standard LightWave 3D texture editor to color your bers, this oers many options for texturing your bers.

Texture Mapping Solid Fibers


All the previous controls for shading are available for Solid bers, however if you enable the Node Editor youll notice that the Color and Shading controls are ghosted out. This is because they no longer apply as all texturing will now be done in the Node Editor.

Nodal UV Mapping
When using the Node Editor, you can access the automatically created UV maps for the Solid bers. To utilize the UV map youll need to add the following nodes:

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 225

LightWave 11 Features

FiberFX

The FiberFX-FiberInfoNode is where you can access all the information about the bers that FiberFX outputs. Add an Image node and connect the Fiber U and Fiber V from the FiberFX-FiberInfoNode to the U Oset and V Oset inputs on the Image node. Next add a Standard material node and connect the Color output from the Image node to the Color input on the Standard material node, and nally connect the Material output on the Standard material node to the Material input on the FiberFX node. The last step is to choose an image in the Image node to map along the bers UV, but importantly, set the texture scale to 0, 0, 0. Leave the projection at its default of Z planar, you cannot change the image scale if you use UV projection. Without setting the scale like this, your texture will not be mapped correctly. The reason is outlined in the tip below.

Because the Solid ber geometry is virtual (created at render time) we need to use a clever trick to drive the UV lookups directly. By setting the texture map scale to 0, 0, 0 in the Image node we can feed the UV inputs for the texture with FiberFX-FiberInfo nodes UV outputs, bypassing the internal UV mapping mode

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 226

LightWave 11 Features

FiberFX

Shading

Now that the basic color of your bers has been managed, its now time to turn to the nitty-gritty of texturing. Almost all of the following settings can be enveloped and a texture applied, it will be noted when this is not appropriate.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 227

LightWave 11 Features

FiberFX
Diuse - Determines how much your bers react to the diuse setting on lights. Essentially simulating the scattering of light over the ber surface (not to be confused with sub-surface scattering). The higher the percentage the brighter overall your bers will look. Specular / Specular Color - Controls how much your bers will react to specular settings on lights. As with other specularity settings in LightWave this is the simulation of lights being reected on your bers. Higher values will increase the intensity of this eect. You can also specify the color of the specular highlights using the Specular Color picker. Gloss - In order to see the eect of the gloss setting, you must have Specular above 0%. Much like the gloss setting in the surface editor, the gloss setting controls the spread of the specular highlights on your bers. This setting works slightly dierently however. At 0% gloss is o, once over 0%, low values result in a broader spread of your specular highlights, as the percentage goes higher the spread then becomes narrower. In the examples below, a specular value of 200% was also used. Luminosity - Another similar acting surface editor setting. Luminosity controls how bright or selfilluminating your bers look, higher percentages mean brighter bers. They dont actually emit any light though. Ambient - Controls how much ambient light aects your bers. In order to see any changes, your scene must have Ambient Intensity in your Light Properties panel above 0%. Higher percentages mean your bers receive more ambient light, and therefore look brighter as a result. In the examples below Diuse was set to 50%, Specular 100% and Ambient Intensity 50% to better see the eect. This is a setting that has no T for texture editor access. Tip Transparency - Tip Transparency controls at what percentage along your bers length (starting from the root) your bers start to have transparency down to 0% at the ends, eectively fading them out. 0% means your bers have no transparency, and so will appear solid right to the tips. 50% would mean that at 50% along your bers, they start to fade out until they reach 100% transparent at the tips. Makes hair look thick (0%) or ne and y-away (100%). In the examples below Diuse was set to 75% and Specular 100% to better see the eect. Translucency - Translucency is only really apparent with lights placed behind the subject. Higher translucency settings give the impression of more light passing through the bers making them lighter. This eects the outer edges of your bers more than the main body. In the examples below Diuse was set to 75% and Specular 100% to better see the eect (more noticeable down the right hand side). Cuticle Tilt Root <> Tip - This setting only works when the Specular setting is above 0% as it controls the position of the specular highlight on the bers. At 0% the specular highlight is where it naturally lies when light hits it, negative values pull the highlights towards the roots, whereas higher, positive values push the highlights away from the roots and towards the tips. Think of it as a manual override for where specular highlights hit your bers. In the examples
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 228

LightWave 11 Features

FiberFX
below Diuse was set to 75%, Specular 100% and Gloss 5% to better see the eect. This is a setting that has no Envelope or Texture editor access. Secondary Gloss / Cuticle Tilt 2 Root <> Tip - This is only available if Secondary Gloss is set to more than 0 %. Simulates the secondary gloss or shine bers display (mainly hair) when light is bounced around inside the bers as a result of being naturally translucent (not linked to Translucency setting). Works the same way as the rst Gloss setting. Cuticle Tilt 2 controls the position of the secondary gloss in the same way Cuticle Tilt controls the rst Gloss setting. This is a setting that has no Envelope or Texture editor access. Pigment - This chooses the tint you want to use for the Secondary Gloss. It is only available if Secondary Gloss is set to more than 0 %. Reections - You can choose to turn o using bers in reections if you wish to speed up rendering and save memory when their presence is not essential to the image you are working on. Radiosity - You can choose to turn o using the scenes radiosity to light the bers unless necessary for your shot to save memory and time.

Shadow

This tab contains the controls for tailoring the look of the shadowing of your bers. FiberFX uses LightWaves Volumetric system for creating shadows by creating Voxel objects along the ber length. Each voxel contains the bers opacity at that point, which means unlike standard LightWave 3D Shadow Maps, the shadows from bers can be opaque or solid where the ber density changes. Shadow Maps also require a Spotlight, whereas FiberFX can use any LightWave light, and only needs to create one shadow structure for all lights in the scene, whereas Shadow Maps require this process to be completed for each light using shadow maps. To globally toggle shadows on/o, use the Volumetric Shadows button on this tab. There are two settings for how much bers cast shadows on themselves and how much on other items in the scene. These settings are the same for the dierent shadow types detailed below. Setting the values low will result in less dense shadowing making the bers look thinner while high values leads to darker shadows and an appearance of thicker bers. Both values can be enveloped
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 229

LightWave 11 Features

FiberFX
over time. Setting Cast Shadows to 0 % will remove shadowing from the bers on an object, but not the objects shadow. To do so you need to turn o Cast Shadows on the Object Properties Render tab.

Shadow Type
Interpolate - These are the fastest shadows to render. Ray Trace - These are the slowest, but also the most accurate. Point Sample - This is a middle road allowing you control over the amount of detail you want Sample Radius - Sample Radius is only available when you use the Point Sample method of shadow generation and refers to the size of the sample area used for creating shadows. The smaller the radius, the more detail the shadows have and thus the slower the render. Multi-Sample - This produces multiple shadow samples randomized on a hemisphere about the Light direction. Shadows are smoothed by the samples but more rays are cast and thus rendertimes go up. Shadow Depth - This controls the shadow quality. Shadows are created by subdividing the ber object into many small voxel boxes. The density of each little box is measured and used to create the shadows. Lower values result in coarser, less accurate, shadows that will render faster. Higher values mean smoother, more accurate shadows, but slower rendering. A value of 16 works well for most setups.

Output

The options on this tab are not available in Volume Only mode. They are intended for use with nal F9 and F10 renders. Both save images consisting only of the hair in the scene so that it can be better composited using a more complex image pipeline than simply taking the render as it comes. Be sure to save RGBA les in a format type that supports an alpha channel and Z Depth les in a oating point format. When these options are used, bers will not be drawn into the image lter buer.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 230

LightWave 11 Features

FiberFX
Options

Before Volume Render - Runs the pixel lter and sets the depth buer before any volumetric plugins. This allows volumetric eects like LightWaves HyperVoxels to contribute to the FiberFX depth buer. Cull Angle - To speed up the OpenGL display of bers, this setting eliminates bers early in the drawing stage that would be behind the object and not be drawn. At 100% bers beyond the objects prole edge will be culled, at 0% no bers are culled. Fade Angle - This is the angle the bers fade out over. Tweak this value to have long back facing bers fade gradually instead of just disappearing from the OpenGL view. Scene Edge Limit - Sets the maximum number of ber edges drawn in OpenGL. The higher the number the more bers will be visible at the expense of slower OpenGL responsiveness.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 231

LightWave 11 Features

FiberFX
Edit Guides
FiberFX allows styling of ber guides directly within the LightWave Layout OpenGL viewport using Edit Guides. The tools presented in this window are intuitive to use and allow more natural styling of bers than using just the basic parameters found in the Geometry and Styling tabs of the main FiberFX window.

Fibers should be edited (using Edit Guides) in their undeformed state. Combing bers must be done before any deformation is applied, and before they are parented, moved or rotated in space. Disabling Deformation, IK and Motion Controllers is a must. To bring up the styling tools click the Edit Guides button on the Geometry tab of the main FiberFX interface. Once clicked, the main FiberFX interface will be hidden and you will be presented with a window asking you to name the style you are about to create. If you have already created a style and have it selected in the dropdown below the Edit Guides button you will immediately enter Edit Guides where you can make changes. If you wish to create a new style, set your Style to None. When using the Edit Guides window individual bers become hidden and the guides that control them are shown instead, these are what you will be styling. Its worth noting at this point that when you begin styling your guides the Edges setting in the Geometry tab locks, so either make sure you have edges set to what you want before styling, or save a before styling version of the scene to preserve the ability to edit edges. You can also set your style to None and your Edges setting will unlock again allowing you to recreate the style from scratch.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 232

LightWave 11 Features

FiberFX
As soon as you click your left mouse button in an OpenGL viewport with this window open you will see two circles for your mouse pointer. The inner circle determines the strength of your brush, the outer the size. These values can be changed numerically in the Edit Guides window, or using the right mouse button interactively in the viewport. RMB up/down controls brush radius, while RMB left/right controls brush strength. This applies whichever of the three Brush Modes you choose to use. The three brush modes are as follows: Radius - This is an airbrush-like manipulation of the guides on your object. Global - This aects all guides equally, your brush radius has no eect here, but the strength does. Surface Hug - This works similarly to Radius mode but attempts to keep to the surface of your object. The are four brush types as follows: Push - This combs the guides in the direction you drag the mouse over them. The amount it drags them depends on the strength of your brush. Scale - You cannot interactively change the radius and strength of your brush when in this type since clicking on the left mouse button grows the hair inside the radius of the brush, right clicking shrinks the same hairs. Straighten - This will unbend your bers the longer you leave your mouse button held down until they are back in their initial direction of the normal of the polygon they are on. Single - A special-use type, this allows you to manipulate a single guide, for instance to create a kiss curl on the forehead. Brush Depth - Because styling in most often done in a Perspective viewport sometimes you dont want to aect bers that are seemingly within the brushes radius but are actually on the ther side of the shape you are styling. Using Brush Depth will enable you to control just how deep into the screen the brush goes. Symmetry Axis - You can brush symmetrically on your object using these buttons and a plane will appear bisecting your object perpendicular to the plane you choose. Also a single circle shows the bers you are aecting on the opposite side of the symmetry axis. History - The Checkmark with On written on it is to enable or disable the keeping of a history of steps performed in the Edit Guides window and can be turned o to save memory. The history is only kept during the session using Edit Guides, not between sessions. Revert - This reverts the style back to what it was when you opened the Edit Guides window initially and functions regardless of the state of the History On/O Checkmark. Reset Default - This button takes the style back to its original, default state. Be warned that there is no undo for using this function.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 233

LightWave 11 Features

FiberFX
Style settings
Style dropdown - Allows you to choose between the dierent styles applied to your bers. New - Creates a new style based on the one you were previously editing. Remove - Deletes the currently selected style from your bers.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 234

MAIN TITLE
SUB-TITLE

Genoma

LightWave 11 Features

Genoma

Modeling by Khalid Al Muharraqi, rig by Lino Grandi with Genoma

Introduction
Genoma introduces a new way to rig your characters that is fast, exible and intuitive. With its system of preset rigs and rig parts, people new to rigging can avoid the hours and even days it can take to get a usable result and users who are already expert riggers can benet from the time saved by quickly creating the base rig to expand on and being able to save to the Genoma preset library for future use. In contrast with traditional autorigging systems, Genoma is fully extensible. If the built-in biped isnt enough for your multi-armed warrior priest, you can start with the basic biped and add all the extra arms you require. Genoma takes advantage of all of Modelers tools to shape and reshape the rig to suit your needs and has none of the limitations associated with Skelegons of old - such as orientation. Associating weight maps has been made easier and the controls for Genoma rigs in Layout make animation easier too. Genoma is a system that embeds additional information into skelegons to allow them to be converted to more than just a set of FK-controlled bones in Layout. Rig information is stored in the object le and custom rigs can be created, modied and saved in the proper folder as Presets, so they can be recalled any time they are needed.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 236

LightWave 11 Features

Genoma
Genoma is designed to remove the need to deal with the complexity that rigging normally entails while permitting extension and exploration. For the rst time, the user doesnt need to delve into the bones of their creation. The aim with Genoma is to give the user the power to create intuitive controls for their characters and let Genoma worry about how to perform the actions requested of the rig. In short, Genoma could be the starting point for an expert rigger who wishes to add more control to their rig and a destination for a user keen to animate without having to learn rigging rst.

Genoma Presets
Presets are the heart of Genoma. They can be added to so you can build up a library of reusable rig parts or even complete rigs to suit your needs. Opening the Genoma Presets window presents you with two main groups: Complex Rigs and Rig Parts. Complex Rigs are complete rig setups for bipeds, quadrupeds and insects. Rig Parts are where things get interesting since their Atomic structure allows you to mix and match elements to build your own rigs, or expand on those that already provided.

Atomic Element (SubRigs)


Unlike normal skelegons where every skelegon is an independent entity that can be detached or removed, Genoma subrigs can consist of multiple skelegons dependent on each other. Each one is required to correctly convert the subrig, and removing any skelegon in that subrig carries the risk of breaking the rig. As a result, while individual skelegons not used for Genoma are normally atomic elements, a Genoma atom can consist of multiple, inseparable skelegons.

Connectors
Connectors are special types of Genoma skelegon that serve as weld targets. They can be thought of as an input port to which things can be attached. Any time two or more subrigs are attached (welded) to one another, a connector must be used between them.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 237

LightWave 11 Features

Genoma

The two orange connectors in this picture of the wrist part of a rig should never be deleted. The four Magenta connectors can all be safely deleted to separate parts of a rig from each other.

Orange connectors should never be detached or removed. Connectors added by the user are generally colored Magenta. Use the Color Wireframe viewport display mode to be able to see the dierent colors of the Genoma items.

Root

If you want to start your rig from scratch, begin with a Root. This will be your characters Center of Gravity (CoG). When converted in Layout, the roots green box will be converted to provide a controller to enable you to position your character.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 238

LightWave 11 Features

Genoma
Active and Passive Connectors

In Modeler there are two types of Connector that can be added to rigs. The Active button creates connectors that have a bone strength of 100% and will deform your mesh while the Passive button creates connectors with a bone strength of 0%.

FK Controls

All controllers with the same number but a dierent sux are identical in use, just with a dierent appearance to better suit dierent parts of your model.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 239

LightWave 11 Features

Genoma
Pitch Alignment and Control Size Elements

The Pitch Alignment Element and the Control Size Element. Their respective control points are selected.

The green arrow-shaped elements let the user dene the Pitch direction of the bone once the rig is created in Layout. Not every Subrig needs this kind of control. For example IK Chain alignment is automatically calculated by Genoma. Forward Kinematics subrigs with a Green element may need orientation by the user. Some Subrigs present a Green box, that can be used to dene the size of the controls that will be created in Layout by Genoma. When the Box is not present, it means that the size of any control for that SubRig will be automatically calculated.

Parenters

A Parenter is seen as a red line coming from a rig part. Here in the left image we can see the human_head_02 subrig and in the right a close up on the eye part of the rig showing the red line marking a Parenter. The single point at the end of the Parenter is selected for better visibility. To parent the eye control to another element on the rig, you just need to weld this point to the tip of another connector so that moving that connector will also control the eyes in this case. Parenters are available on other subrigs for a variety of dierent purposes.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 240

LightWave 11 Features

Genoma
Spines

There are several dierent spine rigs in this category, the only dierence between them is the number of bones in each.

Spline Control

New to LightWave 11.6 to go with the Spline Control feature is a subrig Spline Control part. It can be found in the Genoma Presets under Rig Parts/04_Spines. There are two versions. Spline Control 01 - independent controls, no rotation apart from bank. Great for individually animating the controls, not so good if you wish to animated multiple controls at once, such as rolling up a tentacle for instance. Spline Control 02 - The controls are in a hierarchy, with rotation controls in addition to the move controls present in the rst version.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 241

LightWave 11 Features

Genoma

By default, both rig parts present four controls and 12 bones. By selecting just the Settings section of the subrig and choosing Rename Skelegons from the Setup tab you can adjust these numbers as you choose. For animating along a spline you should select Spline_bone_1 and only change its Z position. You can also select all the bones in the spline and change them from Linear Distance to Fit to Spline in the Bones Motion Options panel if youd rather have a spline-based object to animate.

Example: Animating a rollercoaster train

1) Weve made a subdivided box and beveled the top to make a simple rollercoaster train. We added a Genoma SplineControl_1 subrig and sent the object to Layout, where we created the Genoma rig. 2) Stretching out the four control nodes, we use the Bank control (RMB) to tip some into the curves we have created. 3) Going to a frame at the end of the scene, selecting Spline_bone_1 and moving along the Z axis will animate the passage of the rollercoaster train along the spline.

Example: Animating an Octopus tentacle

1) Kept the same box, but removed the bevels and added tentacle suckers. Used the Genoma SplineControl_2 subrig and elected the Settings part
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 242

LightWave 11 Features

Genoma
of the Genoma subrig and hit Rename Skelegon. Changed the quantity for controls from 4 to 6, and the number of bones from 12 to 24. 2) Sent to Layout and Created rig on the Setup tab in the Genoma section. 3) Selected all the Genoma Rotate controls and gave them a twist to curl our tentacle nicely.

Arms, Legs and Hands

Arm_02 has a controller that can be sized and placed. Leg_Foot_01 is a bipedal leg suitable for a human character and Right_Hand_01 has one control for each nger. Using the Right mouse button will curl the ngers.

They are several choices for each of these elements. Arms: Arm_01 - The user cannot choose the size or position of the controls and the Pole Vector follows the IK Controllers movement. Arm_02 - The user can choose a size and placement of the controller and the Pole Vector is independent from IK Controller movement. Arm_simple_01 - The simplest Genoma arm rig. No control sizing, no shoulder or wrist twist. Arm_simple_02 - Like Arm_simple_01 but with its Pole Vector reacting to IK controller movement. Legs: Insect_Leg_01 - Simple insect leg subrig. The user cannot choose the size or position of the controls and the Pole Vector follows the IK Controllers movement. Insect_Leg_02 - Additional segment and Pitch Alignment and Control size are available. It also has an additional FK control. Leg_Foot_01 - A humanoid leg with reverse foot. Quadruped_leg_01 - Creates the hind leg of a quadruped animal. Three_part_leg_01 - A generic three-segment IK element that can be used for many purposes. Hands: Finger_01 - An additional nger to add to a hand subrig or act as a horn or similar for your character. This nger has one control to curl or uncurl the nger. Finger_02 has a control per joint. Left_hand_01 - Creates a ve-ngered hand with one control per nger for curling and uncurling (using the right mouse button). There is a matching right hand.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 243

LightWave 11 Features

Genoma
Left_hand_02 - Creates a ve-ngered hand with three controls per nger for curling and uncurling. There is a matching right hand.

Heads

There are two head rigs included in the Genoma Presets in 11.5. The rst (human_head_01) has the green Pitch Alignment and Control Size elements for several parts of the subrig. The second subrig (pictured) also has a Parenter for the eyes.

Muscles and Targets


This group contains muscles, targets and tendons. Muscles and Tendons are related so well describe those rst.

Muscles
There are two Muscle subrigs. Muscle_01 creates a single bone in Layout where Muscle_02 creates two bones. The eect they have is best shown by this simple example.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 244

LightWave 11 Features

Genoma

We have modeled a simple subdivided cylinder (01). To that we add a connector_01 to each end (02). Next we add Muscle_01, as can be seen it needs scaling up (03) . When scaled appropriately, weld the points shown to attach the connectors to the muscle (04). 05 and 06 show the muscle stretching and squashing the cylinder. As can be seen in image 04, there is a parenter that can drive the muscle through another are of the rig.

Tendons
Again there are two tendon subrigs, once with a single bone and one with two. The two-bone tendon makes even more sense than the two-bone muscle since it can have its two Parenters aligned to separate parts of the rig giving a nice twist to the tendon.

The steps for adding a Tendon to this cylinder are identical to the muscle placement, but the dierence is that a tendon doesnt have the bulge or stretch of a muscle as shown by images 05 and 06.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 245

LightWave 11 Features

Genoma
Target Controls

A variety of single eyeball or eyeball pair subrigs, with and without Parenters.

Overview
There are two short sections in the Setup menu in Modeler and Layout for Genoma. For Modeler there are three menu items:

Genoma Presets - This opens a window with a set of premade rigs and rig parts to enable you to swiftly create your own customized rig. There are two buttons at the top of the window that are available if you open the Genoma Presets window with a connector already selected: Align - This will align the new connector with your existing rig. If you untick it the Genoma Presets window will show you what you will get instead. Merge Results - If you untick this option, the new subrig element you add from the Genoma Presets window will not be attache to your existing rig. Connector Group - There are two commands in this group, Passive and Active. Both create connectors to extend your rig, but before you create a connector you need to select two points on your geometry - the base of one part of the rig with the top of another part. Clicking Active
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 246

LightWave 11 Features

Genoma
will now place a Genoma Connector between the two points you selected with a bone strength of 100%. Clicking Passive will create a connector not designed to aect the mesh that has a bone strength of 0%. In Layout there are two commands for Genoma in the Setup tab.. Create Rig - This takes the rig you have created in Modeler and converts it into an IK/FK skeleton. Your OpenGL viewport should be switched to Bounding Box before you click this button. Update Rig - If you realise that some deformation is ugly or you need more exibility in a body part, you can edit your rig in Modeler and then update it here. Existing animation will be lost.

Editing
In general any Modeler tool can be used to edit the Genoma Rigs. That makes adapting a preexisting Genoma Preset to any character mesh fast and easy using tools that are familiar to the LightWave user such as Move, Rotate, Drag, Mirror and so on. It is possible to Copy and Paste Subrigs without problem. Select a subrig starting with the magenta connector to ensure that you are selecting the atomic elements that make up the subrig.

Some general rules that have to be followed: 1) Never break a SubRig. None of its parts can be deleted or detached. 2) Use Connectors to attach dierent SubRigs. All SubRig elements have a Connector that can be used just for this. 3) You can weld the tip of any Connector to the Base of any SubRig. Or the tip of any Connector to the base of a new Connector. 4) You can attach more than one Connector to the tip of another Connector. 5) You can attach more than one SubRig to the tip of any Connector, just be sure to use the Base of the SubRigs. 6) You can tell the Base of any SubRig from its color (normally Blue).

Creating Presets
Building your own Genoma presets is a simple operation. Build your rig as you need and save the object. Move the resulting LWO le into the LightWave/support/Genoma/rigs folder structure.

To hide everything except your mesh in Layout, create a selection set of all the items in the scene apart from the mesh and then you can hide or show that selection set easily. Selection sets will stop working if you update your rig, so do not create a selection set until the rig is nished and you start animating.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 247

LightWave 11 Features

Genoma

Example: Rigging the Cube


Darkside Animation has provided a cute little character for this example. As you can see it wont exactly t one of the preset rigs - it has no spine or separate head and the limbs are somewhat outsized. The only solution is to build a new Genoma rig from scratch. To avoid that this tutorial spans 100 pages on its own you will need to pay careful attention to the images accompanying it. The eyes and brows are using Endomorphs for their animation so we wont be covering how to do those. This character is provided in the content in both rigged and unrigged versions for you to play with.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 248

LightWave 11 Features

Genoma
Step 1: Starting the rig
We have the geometry in Layer 1 and well rig on Layer 2. To begin any rig with Genoma you need a root to indicate the center of gravity (CoG) of your character. Add Genoma Presets > Rig Parts > 02_Roots > Root_01. Put it in the center of your cube as shown (01).

With the Root still selected, return to the Genoma Presets window and choose Genoma Presets > Rig Parts > 01_connectors > connector_05. This will be welded to the end of your Root (02). The four arms of this quad connector are going to serve as head, shoulders and pelvis. Were going to take a moment to shift all those components into place. To do so, make sure Symmetry is engaged and use Drag to pull the end of the right shoulder into place. The pelvis needs to be at the bottom of the cube between the legs and the head can be moved upwards a little (we arent going to use it in this example) (03).

We also want the Root to be more easily accessible, so select the points shown and pull them out of the back of the character (04). To scale the green box, which will be the controller itself, just deselect the arrow point and pull to make the box bigger (05).

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 249

LightWave 11 Features

Genoma

Step 2: The arms and hands


Switch to Polygon mode and select the magenta shoulder connectors. Now choose Genoma Presets > Rig Parts > 05_arms > arm_02. This should bring in an arm on each shoulder (06). Now you need to switch between Point and Polygon modes and move and drag the parts of the arm rig into place so that it matches the geometry (07). When in Point mode get used to using the right mouse button lasso to select the general area you wish to work on since Genoma will have several parts that should all be moved/rotated together.

Switch back to Polygon mode, turn o Symmetry and select the connector that comes out of the right wrist. Choose Genoma Presets > Rig Parts > 07_hands > right_hand_01. This will weld a hand to the wrist but there are two problems with the preset hand for this character. The rst is orientation, the second is two ngers too many. Re-orient the hand until it looks like (08). Now we need to ditch two ngers so select the outer two down to their magenta connectors (09).

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 250

LightWave 11 Features

Genoma

Then you need to reshape the remaining ngers so they t the geometry nicely (10). Thats tted the right hand now. Because of the way Genoma works, all we need do is select the right hand up to the pink connector and mirror. Just weld the left-hand magenta connector to the end of the left arm and were good to go.

Step 3: The Legs and Feet


To add legs and feet to our character we add a connector to our pelvis. Select the pelvis connector and choose Genoma Presets > Rig Parts > 01_connectors > connector_02 (11). Using Symmetry move the ends of the connectors into place over the middle of the legs and go to the Genoma Presets window again. This time, choose Genoma Presets > Rig Parts > 06_legs > leg_ foot_01. The legs will come in horizontally, but make sure Symmetry is still on and rotate them into position. You will need to do some massaging to get the joints into position and ll out the foot (12).

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 251

LightWave 11 Features

Genoma

Step 4: Moving to Layout


The rig is now done and almost ready to send to Layout. There are a couple of steps to perform rst in Modeler to make sure everything works. First weighting. Weight maps have already been created for the model, so assign the parts of the rig that make up each arm, each leg and each nger using the updated Set Skelegon Weight tool. You should then select the parts of the rig that are in the cube itself and assign them the ROOT weight map. Lastly, Genoma requires that your model only contains one layer and that the bones-to-be are in it with the geometry so cut the rig from the layer its on and paste it into the same layer as the geometry. Now we send our object to Layout. Normally it is recommended to change the display mode to Bounding Box to speed up the conversion of a rig to bones, but because our sugar cube is very simple you can go ahead as it is. Go into the Setup tab and hit Create Rig in the Genoma section. After a moment, during which messages about cyclic dependencies will appear that are nothing to worry about, you will get the following message:

You can now test how your character deforms and moves. Use the controllers that appear on your character, dont try to use individual bones. If you need to change something, revisit Modeler and make your changes. When you are satised return to Layout and use Update Rig. Any animation you have applied to the rig will be lost as the rig is remade, so deformation should be thoroughly checked before you start animating in earnest. Once the rig is to your satisfaction, a suggestion is to use the object picker to lter out everything that isnt the model.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 252

MAIN TITLE
SUB-TITLE

Modeler

LightWave 11 Features

Modeler
Introduction
The default layout of Modelers user interface has changed slightly in 11.5 to make better use of space in the interface. The Points, Edges and Polygons buttons that have been at the bottom of the UI for so long have been moved to the Top menu to allow for the Modes dropdown menu to be expanded as separate Action Center buttons to make them easier to access.

If you used the Statistics button, its still available from the Windows menu in the Top menu, or the shortcut w. The Info window is in the same menu or available with the i shortcut as before.

Lasso and Paint Selection Acceleration


In 11.6 major refactoring has been taking place to speed up everyday operations like selection on large models. With multimillion polygon models selecting with a lasso can reach up to 50x faster.

New Tools
Modeler sees new functionality and architectural changes that allow increased interactivity for tools and more rapid tool development. 11.5 introduces several new tools for Modeler showing this systems power and lays the groundwork for future rst- and third-party modeling tool development. All these new tools work on multiple layers and with Symmetry and share the same controls where appropriate:

Measure Amount - Clicking the button marked Measure Amount in one of the new tools Numeric window and the Numeric window will change to show a Line Start and Line End set of coordinates and you can pick a length using snapping to align with an object in the viewport, or even in a background layer.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 254

LightWave 11 Features

Modeler

Help text - Whichever viewport your mouse is over now has the possibility of having a help text oating over it. This feature can be turned on or o in the Numeric panel and the state is remembered between tools.

Render Modes - A high-polygon mesh can slow Modelers performance, but the new Render Mode choice sidesteps the problem and oers more uid viewport updates even for high resolution meshes. There are three choices of Render Mode: Normal - Modelers standard speed of redraw. Fast Preview - Fast Preview attempts to do everything that Modelers mesh system can do, only faster. The set of behaviors replicated in Fast Preview is not yet complete, but as new functions are added tools will automatically gain access to them. Fast Deformation - The fast deformation mode bypasses dealing with smoothing angles and surfaces. For organic modeling where smoothing angle isnt so important, you can get something on the order of a 3x or 4x speed boost compared to fast preview, which is fast already. Uniform Input Handling - Where appropriate, all new tools can use either two clicks to select either end of a line, or a click-drag motion. This makes manipulating the view of your object while using a tool possible. Shift constrains the line to the normal of the polygon you have initially clicked on.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 255

LightWave 11 Features

Modeler
Snapping - Snapping to various elements is available to all the new tools where appropriate. The snaps panel overlay in the viewport allows the user to enable or disable snapping to the following items.

Pre-selection highlighting - All of the new tools share pre-selection highlighting where it make sense. This makes it much easier to see whether your click will select a point, edge or polygon. Nudging - Depending on the tool chosen you can nudge using buttons in the numeric panel, or the keyboard cursor keys for Up, Down, Left, Right and Page Up, Page Down keys for in and out. In the Numeric panel you can also change the Nudge amount.

Line Pen
Create > Polygons > Line Pen - Line Pen is a polygonal sketching tool. If you use it to create interconnected lines, it will create a two-point poly chain, useful for hair guides and dynamics. If you connect lines to make closed shapes, Line Pen will create polygons. If you have existing polygons and draw additional lines attached to them, Line Pen will make those lines into polygons too.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 256

LightWave 11 Features

Modeler

Lines do not have to be sketched in a void. You can draw on existing polygons and holding Shift as you draw allows you to draw out from the normal of the polygon you are drawing on. Holding Ctrl will constrain the lines to an axis, in common with other Modeler tools.

Heat Shrink
Modify > Transform > Heat Shrink - Conforms polygonal geometry to a background object by a desired amount. You can completely transform your foreground geometry to match the background object, or some way in-between. Our example shows the Mangalorian head surrounded by a level 6 tessellated sphere and Heat Shrink applied.

There are several controls for Heat Shrink as follows: Amount - How much you want to apply the geometry of your object to the object covering it. In our example, how much the sphere adapts to the statues form. The Amount can go into the
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 257

LightWave 11 Features

Modeler
Negative allowing you expand a shape to ll a space rather than just shrinking to t. Oset - How far away from the underlying object the foreground object is wrapped. Giving some Oset allows a lower polygon count object to better conform to a higher polygon underlying object. Mode - There are six options presented here: X - Depending on the Sense chosen will start conforming the foreground to the background from the left, right or both sides. The Amount determines how much of the foreground conforms to the background object. Y - Depending on the Sense chosen will start conforming the foreground to the background from the top, bottom or both sides. The Amount determines how much of the foreground conforms to the background object. Z - Depending on the Sense chosen will start conforming the foreground to the background from the front, back or both sides. The Amount determines how much of the foreground conforms to the background object. Normals - Pushes the points along the mesh normal until they hit something. Sphere - Pushes the points toward or away from a central point until they hit something. Closest Point - Each point looks for the closest point in the background and moves toward it. Sense has no eect with this mode. Sense - The Sense options determine from which direction Heat Shrinks starts conforming: + - Heat Shrink starts from the Positive side of the axis. - - Heat Shrink starts from the Negative side of the axis. Both Sides - Heat Shrink starts from both sides of the axis.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 258

LightWave 11 Features

Modeler
Example: Protecting our Alien Emissary with Heat Shrink
Because we dont want anyone to pierce our alien emissarys secret identity when crime ghting we will create a mask for her with Heat Shrink so no-one will recognize her. 1) Weve loaded the Alien Emissary model found in the LightWave content, but shes too recognisable. Lets use Heat Shrink to help with that.

2) With the emissary in the background, well make a simple eye mask for her. This is just a subdivided polygon with holes for her eyes.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 259

LightWave 11 Features

Modeler
3) Weve set the Mode to Z because our model is facing +Z and weve changed the Sense to - to make the mask go in the opposite direction. Weve added a bit of Thickness to stand it o a little from her skin.

4) Weve subpatched and used the Thicken tool to give our mask a bit more form. Now shes completely unrecognizable.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 260

LightWave 11 Features

Modeler
Align
Modify > Translate > Align... > Align - This tool requires a selection and two clicks on two normals. These normals can be from the vertex, edge center, or polygon center. The Align tool will try to move and rotate selected geometry in such a way that the normal of the rst click would face the normal of the second click. To use the Align tool, rst activate the tool. Click on the point, edge center or polygon center of the selected geometry that you wish to align, then click on the point, edge center or polygon center that represents the target normal on the unselected geometry. All selected geometry will move so that the rst normal shares the same root as the target normal, and this geometry will also rotate so that it faces the opposite direction of the target normal.

Note that if you click on the unselected geometry rst and then the selected geometry Align will give unexpected results. Always click on the selected geometry rst. An example of Align usage: rst click the center of a polygon on a selected box, then click the center of a polygon on an unselected box. The selected box will move and rotate so that its clicked polygon center faces that of the clicked polygon center on the unselected box.

We want to align the front face of the selected object with the yellow object. Both are on the same layer, neither is on any axis. First we click on the face of the blue object we wish to align, next we click on the face of the yellow object we wish that face to be aligned to and the third image shows the result.

Axis Rotate
Modify > Rotate > Axis Rotate - Much like CAD tools, the Axis... tools work in a specic sequence. For Axis Rotate, the sequence is to pick an end point for a line about which your selected polygons will rotate. Your second click denotes the other end of this line and then holding down the left mouse button will rotate the selected polygons about this axis. You can use snapping to snap the end points of your axis to vertices or the center of polygons on the layer. You can also pick the axis to rotate around from items on a Background layer. Alternatively, you can hold down the Shift key and click on a polygon to rotate about its normal.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 261

LightWave 11 Features

Modeler

Were using the two objects from the previous example and we want to even them up. Use Axis Rotate and Shift click on the top blue polygon, now the box will be rotated about that polygons normal. To get the alignment right, use the Nudge controls in the Numeric Panel to perfect your rotation.

Axis Translate
Modify > Translate > Axis Translate - Much like CAD tools, the Axis... tools work in a specic sequence. For Axis Translate, the sequence is that you pick where you want to move from to where you want to move to. There is no change in attitude for the object you have selected but you can use snapping again to provide more control.

Holding Shift and drawing up from the top yellow polygon allows you to move the blue box away from the yellow. As can be seen in the screenshots, neither box is aligned to an axis, but the blue box is moved along the yellow boxs normal. The third screenshot shows snapping to the vertices of the blue box. This will move it along its length.

Axis Scale
Modify > Transform > Axis Scale - Much like CAD tools, the Axis... tools work in a specic sequence. For Axis Scale, the sequence is that you pick either the point you wish to scale uniformly about or draw a line that will be used as the origin of the scale as well as the dimension you wish to change the size of.

Clicking on Part Center allows you to scale the object about its own bounding box center. The second image shows the box nudged down in 10 percent increments to 50%, but if you just want to halve its height with the base resting where it is, use snapping to go from a vertex on the base to one at the top.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 262

LightWave 11 Features

Modeler
Example: Scaling Imported Objects
Often for a project we need to import objects from other 3D software and that can lead to scaling issues. We needed a 22 LCD monitor for a scene, but bringing in this model has lead to a grid size of 50 m and a monitor over half a kilometer wide.

Using Axis Scale and measuring the diagonal of the screen gives a size of roughly 578 m. Entering a value of 22 in the Numeric panel and making sure the Uniform toggle is on will bring our whole monitor down to the correct size.

Transform

Modify > Transform > Transform - A gizmo modeling tool that provides moving, rotating and scaling of your Point, Edge or Polygon selections or complete objects as needed using the new mesh system. Clicking the right mouse will reposition the gizmo to a new point, edge or polygon normal to enable better control. The gizmo itself is a LightWave object that can be edited to suit your needs and can be found in LightWave/support/gizmos. The handles are colored to match their axes. The curves at the end of each arrow are for rotating, the arrows are for translation and the colored boxes are for scaling on a specic axis. The yellow circles are for translating on two axes and the white box at the center of the default gizmo is to scale on all axes.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 263

LightWave 11 Features

Modeler
Tweak
Modify > Translate > Tweak - The Tweak tool allows you to interactively translate the points, edges and polygons that make up your object. You dont need to be in a specic mode to use it. Points, Edges and Polygons can all be tweaked no matter which mode you are in. Clicking with the left mouse button will drag the elements, clicking with the right mouse button will extend new edges or polygons.

Chamfer

Chamfering Points, Edges and Polygons. In previous versions of LightWave, Edge Beveling the central shape in one operation would not have been possible with the built-in tools.

Multiply > Extend > Chamfer - A simple, rapid tool which allows the user to bevel an object. Points, edges and polygons can be chamfered. Unlike a Bevel, which adds to your objects volume, Chamfer maintains or reduces the volume of your object. There are several controls in the Numeric window. The rst is the amount of chamfering with a Measure Amount button to enable you to measure an existing distance in the viewport. SubpatchFriendly maintains quads to ensure that the result can still be subpatched and Group Polygons is for chamfering a selection rather than each polygon separately.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 264

LightWave 11 Features

Modeler
Place Mesh

Multiply > Duplicate > Place Mesh - Place Mesh is a tool to place background objects onto the foreground objects polygons, aligned to their normals. It can work with a single background object or multiple, and placed meshes can be scaled or rotated as they are placed. If multiple background objects are used, they will be randomly chosen among. In 11.5 background objects need to be from the same object as the foreground object on which they are placed. The Populate button creates a clone for each normal of a group of selected points or polygons, depending on the selection mode. Use Random Pitch, Random Heading and Random Scale to randomize these clones. Naked points can also be clicked on and meshes applied to them and vertices in geometry will be snapped to. The snap behaviour can be overridden by holding down Shift.

In 11.5 PlaceMesh cannot use layers from a dierent object as background layers. The solution is to temporarily copy the layers you require into the foreground object.

Slice
Multiply > Subdivide > Slice - A tool to split polygons. It highlights edges automatically and can be snapped to the center of an edge by holding down Ctrl.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 265

LightWave 11 Features

Modeler
Thicken
Multiply > Extend > Thicken - Gives single polygon thickness geometry added dimension interactively inwards or outwards. It can additionally create multiple segments for the oset polygons and create separate surfaces for both the thickened polygons and the interior of your thickened object. The Contour algorithm tends to work well for very orthogonal geometry or geometry without any deep ridges, but Normal is the fail-safe when Contour fails. The copy of the Thickened geometry is called the New Surface, and the extrusion joining the copy of the geometry to the original is called the Side Surface. If you activate the checkboxes to Create New Surface and/or Create Side Surface, then you can assign new surface names to those Thickengenerated polygons. There are three ways to dene the surface names assigned to the New Surface and the Side Surface: 1) Type the new name of the surfaces directly in the text entry eld. 2) Left-click on the drop-down arrow next to each text entry eld to choose from a list of existing surface names. 3) Click Choose New Surface and left-click on an existing polygon to use the surface name of that polygon.

Straighten
Detail > Points > Straighten - This tool performs a function that can be achieved in many other ways, but its simplicity means it can be a very fast way of achieving its specic aims. It works by taking the rst and last point of a selection and laying out all the points in-between in a straight line. It is ideal for straightening bone setups for Genoma for instance, where you dont want misalignment between the points that make up the shoulder, elbow and wrist rig parts.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 266

LightWave 11 Features

Modeler
Edit Edges

Edit Edges has been used to create an extra loop colored blue and individual edge segments have been moved up and down. The Edit Edges tool is still active and the vertical edge loop colored Orange shows the preselection highlighting with the circle in the center of the segment the mouse is over indicating where an additional horizontal edge loop will be inserted if the right mouse button is pressed.

Detail > Edges > Edit Edges - With Edit Edges you can slide edges, create edges or delete them: Sliding Edges - Left clicking on an edge will select the whole edge loop. Moving the mouse left and right will slide the loop up and down in the case of a horizontal loop, or left and right in the case of a vertical loop. If you wish to only slide one segment of a loop, holding down Ctrl will slide only the segment you click on. Creating Edges - When you select a loop you will notice a small circle in the center of the edge segment you click on. Right clicking the edge segment will create a new edge loop at this midway point - a vertical loop on a horizontal edge, a horizontal loop on a vertical edge. Deleting Edges - Shift left-clicking on an edge will delete it. The Numeric panel contains Percent and Distance elds. They are linked and show the distance an edge has slid. Either one can be modied, the other will update to the equivalent value and the edge loop will move.

ABF Unwrap UVs


Map > UV/Texture > ABF UV Unwrap - A new Angle Based Flattening UV unwrapper including the ability to split geometry along selected edges for more complex objects. To use it, select a sequence of edges on your object and hit the button. There are no options.

Known issue: Meshes with multiple open borders can cause the resulting UV Map to become unsymmetrical. To solve this temporarily cap holes prior to running ABF UV Unwrap.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 267

LightWave 11 Features

Modeler
Select by Normal
Selection > Modify Selection > Select By Normal - This tool is also available in the Select Menu in the Top Menu group. If you use this tool with no selection, you will be presented with a reduced range of options - the ones that need no selection. If however, you select one or more polygons on an object and then choose Select by Normal you will be presented with a window containing the following options: Angle Tolerance - Polygons whose normals are at no more than this value in dierence to your original selection will be selected. Distance Tolerance - This will be ghosted unless you enable the following item. Use Distance Threshold - This enables the above item where you can specify a maximum distance for Select by Normal to work. Same Surface - Only selects polygons with the same surface. Select Connected Only - Only selects polygons that are directly connected. If you unweld a group of polygons they wont be selected. Update - Shows the modications you made made to the selection. Select by Axis -

Pick Surface
Selection > Polygons > Pick Surface - Takes longer to document than to use. Clicking any mouse button on a polygon will open the Surface Editor with that surface highlighted. The surface name is also shown in the viewport allowing you to hunt for a surface by name on your object.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 268

LightWave 11 Features

Modeler
Example: Rapid Sofa
Using the new tools Thicken and Edit Edges we can make a sofa model extremely quickly.

First make a box with two segments on the X axis (01) and select the polygons on the front and top of the box and delete them (02 and 03).

Use the Thicken tool to give our sofa thickness (04). Next bevel up the cushions from the two seat polygons (05) and see what it looks like in subpatch mode (06). Too rounded so well need to x that.

Using the Edit Edges tool, add an edge loop around the sofa (07). Switch back into subpatch and see how it looks moved to the front of the sofa(08). Repeat for the sofa back (09).

Add a loop going front to back along the sofa arms and move it to the outside to tighten that surface (10) and nally add a loop at the bottom (11) and top (12) of the sofa to square it up.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 269

LightWave 11 Features

Modeler

Set Skelegon Weight

This is a new version of the Skelegon weight assignment tool that now has a drop-down menu allowing you to choose the weight map you wish to use, rather than forcing you to type in the name exactly.

New Paste Behavior

Wed like to add a third box. Select the orange box on the left, hit Ctrl+c and Ctrl+v and change to Move. The newly-pasted box will move.

Previously, when you copied elements of a layer to duplicate them, you needed to be careful about what was selected and what was not. Often you ended up using a second layer to hold your copied geometry in so you could move it, then cut it and paste it back into the original layer. This is quite an awkward workow, but its the way that LightWave has always done it, so if you are comfortable
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 270

LightWave 11 Features

Modeler
with the workow you can reinstate the old behavior. The change that has been made is that newly-pasted geometry is now selected, so you can immediately move it without fear of disturbing the original geometry. If you wish to preserve the previous behavior because of muscle memory, replacing PasteNew with Paste is simple. For users familiar with the keyboard shortcut for pasting (Ctrl-v), then all that needs to be changed is the default PasteNew command for the Edit > Paste command in the Congure Keys panel (Alt-F9).

If you use menus to copy and paste, you need to repeat this step with the Menu Editor (Alt-F10)

Align to Plane
Modify > Translate > Align > Align to Plane/Restore Align - The scripts that were added in LightWave 11 to help with modeling o-axis have been moved to the Modify tab since they are no longer as necessary with the new tools available in 11.5.

The Align to Plane tool creates a 2-point polygon in the rst free background layer to store the rotation. This lets you save an object mid-way through an Align to Plane operation; quit Modeler; come back later and carry on. Modeler will know exactly the transformation it needs to do to align the model back to its original state .

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 271

LightWave 11 Features

Modeler
Layout Modeler Tools
New Cube, Sphere and Ground Plane primitives have been added to the Create > Geometry group in Layouts Modeler Tools tab. The Ground Plane primitive is very useful for people wanting to set up quick scenes to test Shadow Catching, Flocking, Instancing or - more importantly - to add a oor to a scene quickly. Objects are given logical item names when created including surface names - so that they are easy to distinguish between each other should you create several primitives at once. The lower part of the primitive creation window has options for saving the new object immediately at creation time. By default, saving is not enabled so as not to interrupt your workow, but you will need to manually save your objects to disk when and if you decide to save your scene.

Connected to Lyrs
Layers > Layer Utilities > Connected to Lyrs - If you create a fractured object, by default it will be all distributed on the same layer, which LightWave is absolutely ne with. If you do need to distribute the parts of your fractured object (or any other object for that matter) to discrete layers then this tool is ideal. It takes all unconnected shapes in a single layer and distributes them over as many layers as needed. It can be found on the new Layers tab in the Default Modeler menus or the Utilities tab on the Studio Production Style menus.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 272

MAIN TITLE
SUB-TITLE

Workflow Enhancements

LightWave 11 Features

Workflow Enhancements
Introduction
Features are nothing without good workow. This is why LightWave 11 has a number of improvements to areas of the workow, no matter how small they made be. It all adds up to a better user experience and faster workow.

Scene Editor Enhancements


Alt-clicking on an arrow in the Scene Editor will now unfold the complete hierarchy, then Altclicking on an item name will highlight it and its children recursively. Equally, the selection area on the right side of the Scene Editor has been enlarged. The icon representing Nulls is now dierent to other objects.

Surface Editor Enhancements


If you have a complex scene with many objects with many surfaces, it can take a long time to navigate to the surface you need. Just as a little workow aid, we have added the ability to rightclick on a scene element and Expand all Surfaces.

Copying and pasting Surface Editor tabs


In addition to being able to copy and paste surfaces, 11.5 adds the ability to just paste individual Surface Editor tabs or nodes to a new surface speeding up copying and pasting just some details of a surface, rather than the whole thing each time.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 274

LightWave 11 Features

Workflow Enhancements
Color Picker

LightWaves default color picker has been renewed and given powerful new features. 1) This main area will change depending on which of the buttons below it (Red, Green, Blue, Hue, Sat., Value, Kelvin, Wave) is selected. Here we have Hue. 2) This area will also change dependant on which button below is chosen. Here we can see the Hue wheel of colors, but if Sat is chosen below there will be an increase in saturation of the color chosen from bottom to top. 3) This color wheel is either based on the RGB or RYB method chosen with the small swatch in the upper left corner. The two systems are based on light for RGB and the primary colors of pigment for RYB. The RYB color wheel contains a second wheel inside and holding down Shift will constrain movement around the wheel to 15 jumps. 4) This dropdown shows dierent kinds of complements on the color wheel. By default it is set to Complementary, which shows the color and its opposite, but it can also show Analogous, Triadic, Tetradic and Tints and Shades as shown in the image above. There is a Custom setting too that allows the user to pick and choose colors.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 275

LightWave 11 Features

Workflow Enhancements
5) Usually a single byte is used to represent the values of a color and is therefore limited to a range of 0-255 for red, green and blue. However the LightWave Color Picker internally uses oating point numbers to store and handle colors (where 1.0 in a Floating Point numeration would be the same as 255). This allows you to use bright colors, those with values above 255 (1.0), by either entering a high number into the Red, Green or Blue numerical inputs or by using the X multiplier. The multiplier can also be used to reduce a color by entering a number less than one. Thus 0.5 would return a color half as bright as the current color. 6) This section of the Color Picker compares the color chosen with the color that was previously attributed. The user can revert to the previous color by clicking the large swatch under the current color (the white in our example). You can also set the color as part of the permanent swatches in the lower center of the Color Picker by clicking on the Set button. If you wish to set a dierent swatch as the current color, Ctrl clicking on the swatch will set it. Shift clicking on a swatch will switch to that swatch without choosing its color. The M and P buttons represent a Color Mixer or the Palette swatches. By default the Color Picker is set to the Palette swatches. If you click the M button you will see four color sliders by default, showing an approximation of your chosen color in CMYK or Subtractive values. You can Ctrl click on a mixer bar to set it to the currently-chosen color. 7) These two buttons will replace the area shown in 1 with a magnied zone of the screen or a separate window with the image chosen. If you are picking from screen, s will swap between dierent sample sizes and holding down Shift will slow mouse movement to 1/20 to make precise picking more easy. If you are picking from an image, the image will be shrunk to t the window, but you have alternate sizes available in the top right corner. You can change the Sample Size and the number of clicks a Sampling will be made of above the image. 8) Clicking the Open Library button with expand the Color Picker sideways and oer a history of colors chosen and a set of collections that can be added to or exported in the lcl format. When the Library is open an additional button becomes available, Live Matching. This looks at what you are choosing in the Color Picker and shows the library with the closest matches. If you know roughly the color you are after this is a good way of matching the exact color from a library swatch. 9) The Settings button oers a choice of Integer or Float for RGB Display Mode (0-255 or 0.01.0) and can set the Kelvin range, the Wavelength direction and clipping of high colors. You also have settings for the color library including how much History to keep, how color names are formatted and how close a color needs to be to be matched in the library.

Converting from RGB to Kelvin requires some expensive processing, too much to do for every
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 276

LightWave 11 Features

Workflow Enhancements
color change. Instead, RGB->Kelvin processing is done when loading the panel or when switching to Kelvin mode. This RGB->Kelvin process can also be inaccurate, for example theres no green in the Kelvin scale.

Compound Nodes
A new type of node has been added to LightWave 11.6. Called a Compound node, its a container for other nodes, or networks of nodes, simplifying complex networks and easy reuse. The easiest way to understand it is with a quick example.

Example: Simplifying the Benchmark Marble nodes


Weve loaded the Benchmark Marble scene included with the 11.5 content. Its a deliberately complex scene designed to torture your processor to nd out how fast it is. Most of the surfaces are fairly simple, since they are based around the Dielectric Material node, but the oor is a bit more abstruse.

My Node Editor has to be at 61% magnication to see all those nodes. Lets simplify. 1) Select all the nodes apart from the Scalar node at the start and the Surface node at the end and Copy them (Ctrl c). 2) Add a Compound node from the Tools group. Double click on the new Compound node and you will enter a new Node Editor for that Compound. Here you can paste the nodes you copied. Select the Material output from the CarPaint material at the end of the node network and plug it into the Output node in the Compound node editor, where it says New. 3) Double click on the output node in the Compound node editor to return to the main node editor. The original nodes are still there because we want to have a control for this compound, that of Scale.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 277

LightWave 11 Features

Workflow Enhancements
4) Drag the output from that rst Scalar node to the New input on the Compound node. You will see it changes to Scalar and a second New node is added. Take note of where scaling is applied in the network, it is Input A on the Divide node, Scale on the Checkerboard node and Scale on the Grid 2D node. If you double click on the Compound node you will see the Input node now says Scalar and you can make the same connections. 5) Finally, you can delete all the nodes in the main node editor with the exception of Surface, Compound and Scalar.

The image on the left is inside the Compound node. Note the lack of a Surface node and the title bar saying Compound. The image on the right is back in the main Surface for the Ground and you can instantly see how much simpler it is than originally.

Overview of Controls
Double-clicking on the Compound node will enter a new Node editor with Compound as its title. You will see two nodes, an Input and an Output. If you have dragged an output to the Compound already, the Input node inside the Compound Node editor will show it as an output. A nodal network can be built inside the Compound Node editor and when either the Compounds Input or Output nodes are double clicked you will be returned to the main Node editor. Inputs to the Compound node can be renamed by right clicking on the entry. Renamed entries are also renamed inside the Compound node window.

You can rename the Compound node and also use the notes function to make its function more understandable. Double clicking to enter the Compound will still put Compound in the title bar.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 278

LightWave 11 Features

Workflow Enhancements
Node Editor Probe
In the Node Editor there is a new icon on the right. This is a node probe that will show you the outputs of the nodes in your network.

When enabled, you can hover the mouse cursor over any nodes output connections or preview area. If the preview area has a standard preview sphere, the hover location is displayed in the preview data type (color, scalar, vector, integer, etc.) When hovering over an output connection, the displayed data uses the data type of that connection; however, the value is evaluated without the knowledge of any ray trace environment. Therefore, the output connection evaluation is really only useful for those nodes that do not use preview spheres. The data display is shown in a oating popup that follows the mouse.

The data display will update a few times per second to account for live input from a Device node or if the user updates the preview spheres manually via the space bar. In other words, the mouse pointer can continue to hover over the same screen position and whatever happens to be beneath it will be displayed automatically.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 279

LightWave 11 Features

Workflow Enhancements
The preview sphere has traditionally been a gamma-corrected appearance of the actual evaluation. The probe will display the source data for the preview sphere, not the altered visual representation. The probe then shows the value of that output not the color-adjusted greyscale representation of that value.

Node Editor Procedural Texture


LightWave 11 makes accessing nodes through any Texture Editor (T button) simple by choosing Node Editor as the type of Procedural texture. Gradient and slopes may be limited since there are no normals for procedural textures.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 280

LightWave 11 Features

Workflow Enhancements
Searching Nodes
The list of available nodes can now be searched to quickly nd a specic node. There are also options for case-sensitive searching and at list results (the matched nodes will appear in a at list as opposed to an hierarchal list showing the node group they are located in). There is also a quick Clear Search option to clear out a search and get back to the full list. All of these options are found in the popup menu to the right of the search eld.

Adding Multiple Nodes


The addition of the node tree list now means multiple nodes can be added at once rather than one at a time. Simply select the nodes you require and click the Add Node button. Alternatively, click the rst node, hold the Shift or Ctrl key (depending on the type of selection you are doing contiguous/non-contiguous) and double-click the last node. All the selected nodes will now be added. The previous way of adding nodes via the popup menu is also still available, the small drop down arrow next to the Add Node button is where the original node menu is located.

Editing Nodes When Zoomed


LightWave 11 now allows you to connect nodes together even when zoomed out to extremes. Its up to you to connect the right outputs to the right inputs though.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 281

LightWave 11 Features

Workflow Enhancements
Curved node connectors
Having curved node connectors makes any nodal network easier to read, especially once the network gets more complex.

To change the style of your nodal connections, visit the Options panel in the Node Editor and choose between the three styles available - Straight, Square and Spline.

Carpaint Improvements
With Iridescence Without Iridescence

The two scenes are identically surfaced with the Carpaint material, except the scene on the right has no Iridescence, the one on the left has Iridescecence at 100% with a thickness of 2.0nm and a Wavelength of X: 425 Y: 380 Z: 750.

The Carpaint node in LightWave has several new parameters: to increase the realism of your renders.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 282

LightWave 11 Features

Workflow Enhancements
Iridescence Also known as goniochromism, this describes how some surfaces change color with the viewing angle such as is seen with soap bubbles and sea shells. It is a percentage value dictating how much light will be reected from your surface and has some specic parameters: Thickness This is the distance, measured in nanometers, between the surface of your car paint and the paint layer itself. Varying it will cause interesting eects as the wavelengths from the following three elds complement and interfere with each other. Wavelength The three Wavelength elds labelled X, Y and Z Clearcoat Fresnel The Clearcoat layer in the Carpaint node now has a Fresnel function to give a better look to the transparency it generates.

Fresnel Node
The Fresnel node now has an Inverse output in addition to its normal Result node meaning an additional node is no longer required to invert the result.

Input Node

11.6 adds a new context-sensitive default node. Called the Input Node it is always present in a node editor, much like the Surface output node is in the Surface Editors Node Editor. It does not have to be used, but contains many frequently-required nodal inputs, much like the Spot Info node. There is an Input node in many of LightWaves node editors, shown are Surfacing, Nodal Motion, Volumetric Light, Texture Editor and Object Displacement. The Surface Editor Input node contains four new outputs over Spot Info - ScreenX, ScreenY, Polygon Index and Thread Index. The rst two report screen co-ordinates, Polygon Index returns the polygon number as reported by Modeler for non-subD objects and Thread Index returns the processor thread number used for a particular spot. In an 8-core processor this would be a number between 0-7.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 283

LightWave 11 Features

Workflow Enhancements
Preset Sorting
Presets can now be sorted by Date or alphabetically.

Light Fallo clamping

Two new additions have been made to the Light Intensity Fallo dropdown. They clamp light fallos in two ways. First, light inside the fallo area is now clamped to the value of the light, rather than continuing to get brighter as was previously the case.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 284

LightWave 11 Features

Workflow Enhancements

Heres how it works:


Light Fallo Set to 0.5m
100% 0.5m 1m

Inverse Squared
1.5m

Light Fallo Set to 0.5m


100% 0.5m

Inverse Squared Clamped


1m 1.5m

Distance From Light Source

Light Intensity

Light Intensity

Distance From Light Source

The second thing that the clamping does is to cut o ray tracing when the amount of light being emitted drops below a useful level, which will have a good eect on render times in scenes with lights with a fallo.

If you are using the clamped fallo, be sure to adjust your fallo distance to prevent large monotone regions caused by the clamping of the light. Smaller radius, higher intensity lights will work better to minimize this eect.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 285

LightWave 11 Features

Workflow Enhancements
Dome light with Image

The ability to add a spherical map or light probe to a Dome light has been added for 11.5. This is great for rendering more realistic shadows, or as a buer export from a single light in the scene. There are four possibilities for mapping: None - the light works in just the same way dome lights always have. Image (Spherical Map) - the Image menu becomes active and an image can be chosen to be wrapped spherically around your dome lights projection. Image (LightProbe) - the Image menu becomes active and a light probe image can be chosen to be wrapped around your dome lights projection. Backdrop - This evaluates backdrop shaders in the scene rather than directly using an image.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 286

LightWave 11 Features

Workflow Enhancements
NGon Light

A new light type has been added to LightWave. Called NGon it allows you to create n-sided lights to use as bounce cards for specic studio-type lighting situations. Where before if you needed to have a ve-sided bright patch on your car hood and so used a luminous polygon, you can now directly create a ve-sided light. The two settings are for the number of sides to the light and the initial angle youd like to turn it to. Any number of sides less than 3 will give a circular light.

Multiselecting Lights and Objects for Exclusion


You can now multi-select to exclude lights from objects or vice versa. Shift-Click will select a range or you can use Ctrl-Click to toggle individual selections. Once your selection is complete, clicking in the Exclude column will toggle states.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 287

LightWave 11 Features

Workflow Enhancements
Render Globals Tab Grouped

Previous versions of LightWave had many options that aected the nal render located in various separate panels. In LightWave 11, these panels have been grouped together for faster access. The Render Globals panel now hosts the Camera and Light options. The shortcuts for opening these panels are the same as previous versions of LightWave, nothing has changed in that regard. It simply means checking your render settings is now much easier by having all these items in one panel under their respective tabs. The Render Globals panel can now also be accessed by the keyboard shortcut Ctrl p.

Motion Options De-referencing

The Unparent button has gone from the Motion Options panel to be replaced by one place to Parent, Target, Pole and Goal items in your scene and de-reference them by simply clicking on the X icon to the right of each dropdown.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 288

LightWave 11 Features

Workflow Enhancements
CgFX Hardware Shaders
LightWave 11.6 adds CgFX hardware shaders for viewing and manipulating shaders written in the industry-standard CgFX format. They are often used by artists working in previz or the games industry. CgFX hardware shaders only aect OpenGL viewports in Layout and not VPR, F9, F10 or LWSN and are implemented as a Surface Editor shader on a per-surface basis to allow you to share your shaders as assets between various 3D applications and 3D engines. Users can download free Cg shaders from these sites among many others: http://developer.download.nvidia.com/shaderlibrary/webpages/cgfx_shaders.html http://blog.leocov.com/p/downloads.html

Downloaded shaders have often been developed to work on a specic range of graphics cards or drivers. Especially if you own an ATI card modications to the shader code may be necessary to make it run on your machine. Checking the CGFX code and changing proles to GLSL proles is a step that often works. All possible proles are currently: arbfp1, arbvp1, fp20, fp30, fp30unlimited, fp40, fp40unlimited, glslf, glslv, gp4fp, gp4gp, gp4vp, gpu_fp, gpu_gp, gpu_vp, vp20, vp30 and vp40 and only glslf and glslv are known to work reliably on ATI cards. This means that for any given shader code, you can search within looking for: FragmentProgram = compile and VertexProgram = compile For example, in this snippet:
VertexProgram = compile vp40 VS(true); FragmentProgram = compile fp40 PSFull(); vp40 should be replaced with glslv and fp40 should be replaced with glslf.

The LightWave 3D Group cannot take responsibility for third party CgFX code, nor oer support on coding CgFX shaders for LightWave.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 289

LightWave 11 Features

Workflow Enhancements

Example: Adding a Cgfx Hardware Shader

Note that the check buttons marked with >>>>>... are merely separators, they serve no function.

1) Load an object with a normal map (here we are using the NevronMotion Bounce character). Open the surface panel and go to the Shaders tab where you should add a Cgfx Hardware Shader. 2) Load the lcUberShader_3.0.cgfx available from http://blog.leocov.com/p/downloads.html

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 290

LightWave 11 Features

Workflow Enhancements

3) On the Group 1 tab, select the UV map from the TexCoord UV Map dropdown 4) Check Use A Diuse Texture and choose the diuseMapSampler Image from the drop-down. 5) On the Group 2 tab, check Use a Normal Map, check the Invert Normal Map Green Channel checkbox for normal maps originating from ZBrush and choose the map using the normalMapSampler Image drop-down. 6) In Group (and 4, not pictured), you can set lights for your Cgfx surface, setting color; and attenuation for point lights.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 291

LightWave 11 Features

Workflow Enhancements
MDD Multi-Loader

The MDD workow is central to using LightWave in a multi-product pipeline, or to enforce consistency when network rendering. LightWave has long been able to save and load MDD les and this new window makes them much faster and easier to apply scene-wide. On the left side of the window are presented the objects in your scene with their point counts. The list on the right will hold the MDD les you load using the Add MDD le(s) or Scan Folder buttons. Once you have objects on the left and MDDs on the right you can either assign by hand, clicking on the object in the left list rst, then the MDD; or you can use one of the automatic matching routines: Names - Matches the MDD lename to the object name in Layout Points - Matches the object pointcount with the MDDs pointcount (MDDs with pointcounts dierent to the objects they are aplied to dont give predictable results) Points & Name - Will only match the MDD to the object if both Name and pointcount are identical (the most secure) Points or Name - Tries to match pointcounts rst, then name if the rst attempt nds no matches Following the Match By... options there are three other buttons. Assign Random - this will randomly choose an MDD in the right list to assign to the objects on the left list. Unassign - This removes the MDD assigned to the object. You can also click in a blank area in the MDD list
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 292

LightWave 11 Features

Workflow Enhancements
Unassign All - This gives a warning before removing all MDD assignments to the object list All of the Name options respect the Name Match Tolerance percentage eld under the left object name eld. At its default 0% assigning MDDs is based on a strictly exact name match. Increasing this percentage will match more and more items to 100% where everything will be matched. To the right of this eld is Ignore Clone Sux. This is checked by default since you often need to assigned MDDs to cloned objects. If you wish to control which MDDs get assigned to which of your cloned objects uncheck this button. Once matched a tick will show by the object name in the left list. Clicking on an object with an MDD assigned will highlight the MDD it has been assigned in the right list. You can assign a dierent MDD by clicking on it in the right list and you can Remove MDDs by clicking the button with the same name, or Clear All MDDs by clicking the button to its right. This presents a warning before clearing the entire list of MDDs from the right list. Under the MDD list on the right side of the window are the same options you will nd in the MD Reader you will have used previously in LightWave for going through each object in the scene one by one. There are Random Frame Oset and Random Replay Speed buttons with ranges beneath each to allow you to apply some randomisation automatically across MDDs rather than needing to each individually. The last two buttons are: Clear Existing MDDs - This clears MDDs already assigned to the objects in the left list before applying those you have chosen in this window Reset MDD Settings - This button merely resets the MDD settings in the lower right half of the MDD Multi-Loader window back to their defaults if you have made changes you dont like When you hit OK, the MD Readers are applied to the objects as in previous versions of LightWave.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 293

LightWave 11 Features

Workflow Enhancements
Example: Using MDD Multi-Loader
Our simple scene has ve objects that have all been assigned Bullet dynamics. The objects fall to the oor and bounce and roll around beautifully. To ensure the integrity of their motion, to not have to endure the time taken to repeat the Bullet calculation (which in this case is admittedly negligible) and to be able to export the scene to another piece of software we will bake the motions that the objects make.

To do this, select all the objects you wish to bake - in this case the ve objects dropping to the oor. There is no need to bake the oor, there is no animation applied to it.

On Layouts I/O tab you will nd MDD Multi-Baker in the Export group. There are plenty of settings you can change for a variety of situations but for this exercise we will immediately hit OK. You may
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 294

LightWave 11 Features

Workflow Enhancements
be prompted to create a VertCache directory in your content directory. Do so, this is where the MDDs will be stored.

Further up the I/O tab, in the Import group you will nd MDD Multi-Loader. Before opening it, we turn o Enable Dynamics in the FX Tools tab and press play to assure ourselves that the objects in the scene no longer fall to the oor. Now we return to the MDD Multi-Loader and open it. The window contains the six objects in our scene, the ve falling shaped and the inanimate oor. On the right side we can either load the MDDs by multiselecting them in the load requester or by hitting the Scan MDDs button and navigating to the right folder. In either case, we rapidly get ve MDDs in the right window.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 295

LightWave 11 Features

Workflow Enhancements

We can go through the objects one by one, carefully selecting the appropriate MDD le to go with the right object, or we can just hit Match Names. In either case we will see that we have one MDD assigned to each of the ve falling shapes and none to the oor. Now when we hit OK to close the window and press play on the scene we see our ve shapes falling to the oor object exactly as they did when Dynamics were enabled on the FX Tools tab.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 296

LightWave 11 Features

Workflow Enhancements
Matching Perspective to Camera or Light View
In 11.6 you can now match your Camera or Light View to your Perspective Viewport. You need to have your current Camera (or Light) selected at which new options become available in the third Viewport dropdown menu as shown:

You can choose to either copy the Perspective views orientation to the current camera (or light) or clone it and create a new one to which the Perspective view is copied. The default keyboard shortcuts for these commands are numpad 8 to Match Perspective with the Selected Camera or Light and numpad 9 to Match Perspective with a New Camera or Light.

To exactly match the Perspective viewports perspective, you should set the Cameras Lens Focal Length to 30 mm instead of the default 24.0 mm

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 297

LightWave 11 Features

Workflow Enhancements
VPR Enhancements
VPR has received major enhancements behind the scenes, including the ability to render lens ares, point/line/edge/outline rendering and clip maps. LightWave 11 Instances are also fully supported. Ctrl F9 now switches between VPR and OpenGL views in Layout.

VPR Surface Picking

Even while VPR is still resolving, you can now Shift Click on part of the image and the Surface Editor will open with the selected surface, or switch to that surface if the editor is already open.

DOF & Motion Blur in VPR

Depth of Field and Motion Blur can now be used in the Viewport Preview Renderer from the camera view. You can now get a far better idea of how your DoF and Motion Blur eects are going to turn out for the full render. This is also a very powerful addition for rapid visualization and concept design for art directors. These beautiful photographic eects are now interactive which allows for much more experimentation for artists. This is not available when VPR is in Draft Mode. Motion blur for camera movement and for deforming objects is not yet supported in VPR.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 298

LightWave 11 Features

Workflow Enhancements
Stereoscopic Rendering in VPR

Stereoscopic Anaglyph rendering is now supported in VPR so that you can experience the stereoscopic eect interactively at a much higher quality than OpenGL can show. This is not available when VPR is in Draft Mode.

3D Display

LightWave 11.6 adds a 3D viewing mode for people with the right hardware. If you have a 3D monitor or television and a graphics card capable of quad-buering a display (for NVidia this means a Quadro graphics card but most AMD/ATI cards work), then you can see your scene in stereoscopic 3D. The display works both in OpenGL and VPR and supports both anaglyph and active or passive 3D (shutter glasses or RealD 3D glasses) depending on your hardware capabilities. To enable the display 3D Plugin in a full-screen window. 1) Load a scene; 2) Pick Texture Shaded Solid / Texture Shaded Wireframe ( for color OpenGL ); 3) In Camera Properties go to the Stereo tab and enable Stereoscopic Rendering;
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 299

LightWave 11 Features

Workflow Enhancements
4) 5) 6) 7) In the Stereo OpenGL dropdown pick 3D Glasses; Set your viewport to VPR and in VPR Options choose Add Display / 3DVisionPro; Edit Properties or double click 3DVisionPro; Check Full Screen if necessary for your graphics card

Esc closes the 3D display or you can click Toggle Window in the VPR options window.

Refraction in VPR
Refraction in VPR now matches F9 renders.

VPR draft mode uses xed settings.. VPR non-draft mode uses the current camera settings. When using VPR non-draft mode, you can dial in whatever levels of renement you want in the current camera settings. Potentially the current camera can be faster than draft mode if you dial down the samples low enough.

Advanced Camera support in VPR

You can now get swifter feedback from the Advanced Camera in LightWave. Previously the only way to see what it was doing was to use F9 but now VPR can render your Advanced Camera scenes as well. Draft mode needs to be turned o for Advanced Camera to be shown in VPR. If you dont
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 300

LightWave 11 Features

Workflow Enhancements
then VPR will show a Perspective camera-type view. Third party cameras using the ACT system will benet from this functionality as well.

Rolling Shutter and Motion Blur Bias

LightWave 11.5 has added a rolling shutter to the Motion Eects settings for the camera. Working with footage that has been tracked in applications like Syntheyes can sync badly with CGgenerated footage if the camera used is CMOS-based (CCD-based cameras have no problem with rolling shutter). A rolling shutter oset helps with such issues and ensures that your tracked footage matches the CG you create in LightWave. Shutter Open - denes the time oset for the start of the render. If the Blur Length is set to 50%, a Shutter Open value of -25% will center the motion blur for each frame. This is because a Blur Length of 50% is a half-frames worth of blur between the current frame and the next frame. A Shutter Open value of -25% would start the render a quarter-frame before the current frame. The 50% Blur Length would then carry the render past the current frame to end at a quarter-frame past the current frame, centering the motion blur. Rolling Shutter - mimics the shearing distortion of a rolling shutter. Each horizontal line in the frame is progressively shifted forward in time, up to a maximum of a single frames worth on the bottom or top line. The positive or negative value of Shutter Skew determines whether the top or bottom get sheared forwards in time. At 100%, the bottom of the frame will show the positions of everything as they appear on the next frame. At -100%, the top of the frame shows the positions from the next frame.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 301

LightWave 11 Features

Workflow Enhancements
Example: Rolling Shutter
Heres a visual explanation courtesy of Dave Jerrard: Heres a shot of ve marbles, all rolling in dierent directions. The ones along the edges of the frame are all moving along the edges of the frame in a clockwise direction. The white one in the center is moving diagonally from top left to bottom right.

Now the same image with Shutter Skew set to 100%.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 302

LightWave 11 Features

Workflow Enhancements

Note that the marble on the right, which is moving down the frame, appears stretched vertically, while the one on the left is squashed vertically. Now with Shutter Skew set to -100%, the skewing eect is reversed.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 303

LightWave 11 Features

Workflow Enhancements
And nally with motion blur added. In this case, Shutter Skew is set to 100% again.

With spinning objects, this can look pretty weird...

Limited Region Enhancements


Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 304

LightWave 11 Features

Workflow Enhancements
The Limited Region gizmo in Layouts Camera viewport has been updated to better reect whether you are using Borders or No Borders. When using No Borders, the resulting render will be cropped to the size of the Limited Region specied, whereas Borders will keep the render size as set in the Camera Properties, but will only render the Limited Region portion of the image.

Borders

No Borders

Maximum Render Resolution


The maximum render resolution for 32-bit versions of LightWave is still limited to 16,000 x 16,000 pixels but now 64-bit machines can render images up to 100,000 x 100,000 pixels given enough memory. Bear in mind that 100k x 100k is an extreme size. Just a blank image at this size requires around 149GB of memory - 100k x 100k x (RGBA @ 4 bytes per channel = 16 bytes)/(1024 x 1024 x 1024) = 149GB). Also, anything above 30,000 x 30,000 pixels wont load into versions of Photoshop older than CS4.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 305

LightWave 11 Features

Workflow Enhancements
Image Viewer Improvements

The Image Viewer is now the active window when a render is nished and the Render Status window closed, plus there are more magnications to choose from for examining your render.

Low-Discrepancy Sampling Pattern

The Blue Noise sampling pattern has been replaced in LightWave 11 by a Low-Discrepancy pattern that renders faster and more accurately. Low-Discrepancy is a pattern much like our classic sampling patterns but is dierent for each pixel. By using Low-Discrepancy, we can combine sampling for the anti-aliasing with the sampling for eects like soft shadows, reections, refractions and radiosity so that they complement each other. This allows fewer samples to produce less noise visually and is one of the mainstays of LightWave 11s Unied Sampling.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 306

LightWave 11 Features

Workflow Enhancements
Edge/Outline/Line/Point Rendering
The rendering of all types of lines has been improved. All edge types work on instances. Nodal shaders can be used to adjust the taper, color and opacity of the edges. Lines and outlines can be tapered. Using a negative value for the thickness of any edge, line or outline causes them to be rendered in perspective. The negative thickness is used as a radius in meters. This shows in both F9 and VPR.

Jennifer Hachigian very kindly gave us an example of cel shading using the new features in VPR. There is a Turbulence2D bump texture uv-mapped to the hair. An Anisotropic Specular shader is applied to the bangs and a Function (SmoothStep) to increase the contrast of the Specular highlights. The two Edge types used here are Silhouette Edges and Unshared Edges. Silhouette Edges draws lines on the polygonal edges that represent where the surface angles away from the camera, and these Silhouette Edges can change from frame to frame if the camera or subject matter change position. Unshared Edges highlights polygonal edges that belong to only one polygon and are not shared by any other polygon. Unshared Edges cannot change from frame to frame, because this condition cannot change from frame to frame. In this 11.5 render, a weight map controls the taper of the Silhouette Edges. The weight map has values of 0 % at the chin and neckline to taper the Silhouette Edges at those points. An incidence angle gradient controls the taper of the Unshared Edges at the neckline, so that the Unshared Edges are thickest where the geometry faces the camera and thinnest where the geometry angles away from the camera.

Edges are a selective means of wireframe rendering. Unlike surface-based inking with highcontrast incidence-angle gradients (think of the computer-generated Galactus in the 1990s SILVER SURFER cartoon), Edges can look as stable as any wireframe render. For models made of subpatches, this means that higher Render Subpatch Levels will deliver smoother ink lines, and lower Render SubPatch Levels will deliver chunkier ink lines. An Edge will not appear where there is no polygonal edge for Edges to render. Two intersecting boxes, for example, will not have an Edge at their intersection unless they are Booleaned or Sliced together to create a polygonal edge at that intersection. If you do not want to Boolean or Slice
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 307

LightWave 11 Features

Workflow Enhancements
intersecting geometry, however, you can use a texture map of an ink line along the intersection to suggest a line without actually altering the geometry. Edges should be just one tool in your toolkit to create the look of a cel. It should not be the only tool that you use when celshading.

The correct spelling for a sheet of acetate used in traditional hand-drawn animation production is cel. Only one l is used in the spelling. Before acetate, animation artists used sheets of celluloid, and the rst syllable of celluloid is cel. A cell can mean a prison cell or a plant cell, but it does not mean the same thing as cel. To render all possible Edges in a scene, make sure that Render Lines is enabled in the Render tab of the Render Globals panel. To set the Edges for an individual object, select that Object and open up its Properties panel. Go to the Edges tab to see the Edge settings. To turn o Particle/Line Thickness rendering for just that object, set the value of Particle/Line Thickness to 0.0. The remaining Edge types use on/o checkboxes, and they will be turned o by default. These can be turned on individually by clicking on their names to turn on their checkboxes. Particle/Line Thickness - this value handles the thickness of one-point and two-point polygons. One-point polygons will render as Particles, and two-point polygons will render as Lines. With negative values, one-point polygons become raytracable spheres, and twopoint polygons become raytracable tubes. Unlike the other Edges, the surfacing for Particles and Lines are controlled by the Surface Editor. For example, if you would like your one-point polygons to render with a blue color, go to the Surface Editor and set the Surface assigned to those one-point polygons to the color blue. Silhouette Edges - these render along the edge shared by two polygons when the normal of one of those polygons faces the camera, and the normal of the other polygon faces away from the camera. The edges that qualify as Silhouette Edges will change with the angle of the model to the camera. This means that rotating the model, deforming the model or moving the camera will change the Silhouette Edges on each frame. An edge must be shared by two polygons to qualify as a Silhouette Edge - Silhouette Edges will never appear on a mesh that consists of a single polygon. Silhouette Edges follow a similar rule to that followed in life drawing classes: a line represents the point where the surface of the subject matter turns away from the viewer. Unshared Edges - these appear on edges not shared by any other polygon. Unshared Edges, when checked, will always appear on a model that consists of a single polygon. For nonsubpatch models, selecting an area of geometry and then applying a Cut and Paste operation will create an Unshared Edge at the border of the selection in your object. You might use this trick to get Edges to help you describe the panels in a spaceship, for example.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 308

LightWave 11 Features

Workflow Enhancements
Any overlapping points of a subpatch model will get merged into a shared edge in Layout for Render SubPatch levels higher than 0, so the Cut and Paste trick will only help you sharpen edges in your model - it will not give you an Unshared Edge in Layout. If you want the Cut and Paste trick to work on subpatch models, create an endomorph that separates the overlapping points. Layout will back o when it sees the endomorph, and it will not merge those points. Sharp Creases - might also be called UnSmoothed Edges. Whether or not a given edge qualies as a Sharp Crease depends on the Smoothing Angle of the surface to which that polygonal edge belongs. Lowering the Smoothing Angle of a surface will increase the number of Sharp Creases traced; increasing the Smoothing Angle will decrease the number of Sharp Crease edges. If the Smoothing option is left unchecked in the Surface Editor, most (if not all) of the polygon edges in your model will qualify as Sharp Creases. These edges could be good for sharp-edged machinery, buildings and rocky terrains. If the object is deforming (for example, an animated ocean surfaced with a low Smoothing Angle), the smoothed/unsmoothed property of the edges can change from frame to frame and the Sharp Creases will change with them. Surface Borders - this type of Edge will appear at the edge shared by two polygons when those polygons have dierent surface names. The polygons can have the exact same texture parameters, but Surface Borders will not care. If the surface names dier, then the polygons will have an ink line render along their shared edge (unless the artist leaves Surface Borders unchecked). Other Edges - any polygonal edge that does not qualify as a Silhouette Edge, Unshared Edge, Sharp Crease or Surface Border will fall into this group. Turn this on along with all of the other Edges for an old-fashioned Wireframe Render. Positive values will render in a xed screen size dened in pixels. For example, a 1.0 pixel thickness will always draw an Edge of 1.0 pixels no matter how close or how far away the object is to the camera.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 309

LightWave 11 Features

Workflow Enhancements
Negative values will render raytracable spheres and tubes. Starting with LightWave 11.5, negative values dene the thickness of the Edges in meters (3D space) instead of pixels (screen space). A value of -0.01 will always draw an Edge of 1cm (0.01 meters) in 3d space that will shrink/increase as the object changes its distance from the camera. LightWave 11.5 also introduces a Node Editor control for Particles, Lines and Edges. These properties are oered for most Edge types: Taper - the thickness of the particle, line or Edge. Suggestions: Use the Alpha of a Turbulence texture to create a wobbly line. Use an Incidence Angle gradient on Unshared Edges, Sharp Creases, or Surface Borders to taper those non-Sihouette Edge types as the surface turns away from the camera. Use a Weight Map to control the taper of Silhouette Edges. Use low values to taper the lines as they approach corners of the model. On a characters face, those corners could be the tip of the nose, the bottom of the chin or the edge of the lip. These points would be where the artists brush or pencil lifted up from the paper at the end of a brushstroke or pencil stroke, so the lines should taper there. Use a Lambert shader (Add Node > Shaders > Diuse > Lambert) to drive a Gradient that controls the thickness of the Edge based on how much light that part of the surface receives, so that heavier lines appear in shadowed areas and that thinner lines appear in the most brightly lit areas. Use a Distance to Camera gradient to shrink pixel-sized ink lines as the subject matter gets farther away from the camera. Color - the color of the Edge. Ideas: Use a Lambert shader to drive a Gradient that controls the color of the Edges, so that the most brightly lit areas have the lightest color and the most shadowed areas use the darkest color. This approach to inking was used in the 2003 animated feature, Wonderful Days (also known as Sky Blue). Use a Weight map to mask o dierent sections of a model, then use those weight values to drive a Color gradient so that each section of the mesh has a dierent-colored ink line. Opacity - the transparency of the Edge. As mentioned above, Particle/Line surfacing properties are handled in the Surface Editor, so Color and Opacity are not available for Lines. In the Edges tab, Edge Color oers a base color for Edges that can be overwritten by the Node Editor. Edge Z Scale is a legacy property. We strongly recommend leaving it at its default value of 1.0.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 310

LightWave 11 Features

Workflow Enhancements
Print Camera
To aid those working in print, LightWave 11 has a utility to help work out the camera frame size (in pixels) that would be an equivalent size in print. This replaces the previous Print Assistant utility and features more settings, as well as international standard paper presets. It is accessed through the Print Camera button on the Render tab in the default and Studio Production Style menus.

Use Template - Leaving this ticked gives you the dropdown list just underneath with a long list of standard page sizes. Template - If Use Template is not checked, this dropdown list will be ghosted. If Use Template is checked you will be presented with 47 dierent standard sizes of paper. Size Unit - Whether you use any of the standard templates or create your own measurements, you can choose to display the page size in the units of your choice: Decimal Inches, Centimeters, Millimeters or PostScript Picas. Constrain Proportions - This option is ghosted if you are using Templates but if you are rendering to a custom sheet size, checking this option will keep the proportions the same between width and height values you set. Width and Height - These values are only available if Use Template is unchecked. The dimensions will be in the Size Unit you have chosen.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 311

LightWave 11 Features

Workflow Enhancements
Bleed - Adds the amount of bleed to the resulting camera frame size. The value is specied by the Size Unit setting and is added to all sides. DPI/PPI - This is the target resolution when printed. Images on screen have no DPI since that is a print concept. PPI (or Pixels Per Inch) is perhaps more appropriate here, but the label DPI has been cited on the interface for those who are more familiar with that term. Format - You can quickly choose between Landscape and Portrait here. Set Camera Frame Size - Checking this option will set the selected cameras frame size to the new size when you click OK to close the window. It will also set the camera Pixel Aspect Ratio to 1.0, as any other value would make little sense for print. Information regarding the size your image will be in pixels is shown underneath the controls, along with a graphical representation that displays any bleed specied. The percentage value marked in the upper left-hand corner shows an approximate scale value compared to the real size of the page.

When you open your render in a package such as Photoshop, then look at the Image Size, it will probably say the image DPI is 72. This does not mean that the 300 DPI/PPI image size you set in the Print Camera settings is wrong. It simply means you need to set the image DPI that will be stored with the document in Photoshop. When you set your print size and DPI in the Print Camera utility, it calculates how many pixels need to be in your resulting image, so that when printed at the target DPI you specied, it will print with the correct quality. To change the DPI of a document in Photoshop, go to the Image Size window, uncheck Resample Image and enter the DPI you want the document to be set to. Notice how the size of the image on screen did not change. There are still the same number of pixels in the document, all you are adjusting is how many of those pixels to use per inch when printed, which is why the Document Size changes.

Screamernet Time Flag


A new ag has been added to Screamernet with dierent operation in the main two modes. In -2 mode, the -t value indicates the polling time for the job le (how often it should be checked for new commands). In -3 mode, theres no concept of a job le, so -t is used to indicate the frequency of diagnostic output during a render.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 312

LightWave 11 Features

Workflow Enhancements
Compositing Buer Export
In previous versions of LightWave, if you wanted to create multiple buers saved to disk you needed to use the Image Filter Render Buer Output, perhaps several times to be able to output all the buers you needed. LightWave 11 presents a new Image Filter called Compositing Buer Export. This allows you to set up all the buers you wish to export in a single window. This window has been updated in LightWave 11.5 to include a new subfolder feature where individual buers can be saved to their own subfolders and has added the ability to invert specic channels and render to multilayer EXR les with editable layer naming to suit your workow.

The Compositing Buer Export is found in the Image Filters panel called by using Ctrl F8 or visiting the Windows > Image Processing menu item. It can be added to your scene by selecting it from the Add Image Filter dropdown menu. When added and double-clicked it presents a window like the above. Buer Set - This eld allows you to type in a descriptive name for your buer set. This does not have to be the same as the Preset name. If you type a name in here, it will be the default name presented when you save a Preset. Destination - This is a dropdown of four options for where to send the resulting buers: Image Viewer - This will give you your nal render but also the buers you selected as additional layers in the image viewer, the same as with the alpha thats there by default. Image Files - Saves images with the base name you set, at the location you set, for every buer you selected. If you choose the new LW_OpenEXR_MultiFP or LW_OpenEXR_ MultiHalf letypes, all the buers you choose will be stored inside the single EXR le. Rendered RGB - Saves a single buer out as the RGB output from Render Globals. Rendered Alpha - Saves a single buer out as the Alpha output from Render Globals.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 313

LightWave 11 Features

Workflow Enhancements
Use RGB Render Path - This will use the path you assigned in the Render Globals window and ghost out the File Output and File Name elds. Save on F9/F10 Renders - Allows the user to choose when Compositing Buer Export will be red, to save lling the hard disk with test renders. Save to Subfolders - This allows you to save each buer into a separate folder for use with pipelines that prefer that. Folder names can be modied on the Subfolders tab by clicking on them in the right column and editing the text eld at the bottom of this window. Normalize Motion - Takes the values in the Motion buer and ensures that they t a normal denition. For example, you are dealing with grayscale levels and your render is generating levels between 40-783. Normalize will make sure that the values are remapped to t within a 0-255 range. Other buers that can be normalized including Depth have separate options panels. Buers - There are 29 dierent render buer types that you can include. For descriptions on each of these please refer to the LightWave 10 Surface and Render Manual. Objects - This tab allows the user to only select the parts of the scene they are interested in exporting the buers of. By default everything is ticked, so everything in the scene is included. You do not need to uncheck non-geometric objects since they leave no trace on buers. Select All, Select None, Invert Selection - Allow you to quickly select/deselect all, or invert your current selection. Presets... Open Presets Shelf - This option opens the Presets Shelf. You can also use the keyboard shortcut F8. Save Buer Set Preset - If you have typed a Buer Set name in the eld at the top of the window it will be presented here, highlighted so that you may edit it. If you have typed no name, then whatever you enter here will also be entered in the Buer Set name. Ambient Occlusion Options - Ambient Occlusion requires radiosity in your render. If you choose Ambient Occlusion as one of the buers you wish to export, this button will become available to you, with additional settings as follows:

These options are similar to the options presented in the Surface Node Editors Shaders > Diuse > Occlusion Node and work in the same way. If you choose Innite from the Mode dropdown, Range is ghosted and the full extent of the scene will be used as the basis for the
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 314

LightWave 11 Features

Workflow Enhancements
eect. If you switch to Range then the Range eld becomes available and you can set the distance the Ambient Occlusion looks for Occlusion. In addition, there is an option for using transparent shadows that shows the shadows for transparent items in your scene. Depth Options - If you choose Depth as one of the buers you wish to export, this button will become available to set further options relating to the Depth Buer.

Normalize Depth to 8-bit - If you are saving 8-bit per channel images this toggle should be checked. You should uncheck it if you are saving your les as oating point/high dynamic range images. Limit Buer Depth - Normally this is ghosted and only becomes available if Normalize Depth to 8-bit is unchecked. It allows you to dene an absolute depth to your scene. Buer Depth - This option is ghosted unless you have checked Limit Buer Depth. It determines the depth you wish your scene to have. This value can be animated over time, or be based on a texture. Bilinear Filter - If you have unchecked Normalize Depth to 8-bit you can also determine the Bilinear lter that should be used on your depth buer. There are four levels of sharpness available. Normal Options - If you choose Normal as one of the buers you wish to export, this button will become available to set further options relating to the Normal Buer.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 315

LightWave 11 Features

Workflow Enhancements
Flip Normal X, Y and Z - matches orientation for a target application or game engine. Create Alpha Map - This places a 1-bit alpha channel into the normal pass that clips o all areas that are not lled with geometry. This can be handy for games work where this channel is used as a clip map in-game. Edge Padding - This creates a user-dened padding so that there are no seams when the size of the map is reduced. Use Background Color - This is for choosing a neutral background color. By default ticking this option will use 128, 128, 255 to the normal map rather than going to black. Normalize - This corrects the magnitude of the normals in the map to t within the normal range. Adjust 8-bit Color - There are three options in the presented Dropdown: None - This leaves the normals as they are, with a range between -1 to +1. Suitable for High Dynamic Range image output Normalized 8-bit - This takes that range of -1 to +1 and converts it to values between 0-255 for an 8-bit image, like a JPEG. No Negative - If the map consists of a range of values between -1 and +1, this option clips everything below 0 so that only positive values are retained..

If you are using scenes created in a previous version of LightWave that used the Render Buer Export Image Filter, you will need to take note of the buers you are exporting with those Image Filters and then add the Compositing Buer Export lter to your scene and recreate the list of buers there. The Render Buer Export lters interface no longer opens in LightWave 11.

Anti-aliased Buers in Compositing Buer Export


The Compositing Buer Export now supports anti-aliased buers. This means that requests for Anti-aliased surface ID, Object ID or even Depth buers can now be met. In order to anti-alias a depth buer, Depth Buer AA needs to be checked in the Render Globals > Render tab and Max Samples needs to be above 1 in Camera Properties.

Render Time in Image Viewer


When you hit F9 to test your render, one of the most important values is how long it takes, but once youve closed that Render Status window youve lost it. Weve added the render time to the title bar of the Image Viewer to make it easier to keep track of, a small but useful addition.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 316

LightWave 11 Features

Workflow Enhancements

Eects > Volumetrics Updated

A T button for adding a gradient, image or procedural texture has been added to the Fog Color eld opening up a much wider range of possibilities.

Eects > Compositing Updated

The Compositing tab of the Eects window has had a small but signicant change. You can now set a background color that can be enveloped to be animated over time. The signicant detail here is that it means there is no longer a need to use a small image to hide an HDRI used for reections and lighting a scene. If you dont check the Use Background Color box, then the old behavior is still available using a background image. Another benet is that the Perspective viewport is aected in addition to the Camera viewport.

In addition, when you set an image as a background for the camera, the Display Preferences for LightWave automatically updates to set Camera View Background to Background Image.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 317

LightWave 11 Features

Workflow Enhancements
Auto Key Enhancement
The Auto Key function has been rened in LightWave 11 to allow quicker access to the various modes it can operate in. Previously this feature was hidden away in the Options panel, but is now located directly on the main interface in Layout. The Auto Key preference in the Options panel now only serves as a default startup preference. A new option now also appears in the Auto Key popup menu called Auto Key: Existing. This mode was available before but was somewhat hidden; it has now been made much clearer which Auto Key mode you are in. The checkbox is now a visual indicator as to when Auto Key is active and when its completely o. Auto Key now has the following modes:

Automatic Keyframing is completely o, no new keyframes will be created or existing ones modied.

New keyframes will be created/modied, but only on the channels you edit. E.g. If you only move an item, keys will be created/modied only for the translation channels you change, but not for rotation or scale.

New keyframes will be created/modied on ALL channels regardless of whether you only move, rotate or scale an item.

Only existing keyframes will be adjusted, no new keys will be ever be created, this is to allow tweaking of keys without fear of ever creating new ones. In previous versions of LightWave this mode was available when Auto Key Create Default in Options was set to O, but the Auto Key button in Layout was active. Now you just need to select this option.

Note that the Autokey indicator at the bottom of Layout works in a similiar manner to how the original Autokey on/o button did. For your Autokey preferences to be saved, you still need to visit the Options panel. This setting is not scene-specic.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 318

LightWave 11 Features

Workflow Enhancements
Clone Instance

In addition to cloning objects in your scene with the usual Ctrl-c shortcut, you can now also clone your current object to an instance using Alt-c in LightWave 11.5. This adds a null with the same name as your object with the sux _inst. This allows you duplicate scene items without a large memory usage overhead.

Faster Access to the Morph Mixer Interface

The Morph Mixer plugin is especially important for character animators, but was buried away in a large list of plugins. On the Object Properties panel under the Deform tab, there is now a button to quickly add and access the Morph Mixer interface. The Morph Mixer interface has also been updated, it now allows longer morph names to be visible.

Setting Motion Path Frame Display

Previously you could set the quantity of Motion Paths Frames shown in total, but only by editing the LightWave cong les. Now you have the ability to set the quantity of frames shown before the current frame and after it. The setting defaults to 60 to match previous versions of LightWave. Other changes in this area of the GL tab of Preferences are:
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 319

LightWave 11 Features

Workflow Enhancements
Use Item Color - If checked, Motion Paths will be drawn using the item color (defaults to on). Show Frame Markers - If checked, Motion Path Frame Markers will be drawn (defaults to on). Show Keyframes - If checked, Motion Path Keyframes will be drawn (defaults to on).

Be aware that Layout evaluates to whatever length the motion paths are, so the longer the paths are, the more they will impact performance.

Interface Color Customization


Customizing the Interface colors for Modeler and Layout is no longer buried away in the Hub. They are now accessed through the Options panels in both applications - the Display tab in Layout and the Display Options Interface tab in Modeler. You will need to restart LightWave to see the changes you have made.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 320

LightWave 11 Features

Workflow Enhancements
Font Specication
You can now specify the font to use for Modeler and Layout by launching with a commandline option. This was already available in LightWave v9 but only for Layout. Buttons will remain the same size for LightWave interfaces so this option should be used judiciously. The possibilities are as follows: -f <fontname>@<pointsize> --font-app=<fontname>@<pointsize> --font-edit =<fontname>@<pointsize> Dont forget to enclose font names with spaces in them in quotes as follows:

This will give this look to Modeler:

Note that the Color channel text is missing and Luminosity, Diuse and others are truncated.

If you want to create shortcut icons to launch Layout/Modeler follow the same methods as for redirecting congs and plugins.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 321

LightWave 11 Features

Workflow Enhancements
HyperVoxels Blending

The Metaball blending method in the previous version of HyperVoxels has been re-implemented and can be used with all HyperVoxel types. Rather than just retaining the two former preset choices (Metaballs 1 and Metaballs 2) the implementation was revised to allow for control of the algorithm via a percentage entry eld and animation of the value using an envelope. To enable, rst check on the Blending toggle. The Blending Scale eld now allows for control of the blending algorithm. The former Metaballs 1 option can be matched with a setting of 75%, and the Metaballs 2 option with a setting of 100%. It is now possible to use any value, including values above 100%. This helps to provide quite a range of looks, including more uid-like HyperVoxels setups. The setting can also be animated, something not possible before.

The upper limit for particles, which was always set to 1 million, has been removed. Although there is now no xed upper limit, bear in mind that each particle can take 2.5 KB or more per second of animation at 30fps. Increasing the number of particles to more physical memory than you have available will result in LightWave crashing.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 322

LightWave 11 Features

Workflow Enhancements
Scene Loading Speed Optimizations
Loading times for Scenes have been greatly optimized in LightWave 11. The amount of gain will be dependent on the scene, but certainly for scenes with lots of items, a signicant benet should be noticeable.

Scene Editor Menu Organisation

The menus in Scene Editor have now been reorganized so that you dont need to hunt for the item you want in a very long list of options. All entries have now been grouped into one of ve submenus - Selection, Hierarchy, Manipulate, Add and Clear.

Nodal Motion Modier

In the motion modiers for a Layout item there is a new Nodal motion modier that allows you to apply a nodal networks vector output to your items Position, Rotation and Scale.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 323

LightWave 11 Features

Workflow Enhancements
Nodal Metalink

Users that have been LightWave artists for a long time will be familiar with the Metalink functionality for creating a simulation with a low polygon mesh and then using that simulation to drive the motions of a higher quality mesh. LightWave 11.5 introduces a nodal way of metalinking objects. together. To use it, simply visit your high polygon meshs Object Properties window, the Deform tab and click Edit Nodes. Choose Displacement > Metalink and select the low polygon mesh you have used for the dynamics simulation.

The Metalink node cant handle a lowpoly SubPatch mesh that was used for dynamics simulation linked to a highpoly SubPatched or polygonal object unless the lowpoly SubPatched object is set to a Display level of 0, but this shouldnt prove much of a limitation.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 324

LightWave 11 Features

Workflow Enhancements
Assignments
Assignments allows you to quickly Target, Parent, Goal, Pole, Spline Control, Position, Rotation or Scale a number of items in your scene. It works by rst choosing an item to be the recipient of the above actions, and then selecting other items you wish to perform the action. Its perhaps easiest to demonstrate with a small example.

1) Add a null to a new scene. This is going to be our target, parent, etc. In Setup > Assignments hit Store Selected.

2) Select the light in our new scene and clone it nine times. Spread out the lights. Click on the Assign... dropdown and choose an assignment, or you can use the Assign UI. Choose Target as our rst example. All your lights should point at the null.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 325

LightWave 11 Features

Workflow Enhancements

3) Using Undo wont help here if you clicked on something other than Target, but you can clear individual Assigns, or all in one go using the Clear... dropdown or Clear UI.

Align and Distribute

Located on the Modify Tab > Arrange Group in Layout, these small but useful tools make aligning and spacing items equally in Layout easier. The Align tools work in much the same way as the Align to Last Point tools in Modeler, but for any Layout Scene items. To use them select the items you wish to align, then select the last item to which you want to align the other items. From the Align menu choose which axis (X/Y/Z) you wish to align against. Once clicked, all the items you selected will be aligned to the last items axis you picked.

Selected items, dark blue sphere was the last selected item

All items are now aligned on the chosen Y axis

To distribute, or equally space items, you dont need to worry about the selection order, simply select the items you wish to equally space between each other, and choose the axis (X/Y/Z) you want to space the items along.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 326

LightWave 11 Features

Workflow Enhancements

Items aligned on the Z axis, but unequally spaced

Items equally spaced between each other along the X axis

Please Note: Due to the way Generic Scripts operate in Layout, these tools will not contribute to any Undo. Make sure you save your scene if you are unsure whether you want to keep the changes, or you will lose the original positions of the items.

Fit Selected and Fit All


The keyboard shortcuts A and Shift-A now also work in the Perspective viewport and not just in the Orthogonal viewports. Buttons to perform the actions are also present on the View menu.

Nav Options Updated

In the Options > Nav tab you can now control the scaling on individual channels for your external control device. You can also stop specic channels from being evaluated completely if you choose by unchecking the channel concerned.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 327

MAIN TITLE
SUB-TITLE

Python

LightWave 11 Features

Python Scripting
About Python Scripting

Python is an industry standard programming language prevalent in most CG pipelines. The inclusion of Python in LightWave 11, alongside the existing LScript scripting language, allows further integration of LightWave into studio pipelines as those familiar with Python can quickly begin writing tools for LightWave. Python is incorporated into both Modeler and Layout and can be accessed directly using the console button in either. You can also load individual Python scripts by clicking on the Python button on the interface. Python scripts can be added to the interface in exactly the same manner as LScripts meaning that the end-user will see no dierence between a script and a native function (other than speed of execution). Access to Python is identical between Layout and Modeler. In the Utilities tab there are two buttons in the Python group. Open Console opens a Python console that allows you to immediately execute commands within the Python environment, while the Python button opens a le requester for you to choose a Python le to execute. The introduction of Python into LightWave was engineered as a two-tiered integration. The rst tier was designed to wrap the LightWave SDK as closely as possible in a one-to-one fashion. This means that Python scripts would be coded to function in much the same way a native-code plugins (e.g., C++), using the same low-level mechanisms and interfaces. This rst tier was introduced in the 11.x series. The second tier, scheduled for the LightWave 12.x series and beyond, adds high-level elements on top of the rst tier, softening the raw exposure to the LightWave SDK with simplied functionalities intended to reduce the code burden on the script writer, and expedite overall plugin creation (much as LScript does in its wrapping of the LightWave SDK). Both tiers are designed to exist simultaneously within the Python environment, providing the script writer alternatives that best suit their needs. Indeed, any combination of the low-level and high-level tier elements can be intermixed at the writers whim. Python 2.7.2 is installed with LightWave 11.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 329

LightWave 11 Features

Python Scripting
Python Resources
In LightWave 11.5 we have full LightWave-oriented Python documentation in the LightWave/sdk folder and there are more example scripts in the LightWave/support/pugins/scripts/Python folder. There are also lots of people out there who can teach scripting in general and Python specically and it doesnt have to cost anything. Here are some good sites oering free courses: http://docs.python.org/tutorial/index.html - A good place to start. The docs for Python itself. http://wiki.python.org/moin/BeginnersGuide/NonProgrammers - A guide to several good resources for learning Python, including starter guides for people that have never programmed before. http://www.diveintopython.net/ - An open source guide for programmers who are new to Python, but not programming in general. Available in several languages. http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00-introduction-tocomputer-science-and-programming-fall-2008/ - MITs Introduction to Computer Science and Programming. Uses Python and teaches computational thinking.

Bob Hood, inventor of LScript, and integrator of Python into LightWave, has made an LScript to Python converter available at http://www.lucidgears.com:21134/

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 330

LightWave 11 Features

Python Scripting
Open Console

LightWaves Python console serves two purposes. It can act as a single-line interpreter for single commands to be passed straight to Python, or if you click on the down arrow on the right side of the window, you can change the console into a multi-line editor. When in multi-line mode, you can write an entire script using the editor, and only when you press Ctrl-Enter will the script be executed. In the window, there are several buttons: Clear Log - clears the output window at the top of the console of any command history and output (both informational and error) from the Python interpreter. Save Log - will save the entire log to a text le. Open on Error - will automatically open the console whenever text is printed to stderr (generally indicating an error has occurred within the Python environment). Max Lines - sets how much history to keep in the output window, the default is 100 lines. A setting of 0 here will be unlimited history. The history is only kept for the current LightWave session, if you quit LightWave without saving the log it will be lost.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 331

LightWave 11 Features

Python Scripting
Python
This button will allow you to load and execute an existing Python script from disk. LightWave no longer compiles scripts automatically. If you wish to compile your script to protect it from interference, and have Python installed, you can do so from the command line with:
python -c import <module_name>

You can turn bytecode generation back on within the LightWave environment and import your module there (it must be somewhere in the a sys.path locaiton) by entering these three lines of Python code into the Console:
import sys sys.dont_write_bytecode = False import <module_name>

Where <module_name> is the name of your Python script (e.g., add_null.py would have a module name of add_null). If the compiled version is the only le available, Python will simply run it. This means for those wishing to protect their Python source, it is possible to distribute only the compiled version.

New Plugin Architectures


In 11.5 we have added the following plugin architectures to the Python integration, along with example scripts: Frame Buer Environment Shader Nodes Instancer Image Loader Image Saver

Single-Shot Format
For programmers familiar with LScript, Python can seem verbose by contrast. 11.5 introduces a more immediate way of using Python for single-shot scripts - scripts that are executed and then forgotten. Two examples have been created to illustrate the new single-shot format for those plug-in architectures. They are re-formatted versions of the existing example scripts add_null_ ss.py in the Generic folder, and make_test_ss.py in the CommandSequence (Modeler) folder. Full documentation can be found in the Python documentation in the LightWave/sdk folder.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 332

LightWave 11 Features

Python Scripting
Example: Hello World in Single-Shot
For generic scripts in Layout, Single-Shot mode means Hello World can now be this:
import lwsdk lwMF = lwsdk.LWMessageFuncs() lwMF.info(Presenting..., Hello, World!)

Instead of this:
import lwsdk __lwver__ = 11

class HelloWorld(lwsdk.IGeneric): def __init__(self, context): super(HelloWorld, self).__init__() # LWGeneric ------------------------------------------def process(self, ga): lwMF = lwsdk.LWMessageFuncs() lwMF.info(Presenting..., Hello, World!) return lwsdk.AFUNC_OK

ServerTagInfo = [ ( Python Hello World, lwsdk.SRVTAG_USERNAME | lwsdk.LANGID_USENGLISH ), ( Hello World, lwsdk.SRVTAG_BUTTONNAME | lwsdk.LANGID_USENGLISH ), ( Utilities/Python, lwsdk.SRVTAG_MENU | lwsdk.LANGID_USENGLISH ) ] ServerRecord = { lwsdk.GenericFactory(LW_HelloWorld, HelloWorld) : ServerTagInfo }

Python Reduced Instruction Set module (PRIS)


The second phase of the Python integration into LightWave entails a simplication of the existing interfaces. These interfaces, in most cases, are fairly raw wrappings of the the LightWave SDK. While experienced C/C++ plug-in writers would be familiar enough with such interfaces to be comfortable writing Python plug-ins, there is another contingent -- namely, the LScript plug-in writer -- who would nd such interfaces quite alien and complex, especially given LScripts high abstraction of the SDK. For this reason, the simplication should present the LightWave SDK
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 333

LightWave 11 Features

Python Scripting
within the Python environment in a way that will make experienced LScript users as comfortable with writing Python plug-ins as experienced C/C++ developers are with the current SDK. The approach, then, is to duplicate LScripts wrapping of the SDK elements to such an extent that existing example LScripts can be recreated within the Python environment in a form that would be largely recognizable by experienced LScript developers. This LScript-like layer will be written purely in Python, and can peacefully coexist -- and even co-mingle -- with the existing, more direct wrapping. It should be noted that some idiomatic, as well as most syntactical, LScript elements will not be duplicated within this simplication layer, as Python contains its own idiomatic elements that achieve the same eect. For example, syntactically, where LScript would increment an integer variable i by 1 unit using the ++ operator, Python performs this action in its own idiom (i.e., i += 1). So, only the interfaces to the LightWave SDK will be covered by this simplication layer, not the LScript language syntax. In addition, LScript highly abstracts the basic plug-in Handler API (with callbacks such as create(), newtime() and process()). This simplication layer may, at some future point, also attempt to replicate this reduced complexity, but will likely not do so in its rst implementation. This means that the currently dened idiom within Python for constructing a persistent LightWave plug-in will remain necessary. By way of example, within Modeler Python, an action to freeze curves would require the following code (excerpted from the shipping example Modeler Python script gears):
if self._geartype == gears.SMOOTH: result = mod_command.execute(mod_command.data, cs_dict[FREEZECURVES], None, lwsdk. OPSEL_USER)

Simplifying this would be subtle, but would likely greatly improve the script writers experience, in this form:
if self._geartype == gears.SMOOTH: lwsdk.freezecurves()

Adding a point to a mesh also presents opportunities for subtle simplication. In the current Python implementation, it requires numerous arguments to achieve:
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 334

LightWave 11 Features

Python Scripting
ptID.append(mesh_edit_op.addPoint(mesh_edit_op.state, pt)) ... if dyna_monitor: result = dyna_monitor.step(dyna_monitor.data, 1) if result: cancelled = True break ... if self._geartype == gears.ANGULAR: mesh_edit_op.addPoly(mesh_edit_op.state, lwsdk.LWPOLTYPE_FACE, None, Gear, ptID)

Which can be collapsed into an LScript-like simplication:


ptID.append(lwsdk.addpoint(pt)) ... if lwsdk.monstep(): cancelled = True break ... if self._geartype == gears.ANGULAR: lwsdk.addpolygon(ptID, Gears)

This approach not only reduces the code and related arguments, presenting fewer opportunities for error in writing the plug-in, but can also reduce the anxiety for non-professional plug-in developers looking to write their own solutions.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 335

LightWave 11 Features

Python Scripting
Please also read the Python documentation in LightWave/SDK to make sure you are referring to the latest version of this article.

Writing a Python plug-in for LightWave 11


This is a brief article intended to detail the design philosophy and best-practices approaches to writing a Python plug-in for LightWave 11.

Python Coverage in LightWave 11


Python in LightWave 11 lays almost directly atop the products plug-in API. While a few elements were added during development that are intended to either improve performance or ease the script writers burden, writing a Python plug-in in LightWave 11 will be extremely similar in structure and execution to a native-code (C/C++) plug-in. This was done by conscious decision, implementing a low-level API upon which a simpler value-added approach will be built in subsequent releases of LightWave.

The Factory Approach


A factory produces product to be consumed. For example, a car factory produces vehicles that people drive. A shoe factory produces all types of shoes for people to wear. However, some more advanced types of factories not only produce a product to be consumed, they also manage the life cycle of that product to ensure its availability and integrity. Netix would be an example of this latter type of factory, in that it produces a product (it mails discs to you containing movies or television shows) that you consume (watch) and then return to the factory for disposal (you do not decide the disposition of the product, the factory does after you have nished with it). In programming terms, a factory behaves in a similar fashion: It produces an object that you interact with (consume), and then return for disposal. LightWaves plug-in API is designed with this type of factory approach in mind. When a plug-in is activated, a Factory is created. Once available, a Factory knows how to create and destroy its product. Python for LightWave adopts this design by having an actual Factory class dened for each architecture that LightWave will employ when it needs to create or destroy an instance. These Factories produce instances of a plug-in for LightWave to consume, and then determines their dispositions when LightWave indicates that they no longer needed. For each plug-in type currently available in Python for LightWave, there is a corresponding Factory dened to manage its instances: GenericFactory CommandSequenceFactory ShaderFactory ObjReplacementFactory
Page 336

Copyright 1990-2013 NewTek, Inc. All rights reserved.

LightWave 11 Features

Python Scripting
DisplacementFactory LayoutToolFactory ChannelFactory ItemMotionFactory MasterFactory CustomObjFactory ImageFilterFactory

Programming by Contract
Programming by Contract is a fancy software term that really just means that some component of a product guarantees to provide a predened set of unchanging functionalities (or a known interface), and by doing so, dierent products that provide this same level of functionality can be reliably interchanged. For example, every motor vehicle on the planet guarantees to provide a given set of common and immutable features and abilities, such as an engine capable of moving the vehicle, a braking system capable of stopping the vehicle, and a steering mechanism whereby the vehicle can be maneuvered. Although there are thousands of dierent types of motor vehicles in the world, once you have mastered the common features of one, you pretty much know how to use them all, regardless of how they look or who made them. A car is a car when your goal is getting from point A to point B, and so every car becomes interchangeable to you. In programming, such a well-known and unchanging interface will contain a pre-determined number of methods, who each have the same arguments, and all such interfaces that provide this same functionality can be used interchangeably. Python for LightWave implements such an interface design, whereby the plug-in writer implements the interface of a pre-dened component in their Python class denition through inheritance. This inheritance of a pre-dened plug-in interface ensures that the Python plug-in provides an immutable set of methods that can be used regardless of how much more is added. In this way, you can dene your own custom functionality in your plug-in without requiring the host (i.e., LightWave) to know the specics. As long as you have stayed true to the contract, LightWave will know how to deal with any Python plug-in of any pre-dened type, even if each one provides completely unrelated functionality within the application. The plug-in types that you can create in Python for LightWave each has a corresponding interface from which your own Python classes must inherit. To denote that they are interfaces, and therefore represent the contract between your class and LightWave, each is prexed by a capital I: IGeneric ICommandSequence IShader IObjReplacement
Page 337

Copyright 1990-2013 NewTek, Inc. All rights reserved.

LightWave 11 Features

Python Scripting
IDisplacement ILayoutTool IChannel IItemMotion IMaster ICustomObj IImageFilter

The Inheritance Chain


Each dened plug-in interface provides a set of methods that the Python subclass can override (part of the object-oriented mechanism called polymorphism). Polymorphism ensures that the message sent to the class (in the form of the method call) is serviced by either the class itself, or by some parent (or any one of potentially numerous grandparents) of the class, even if the class itself does not provide an implementation of the method. In Python for LightWave, if one of the inherited classes does not service the method, some default internal implementation will be used, and in most cases, it will basically do nothing - although in certain critical situations, the inherited implementations do attempt to return a correct default value, if required. Typically, there will be an inheritance chain from which a plug-in interface will inherit before it ever reaches the Python level. For example, one of the available plug-in interfaces that a Python plug-in can inherit from is called IDisplacement (remember that the I prex indicates that this Python class is an interface, the paper upon which your contract with LightWave is written). The IDisplacement plug-in interface itself inherits from several other interfaces: IHandlerFuncs, IInterfaceFuncs, IGizmoFuncs, and IItemFuncs and IRenderFuncs. Each of these interfaces from which IDisplacement inherits contribute their own methods -- and sometimes, data members -- to the sum of the IDisplacement interface.

Dont start sweating just yet; this is just informational. All of this is internal, and it is available to the plug-in writer by the time it reaches Python. And remember that you can always see the inheritance hierarchy of an exported class by using the Python help() command on it (see the PCore Console article for an example of this). So, by the time the Python plug-in writer uses a plug-in interface like IDisplacement, many methods are automatically added to the class dened for the Python plug-in. In order to help distinguish methods, these grandparent classes from which a plug-in interface inherits will have prexes added to their method names. These prexes are intended to not only help with readability (i.e., you can look at a Python plug-in and know pretty quickly which methods are inherited), but they also provide tidy name spaces to keep methods separated. In other words, you wont accidentally override an interface method by using your own method name. Most methods
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 338

LightWave 11 Features

Python Scripting
that can be overridden will be prexed so theres no confusion. Lets continue the example by looking at a Displacement Map Python plug-in.

Anatomy of a Python Plug-in


One of the example Python scripts provided with the SDK is called lazy_points.py. This is a Displacement Map plug-in, based on several incarnations that preceeded it. I wont reproduce the entire script here; I will simply highlight the salient parts to augment our discussion. In order to use the elements of the LightWave SDK in your Python script, you must import the lwsdk module. This gives you access all the LightWave SDK elements.
import lwsdk

Using this form of import requires that all elements imported from this module be accessed by their name space prex (in this case, lwsdk.). You may import all the elements within the lwsdk name space into your own, so that they can be referenced without the prex, but its good practice to keep the prex in place, as it avoids collisions between identically named elements, and provides better readability to your script. With the lwsdk module imported, we can begin creating a new class that inherts from a valid LightWave plug-in interface (in this case, IDisplacement).
class lazy_points(lwsdk.IDisplacement): ...

This declaration creates a new class based on the IDisplacement plug-in interface. At this point, we have agreed to a contract with LightWave that guarantees we will provide an unchanging set of known functionalities that will make our class respond to LightWave like an IDisplacement interface, no matter how much unique content we add to the class. Once the class is dened, you are free to start adding your own methods to the class. However, in order to provide any useful functionality to LightWave, youll need to override some of the inherited methods. First up, we will dene a method that overrides the entry point for the UI callback (inherited from the IInterfaceFuncs interface, which paraphrases elements found in the SDKs LWInterface structure). As mentioned previously, the IInterfaceFuncs interface is a grandparent inheritance of our class, so the methods it contributes to IDisplacement will have a name space prex called inter_ to uniquely identify them:
# LWInterfaceFuncs -----------------------------------def inter_ui(self): ...

For those familiar with the LightWave SDK, this Python method maps directly to the options() callback in the LWInterface structure. It is within this callback that the plug-ins user interface should be constructed and displayed.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 339

LightWave 11 Features

Python Scripting
To support GUIs in Python plug-ins, the LWPanels UI toolkit has been hand-wrapped for use by Python plug-ins, and examples of this can be found in the provided sample plug-ins.

It should be noted at this point that XPanels is not currently supported in the LightWave 11 Python implementation. Support for this may come in later releases.

Another grandparent inheritance found within IDisplacement plug-in interface is the IRenderFuncs interface implemention (which is a C++ version of the SDK LWRenderFuncs base structure). This interface denes three methods, init(), cleanup() and newTime(), each with the grandparent prex identity of rend_. In the lazy_points example, only one of these methods is overridden, leaving the others to fall back to the base class implementations, which do nothing:
# LWRenderFuncs --------------------------------------def rend_newTime(self, frame, time): ...

Like IDisplacement, most Python plug-in interfaces also inherit the IHandlerFuncs interface (a paraphrase of the LWInstanceFuncs structure), which provides the load(), save(), copy() and descln() methods, each with the grandparent identier prex of inst_.
# LWInstanceFuncs ------------------------------------def inst_load(self, state): ... def inst_save(self, state): ... def inst_copy(self, source): ... def inst_descln(self): ...

Something to note is that the functionality of the LWInstanceFuncs structure has been split between two dierent entities within Python for LightWave. As noted above, the load(), save(), copy() and descln() functions have been placed into the plug-in interface domain, while the create() and destroy() functions have been more properly delegated as Factory functionalities.
Copyright 1990-2013 NewTek, Inc. All rights reserved. Page 340

LightWave 11 Features

Python Scripting
The IItemFuncs interface is also implemented by IDisplacement, which provides the changeName(), changeID() and useItems() methods, with the grandparent prex of item_:
# LWItemFuncs ... ---------------------------------------def item_changeID(self, itemid_list):

Finally, the IDisplacement plug-in interface itself denes its own methods, evaluate() and flags(), which your class needs to override to implement the Displacement Map functionality. Because your class inherits directly from IDisplacement, these methods are considered to be your property, and as such, they are not prexed.
# LWDisplacement -------------------------------------def flags(self): ... def evaluate(self, displacement_access): ...

Producing Instances
Once you have constructed a subclass of a valid plug-in interface (for example, lazy_points), youll need to provide a Factory that will be responsible for managing its instances. As noted previously, a Factory has been dened for each available Python plug-in interface in LightWave 11, and an instance of each will need to be created to manage the life cycle of each instance of your plug-in interface subclass. A Python plug-in Factory has a simple implementation. Continuing with the Displacement Map example, the Factory dened for the IDisplacement interface looks like:
class DisplacementFactory(IDisplacementFactory): Default Python Factory for IDisplacement def __init__(self, name, klass): super(DisplacementFactory, self).__init__() self._instances = [] self._klass = klass self._plugin_name = name def create(self, context): # return an instance of our klass instance = self._klass(context) self._instances.append(instance) return instance

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 341

LightWave 11 Features

Python Scripting
def destroy(self, instance): assert isinstance(instance, self._klass) self._instances.remove(instance) def name(self): return self._plugin_name

As you can see, the Python Factory implements the IDisplacementFactory interface, which itself inherits from a C++ class called IFactoryFuncs. This inheritance chain provides methods like create(), destroy() and name(). These methods are called by LightWave to produce instances of your plug-in interface class, and to dispose of the instance later when it is no longer required. Initializing a Factory instance requires a name for the plug-in class. This is used by LightWave to identify the class of the plug-in. This name corresponds identically to the value you would provide in the name data value when constructing a ServerRecord for a native-code plug-in. In addition, a reference to the Python class to be instantiated must also be provided to the Factory instance when it is constructed (this is the klass argument to the initialization code above). As you can see from the Factory internals snippet above, this information is used to generate instances of the referenced class. When each class instance is created, the architecture-specic context information passed in by the application is forwarded on to the instance for its use (see the LightWave SDK documentation to know what type of context it expects, if any). As instances are created by the Factory, links are maintained within the Factory to the instance, and released by the Factory only when the destroy() method is invoked for that instance. This behavior actually has a very practical application: A link must be maintained to the created instance to prevent Pythons garbage collector from reclaiming it at inopportune times. Only when the destroy() method is called, and the instance is removed from the internal list (thereby decrementing its internal reference count within Python), can it safely be reclaimed. All these details are handled for you automatically by the default Factory implementations. However, you need to be aware of how a Factory functions (and why) should you wish to subclass a particular Factory type to provide your own custom functionality.

The provided Master Python example does just this, subclassing the MasterFactory class with some trivial functionality, and then using this subclass to manage the plug-in instance data life cycle instead of the default Factory implementation.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 342

LightWave 11 Features

Python Scripting
Making Your Plug-in Available
Ultimately, youll need to make LightWave aware that your plug-in actually exists. Subclassing the plug-in interface and dening a Factory to manage it is the bulk of the exercise, but it is not the complete solution. You will need to dene two nal elements in order to make your plug-in live within the running application. These items are the ServerTagInfo and ServerRecord structures. In format, the ServerTagInfo structure is virtually identical within Python as it is in a nativecode plug-in (please refer to the LightWave SDK documentation). The only real dierence is the container used for the information. In C/C++, a structure is dened. In Python, a series of sequences (lists or tuples) are used to contain the information. In the case of lazy_points, we dene several useful data elements within the ServerTagInfo for the plug-in:
ServerTagInfo = [ ( Python Lazy Points, lwsdk.SRVTAG_USERNAME | lwsdk.LANGID_USENGLISH ), ( Lazy Points, lwsdk.SRVTAG_BUTTONNAME | lwsdk.LANGID_USENGLISH ), ( Utilities/Python, lwsdk.SRVTAG_MENU | lwsdk.LANGID_USENGLISH ) ]

Here we dene the SVRTAG_USERNAME and SVRTAG_BUTTONNAME values that provide text values that will be displayed to the user in various contexts, and the location hint using SVRTAG_ MENU where the plug-ins presence should appear on the applications interface. The types of values available for denition in a ServerTagInfo structure can be found in the LightWave SDK documentation. With a dened ServerTagInfo (one for each plug-in instance to be managed), a ServerRecord must be constructed at the top-level of the modules environment (i.e., as a global variable):
ServerRecord = { lwsdk.DisplacementFactory(LW_PyLazyPoints, lazy_points) : ServerTagInfo }

A ServerRecord is a Python dictionary (a series of key/value pairs). As you can see in the snippet, an instance of the Factory that will manage instances of the interface class is used as the key for the dictionary entry, and the ServerTagInfo dened for the plug-in class is used as the value for the pair. Any number of key/value pairs can be dened within the ServerRecord, one for each plug-in class denition to be found within the le. While any number of ServerTagInfos can be dened (each with a unique name, of course), only one ServerRecord instance should exist in your script, and it must be named ServerRecord to ensure that the PCore system can locate it. Bob Hood, the author of this article, inventor of LScript and integrator of Python into LightWave; has also made an LScript to Python converter. Its available at http://www.lucidgears.com:21134/

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 343

LightWave 11 Features

Information
For More Information and Updates
For updates to LightWave, this manual and all the latest LightWave news including a gallery, tutorials, articles about LightWave artists and new third-party plugins visit: http://www.lightwave3d.com

Learning Resources
For help learning LightWave visit: http://www.lightwave3d.com/learn/ http://www.youtube.com/user/OcialLightWave3D

Sales Inquiries and General LightWave Support


For questions related to Pre-Sales, Licensing, Installation, or General LightWave software support: Email: support@lightwave3d.com Website: http://www.lightwave3d.com/support/

LightWave Bugs & Feature Requests


Bug Reports: lw-bugs@newtek.com with the subject heading: BUG: Description Feature Requests: lw-features@newtek.com with the subject heading: FEATURE: Description BUG report emails should have attached Zip-archived content (scenes, objects, images) simplied down to just show the problem. The le size for any attachments should not exceed 10MB.

LightWave Community
To connect with other LightWave artists for tips, tricks and tutorials, visit our online community: http://forums.newtek.com

Copyright and Trademarks


LightWave and LightWave 3D are registered trademarks of NewTek, Inc. Copyright 1990-2013 NewTek, Inc. All rights reserved. ZBrush and GoZ are registered trademarks of Pixologic, Inc. Maya, MotionBuilder and FBX are registered trademarks of Autodesk, Inc.
All other brand names, product names, or trademarks belong to their respective holders.

Copyright 1990-2013 NewTek, Inc. All rights reserved.

Page 344

You might also like