# LightWave 3D

LightWave 3D is a 3D computer graphics program developed by LightWave Digital. It has been used in films, television, motion graphics, digital matte painting, visual effects, video game development, product design, architectural visualizations, virtual production, music videos, pre-visualizations and advertising.

## Overview

LightWave is a software package used for rendering 3D images, both animated and static. It includes a fast rendering engine that supports such advanced features as realistic reflection, radiosity, caustics, and 999 render nodes. The 3D modeling component supports both polygon modeling and subdivision surfaces. The animation component has features such as inverse and forward kinematics for character animation, particle systems and dynamics. Programmers can expand LightWave's capabilities using an included SDK which offers Python, LScript (a proprietary scripting language) and C language interfaces.

## History

In 1988, Allen Hastings created a rendering and animation program called VideoScape 3D, and his friend Stuart Ferguson created a complementary 3D modeling program called Modeler, both sold by Aegis Software. NewTek planned to incorporate VideoScape and Modeler into its video editing suite, Video Toaster. Originally intended to be called "NewTek 3D Animation System for the Amiga", Hastings later came up with the name "LightWave 3D", inspired by two contemporary high-end 3D packages: Intelligent Light and Wavefront. In 1990, the Video Toaster suite was released, incorporating LightWave 3D, and running on the Amiga computer.
LightWave 3D has been available as a standalone application since 1994, and version 9.3 runs on both Mac OS X and Windows platforms. Starting with the release of version 9.3, the Mac OS X version has been updated to be a Universal Binary.
The last known standalone revision for the Amiga was LightWave 5.0, released in 1995. Shortly after the release of the first PC version, NewTek discontinued the Amiga version, citing the platform's uncertain future. Versions were soon released for the DEC Alpha, Silicon Graphics (SGI), and Macintosh platforms.
LightWave was used to create special effects for the television series Babylon 5, Star Trek: Voyager, Space: Above and Beyond, seaQuest DSV, Lost, and Battlestar Galactica. The program was also utilized in the production of Titanic as well as Avatar, Sin City, and 300. The short film 405 was produced by two artists from their homes using LightWave. In the Finnish Star Trek parody Star Wreck: In the Pirkinning, most of the visual effects were done in LightWave by Finnish filmmaker Samuli Torssonen, who produced the VFX work for the feature film Iron Sky. The film Jimmy Neutron: Boy Genius was made entirely in LightWave 6 and messiah:Studio.
In 2007, the first feature film to be 3D animated entirely by one person made its debut, Flatland the Film by Ladd Ehlinger Jr. It was animated entirely in LightWave 3D 7.5 and 8.0.
In its ninth version, the market for LightWave ranges from hobbyists to high-end deployment in video games, television and cinema. NewTek shipped a 64-bit version of LightWave 3D as part of the fifth free update of LightWave 3D 8, and was featured in a keynote speech by Bill Gates at WinHEC 2005.
On February 4, 2009, NewTek announced "LightWave CORE" its next-generation 3D application via a streamed live presentation to 3D artists around the world. It featured a highly customizable and modernized user interface, Python scripting integration that offered realtime code and view previews, an updated file format based on the industry standard Collada format, substantial revisions to its modeling technologies and a realtime iterative viewport renderer. It was planned to be the first LightWave product to be available on the Linux operating system. However, on June 23, 2011, CORE was cancelled as a standalone product and NewTek announced that the CORE advancements would become part of the ongoing LightWave platform, starting with LightWave 10 (which was originally LightWave HC, intended to be a transitional software system comprising the classical Layout and Modeler applications during the initial stages of CORE, in order to supply compatibility with the existing toolset for LightWave).
On December 30, 2010, NewTek shipped LightWave 10. It added an interactive viewport renderer (VPR), interactive stereoscopic camera rigs, linear color-space workflow, real time interactive physical teleoperation input (Virtual Studio Tools), and data interchange upgrades.
On February 20, 2012, NewTek began shipping LightWave 11 Software, the latest version of its professional 3D modeling, animation, and rendering software. LightWave 11 incorporates many new features, such as instancing, flocking and fracturing tools, flexible Bullet Dynamics, Pixologic Zbrush support, and more. LightWave 11 is used for all genres of 3D content creation-from film and broadcast visual effects production, to architectural visualization, and game design.
On January 31, 2013, NewTek shipped LightWave 11.5 which debuted a new modular rigging system called Genoma. The flocking system was reworked, gaining predator and prey behaviors. The bullet dynamics system was improved to include soft body dynamics, wind forces and to react to bone deformations. Interlinks to After Effects and ZBrush (via GoZ) were added as well. New tools, based on a new experimental subsystem were added to Modeler. It was originally thought that this subsystem would allow further enhancements to Modeler, but disclosures by a developer in the main user forums (since removed by moderators) indicated that this approach had been too problematic and another avenue was being considered to enable Modeler to evolve. FiberFX, the hair/fur system in LightWave, also saw improvements with the 11.5 release, to work with soft bodies and to also directly support curves from Modeler for guiding hair. Additionally, braid and twist support was added, to ease creation of complex hairstyles.
On November 1, 2013, NewTek shipped LightWave 11.6. This release brought a new animation tool, spline control, along with improvements to ray casting (to enable items in the scene to be precisely positioned on a surface, with optional offset. nVidia's CgFX was also implemented, albeit via the legacy shader system. STL support was added to enable output suitable for 3D printers. The virtual studio system was also enhanced to support a LightWave 3D group-authored add-on called NevronMotion, enabling direct motion capture (full body and facial) using consumer devices such as the Kinect (on Windows only) and re-targeting via a simplified user interface. A simplified Python system was made available for the Modeler environment and for common functions. The timeline for Layout support via this simplified system has not been disclosed. Alembic support was also introduced. Since the release of 11.6, two minor patches have been released to resolve software issues (11.6.1 and 11.6.2). In early May 2014, 11.6.3 was released to address a licensing system limitation.
On November 24, 2014, NewTek released Lightwave 2015. The release upgraded Bullet physics integration (constraints, motors, dynamics affecting bones), Genoma rigging automation plug-in with scripting, edge rendering, and the dynamic object parenting workflow. It also added a plate perspective matching tool, and Importance sampling to Global illumination. The retail price was lowered by a third.
On January 1, 2018, NewTek released Lightwave 2018. Features include: Physically Based Rendering System, Render & Light Buffers, New Volumetric Engine, OpenVDB Support, New Lighting Architecture, Surface Editor - Material Nodes & Surface Preview, Virtual Reality Camera, Modifier Stack & Nodal Modifiers, New Cel Shader & Enhanced Edge Rendering, More Integrated FiberFX, Layout-based Parametric Shapes, Physically Based OpenGL, & a Noise Reduction Filter. New Modeler Features include: "A 'Layout View' viewport shows the current camera view from Layout. In addition, LightWave 2018 Modeler provides new fully interactive tools including Lattice, Smoothing, Array and Spline Bridge to speed up your modeling."
In January 2019, LightWave 2019 introduced new integration tools with Unreal Engine, animatable mesh sculpting and painting in Layout, new UV mapping and UDIM tools (as well as support for smoothing groups) in Modeler, improved FBX interchange, shading model customization tools, new shape primitives, OpenVDB creation, shading/rendering enhancements, and workflow/UI improvements.

## Modeler and Layout

LightWave is composed of separate programs, primarily Modeler and Layout. Each program provides a dedicated workspace for specific tasks. When these two programs are running simultaneously, a program called Hub is used to synchronize data between the two.
Modeler, as the name implies, includes all of the modeling features used to create the 3D models, while Layout includes features to arrange the 3D models, animate, and render them. Layout offers ray tracing, global illumination, and render output parameters.
This separation is unique among 3D computer graphics packages, which commonly integrate their modeler and renderer. NewTek asserts dedicating workspaces for specific tasks creates an arguably more efficient 3D production workflow. A long-standing debate in the LightWave user community has consisted of whether or not to integrate Modeler and Layout into a single program. In response to this, NewTek has begun an integration process by including several basic modeling tools with Layout.
There is also a command-line network rendering engine named Screamernet which can be used to distribute rendering tasks across a large number of networked computers. This is used to reduce the overall time that it takes to render a single project by having the computers each rendering a part of the whole project in parallel. Screamernet includes all the features of the rendering engine that is integrated in Layout but without an interactive user interface. LightWave supports 999 render nodes natively.

## Features
### Dynamics

LightWave provides dynamics physics systems supporting hard and soft body motion, deformation, constraint, motorization, environments, and particles. It interacts with 3D object models, bones, and hair (FiberFX). LightWave includes both Bullet and legacy proprietary (comprising ClothFX, SoftFX, HardFX, ParticleFX emitter, wind, collision, and gravity) dynamics engines.

### Hypervoxels

Hypervoxels are a means to render different particle animation effects. Different modes of operation have the ability to generate appearances that mimic:
* Metaballs for objects like water or mercury, including reflection or refraction surface settings
* Sprites which are able to reproduce effects like fire or flocking birds
* Volume shading for simulating clouds or fog type effects.

### Material shaders

LightWave comes with a nodal texture editor that comes with a collection of special-purpose material shaders. Some of the types of surface for which these shaders have been optimized include:
* general-purpose subsurface scattering materials for materials like wax or plastics
* realistic skin, including subsurface scattering and multiple skin layers
* metallic, reflective, materials using energy conservation algorithms
* transparent, refractive materials including accurate total internal reflection algorithms
* dielectric shading to render the behavior of light rays passing through materials with differing refractive indices

### Nodes

NewTek expanded LightWave's parameter setting capabilities with a node graph architecture (Node Editor) for LightWave 9. This Editor enabled broad hierarchical parameter setting on top of its fixed and stack-based parameter setting support. Example node types include mathematical, script, gradient, sample, instance, group, and shader. Nodes are usable within the Surface Editor, Mesh Displacement, and Virtual Studio features. A node plug-in API was released for third party developers to add their own nodes.
A notable example of third-party node development is Denis Pontonnier's Additional Nodes. These free nodes enable modifying images, renders, procedural textures, Hypervoxels, object motions, animation channels, and volumetric lights. Also they enable particles and other meshes to drive node parameters.

### Scripting

LScript is one of LightWave's scripting languages. It provides a comprehensive set of prebuilt functions you can use when scripting how LightWave behaves.
With LightWave 11, NewTek added Python support as an option for custom scripting.

### LightWave Plug-In SDK

The SDK provides a set of C classes for writing native LightWave plug-ins.

## Licensing

Prior to being made available as a stand-alone product in 1994, LightWave required the presence of a Video Toaster in an Amiga to run. Until version 11.0.3, LightWave licenses were bound to a hardware dongle (e.g. Safenet USB or legacy parallel port models). Without a dongle LightWave would operate in "Discovery Mode" which severely restricts functionality. One copy of LightWave supports distributed rendering of up to 999 nodes.