How to use Lightnet for net Render

From LightWiki

Jump to: navigation, search

by Carlo Macchiavello


Lightnet is an easy and comfortable way to replace LightWave3D's built-in network renderer. Lightnet is free but unfortunately only available for windows.

Contents

How to set up your work

First, you need to set up your content, because everything hinges on the correct settings of content dir, LightWave 3D paths are all content-related, and if you set up the content directory correctly, half the work is done.

Second, you need to set up the shared folder for Windows. It is very important to have a fast net, better if you have a gigabit LAN, because if you have many computers that load and send render data, you need lots of speed. Go to your where you store your Content and click with the right mouse button on a specific Content directory. Select "Share this disk", and enable read and write permission for users on your network. Go to your LightWave3D folder, and do same thing.

Now your folders are available on your network, then you must mount them as network shared drives. Image:lightnet-01.JPG

Browse your Net Resources, workgroup and browse until you find your computer. Under your computer you can see Content and LightWave3D folders, right click on first and select "Connect to network drive" and set up Content as a disk with the letter Y: and the same for LightWave3D folder and connect as disk X:

Remember that you must use the same letter for the drives on every computer that you want to use for net rendering, to have the same path on every computer.

A good setup for LightWave3D 9

To avoid the major problems with plug-in setup and more, you can use a smart solution: go to the X: disk and you can find your LightWave stuff, build a new folder called config, that we use later for common configuration path.

Go to X:\programs and select Modeler and Layout and with a right mouse click choose "send to desktop" - you will create a copy of the icons on the desktop.

Close all open windows, and go to the desktop and right click on the Layout icon and choose Properties from the right mouse button menu.

add the suffix -c to original path and directly follow the path where you want to have all config files (with no space after the -c).

Image:lightnet-02.JPG

save and close it.

Do the same thing for the Modeler icon.

Start Modeler, which will probably start without plug-ins (LightWave 3D v9 has an exciting new feature that autoscans the plugins folder) and use "Edit Plugins" (Alt+F11) to scan the folder in the X: path, it's vital you scan the X: drive and not your local disk to avoid a lots of problems later.

After the plugin scan reset the interface by clicking on the presets drop-down menu in the Edit Menus (Alt+F10) window, to have all plugins at right place, or load your personal configuration, and close Modeler.

Do the same thing for Layout, set the content directory to Y: then close it.

Now you have the hub: set a 1-minute autosave and automatic shutdown.

What we have done?

We have told LightWave to read and write configuration files from and to a network drive, this will mean that every render node will find the same setup, and when the network setup works for the first node, it will work for every other node that shares the same network drive with the same drive letter. I usually use my LightWave3D on the network drive too, because if I replace a plugin, or change something, and I use this new plugin in my scene, I'm sure that my renderfarm can render it (with some exceptions, when some rare plugin doesn't work in net render...)

We can now download LightNet from www.joejustice.org, at time of writing the latest version is 4.

Once downloaded, you can extract LightNet to the X: disk in a new LightNet folder. Lightnet puts its configuration files in the windows folder of the local computer, so that means you can setup without fear of problems because you started it from a shared disk. Lightnet4Options.ini is the text file where lightnet will save its configuration.

Start Lightnet by doubleclicking its icon, and we are ready to start the configuration. Go under Program menu, and click on Options.

Image:lightnet-03.JPG

Like you can see in the picture, you must set up the following:

  • Screamer processor number a growing number that allow the net render to identify the node, you can start with 1, and grow. If you have two or more processors or cores in your computer you can write "1 2" or "1 2 3 4".
  • Commands directory is a folder where nodes and net render write files to talk together.
  • Screamer file is the path to lwsn.exe
  • Screamer config file or directory is the path where the nodes can find the LightWave config files.
  • Config Number is the configuration file number, config files ended in 3 for earlier versions of LightWave, 8 for LightWave 8, 9 for LightWave 9, easy...

now click on Ok.

Under programs try with check config, if all is okay, you will see the list of saver plugins.

Image:lightnet-05_check-config.JPG

If you do not see the above, or LightNet asks for content, that means you did not set up Layout correctly. Check your settings.

If all is okay do the same thing on all computers that you want to use as render nodes.

Enable the master

Now is a time to enable the master option, the controller of all nodes. You can enable only one master per network, no more, or you have no end of problems.

Under the menu programs you have Master option, enable it for a computer that you use to send all render and you want to use to manage the whole renderfarm.

Due to the necessity of speed and resource, if you have many computer that load and save from a single computer where you have content and the LightWave3D folder, you should not use the same computer as a render node, or you risk a performance bottleneck. A better solution is to add another network card to a computer, to speed up the sharing of data.

Coming back to the LightNet options, and you can see a new menu, the master Option, and here you just need to input the total number of nodes on the renderfarm.

Image:lightnet-04.JPG

Close the windows, and close LightNet, to save all configurations.

Now we are ready to start the first render to test the network. I use a simple scene that renders to the network path (very important to avoid problem in the network render because all computer must be able to see and write to a lan path).

Image:lightnet-06_render-along-a-.JPG

Now load the scene by going to the scene menu of LightNet and load it using the Add tool, if all is working the LightNet window will show it is ok, and the content directory in the lower part of the window is Y:

Click and you are ready to start the net render, if the scene points to the wrong path, or doesn't saving options set you will see a warning window.

To start to render you must start the render node, go on menu called Computers and select "start" and follow the first screamernet, of local computer, and more.

Image:lightnet-07_start-screamern.JPG

You can see Screamernet starting and loading all the files and beginning to render. It is very important to see the screamernet window the first time that you test net render because if there are any problems you can see immediately and avoid having to search for a problem by trial and error.

Image:lightnet-08_screamern.JPG

Now if all works fine, you can see the render working on different processors and different computers in the LightNet interface, you can add new scenes, can change the order of scenes, and manage your renders as you prefer.

Image:lightnet-09_rendering.JPG

What if something doesn't work?

Check your content folder - most net problems are caused by bad content setup. Other things that can cause problems:

  • low space on render disk
  • plugins that don't render over a network
  • slow network speed can cause many problems in rendering
  • writing permission problems from other computers on content

remember that some computations need baking to be consistent when net rendering, for example dynamics must be saved for all particles and objects calculated or every computer will use a different seed.


(henceforth by Lernie Ang)

Failed verification of finished scenes

When a scene has been considered finished by LightNet, it would have verified this automatically. However, if it had verified it for a user-specified time and still found missing frames, you will notice an empty box icon under the column Vfy, which means LightNet has finished allocating the scene but not all frames have been accounted for. This is not always correct however. Therefore you must always manually verify it by pressing Control + V.


Rendering single missing frames after verification

If you pressed Control + V to verify the completeness of your rendered frames and informed that a few frames, or a single frame was missing, LightNet may have a problem loading that scene up for a single-frame render. I am not sure why LightNet has this problem, but the solution I have had to this was to simply verify it (Control + V) repeatedly, clicking OK whenever LightNet prompts me whether or not I want to render the frame(s) again. By doing this you send a render command to multiple nodes, which hopefully, one of them will successfully initiate loading a scene and start rendering that frame.


How to handle remote computer crashes, or force kill a computer for rendering and recovering

When a render node has crashed, LightNet will only pick it up once you dismiss the crash information box. Once you do this, however, LightNet will usually remove that crashed node from its computer list. Sometimes it does not. When it does not you must select the computer in the list (it does not matter if you select it from the Master LightNet UI or from a Remote LightNet UI) and press Control + C to tell LIghtNet the computer has crashed. When if you executed this on the Master you will see the removal of the computer from the list instantly. If you used a Remote LightNet UI, you must press Control + U to update your list so you can notice the removal. It is only after the 'acknowledge removal' by the Master can the node be restarted again. When the Master's list reflects the removal of the render node, start the remote Screamer once again.

There are situations you need to force kill a render node, like when a render has gone bad and further rendering will just be a waste of time. The process of force killing a node is to first close the Screamer window forcibly (e.g. click 'X' to close the window). If LightNet detects the crash it will automatically remove it from the list. But if does not, you must press Control + C to force delete it from the list. Again, the Master must reflect the removal of the node. If you pressed Control + C in a Remote LightNet UI, press Control + U to update the list.

If, for some reason, the Master is refusing to acknowledge any removal, you may have go to the Master LightNet UI and press Control + C there. Once more, only after a Screamer is removed from the Master computer list can that Screamer be restarted.

Miscellaneous Tips

Changing Render Settings On Scene Load

LightNet is always in a constant state of wanting to render something. Sometimes it is desirable to change some render settings, like Start and End Frames before you start to render. Unfortunately, when initially loading a scene into LightNet, these options are not available. To change the Start and End Frames before LightNet even renders them, check on "Render on Selected Screamers Only" and specify a Screamer that is not active or non-existent. Then click OK. Then right-click on the scene and press "Edit". Here you change the settings. Then on the Options Tab simply uncheck "Render on Selected Screamers Only", click OK, and LightNet will proceed as normal.


Rendering Multiple Single-Frame Scenes

Though a common-sense advice on proper LightNet feature usage, when you have a bunch of scenes that render out as single frames, be sure to check "Render on Maximum Computers" and specify '2', *not* '1'. I'm not sure why this is so, but LightNet often has trouble using one computer alone. Specifying '2' prevents LightNet from assigning too many computers on a single scene that will only render one frame.


Submitting Jobs From A Remote Computer

Remember that all LightNet clients (Remote) may access the Master as long as you are pointing to that Master's Commands directory. For example, in my own workplace, the set-up is that the Master is in a dedicated computer, which is nothing special, except that the whole computer is only for mastering all render distribution. Whenever I want to submit a scene for render, I open up LightNet (running as Remote) on my workstation and I automatically see the Master's scenes list and computers list. (I may press Control + U *twice* or even *thrice* to make sure the list I see is the most current one, but for submitting jobs this is not necessary). Then on my workstation's LightNet UI, I open up a scene. The Master automatically detects the event and handles the request.

Views
Personal tools