Lightwave supports a C like programming language known as Lscript. This allows an artist to perform operations quickly by writing down said operations and telling the machine to execute them. This can be useful as artists may often find themselves performing a mundane operation many times over, Lscript can often help alleviate some of this 'busy work.' Another scenario where Lscript proves very useful would be when an artist creates a model but is curious as to what would happen if certain changes were made, or things were done slightly differently. Lscript's ability to make this far simpler increases with the complexity of the model. Of course there are limitations. For the most part Lscript is only useful if a well defined algorithm can be developed for the problem at hand.

Lscript Basics. Here I discuss the basics of the language from what functions and variables are, to syntax, conventions, loops, etc. There are many simple programs in this section. If you have programmed before you can probably get away with skipping this, or perhaps quickly glancing it over as Lscript does differ from C ... a little.

Intermediate Lscripting . Here I describe the preprocessor, some more useful commands, how to run Lscripts, and a couple simple programs.

Veiw the program used to make the tree seen above.

Veiw the program used to make the planet seen above.

I learn programming best by looking at examples, modifying them and experimenting. I have a few examples here but more can be found in the 'C/Lightwave/lscripts' directory. Most written by Bob Hood who created the language. He operates a web site which is extremely useful (go to 'Lscript in the upper left hand corner of the frame).

Another very useful, but strangely incomplete, resource is Newtek's documentation. This is available online or for download.

Also a very useful tree tutorial from which I derived my tree program's algorithm. Written by Dave Jerrard.

Feel free to use anything you see here. I encourage you to point out where you got things from if they are derived directly from me(Rob Abbott). There is far more that I didn't cover I point you to the documentation.