|
1 2 3 4 5 6 7 8
[9] 

Above is a screen shot of DLI_SNUB-Launcher™,
an Aqua GUI for ScreamerNet UB that makes setting up and launching
all
your ScreamerNet UB nodes much more user friendly and far less
error prone. DLI_SNUB-Launcher is available
for download immediately,
with a FREE
LITE Version.
|

|
|
|
 |
The following step-by-step example will walk you through setting
up LightWave 3D 9.3 ScreamerNet UB for network rendering on Mac
OS X. We’ll cover using DLI_SNUB-Launcher for fast and
easy ScreamerNet UB
setup
and launching, as well as manually configuring and launching
ScreamerNet
UB using Terminal
shell scripts.
This example draws heavily upon information and topics covered
previously throughout
Mastering LightWave ScreamerNet for Mac
OS X, so please review
the portions leading up to this example, if you haven’t
already. This example will show how to run ScreamerNet across
a network using three dual processor or dual core remote rendering
Macs and another dual processor or dual core Mac to serve as
both host and renderer.
|

|
|
|
 |
Before setting up the individual remote rendering Macs, we’ll
first set up a new SNConfigs folder with a master
set of ScreamerNet UB config files independent of your normal
LightWave config files. This way you can change your LightWave
configs, without affecting the render farm and vice versa. This
new config set may then be modified for each remote rendering
machine if necessary, such as if some of them have different
numbers of processors/cores or different amounts of RAM.
We’ll first set up the ScreamerNet UB specific settings
in the current config file which resides in:
/Users/UserName/Library/Preferences/LightWave3D
For more information see Managing
LightWave’s All Important Config Files.
- On the host Mac launch
Applications/LightWave3D 9/Layout.
- Open Render->Options->Render Globals and
set the Segment Memory Limit to
32.
See Default Segment Memory for
more information.

- Click yes when asked if this should be the
new default setting, or it won’t be saved.
- Click the Render tab and set Multithreading to
1
Thread. We want each node to only use one thread each.
See Multithreading for
more information.

- Quit LightWave to save the config file.
For more detailed information see Managing
LightWave’s All Important Config Files.

- Inside the
/Applications/LightWave3D 9 folder,
on the host Mac (the Mac that will run the controller that
will control the remote render Macs), create a new folder named SNConfigs.
- Go to the
/Users/UserName/Library/Preferences/LightWave3D folder.
- Copy the
Layout 9 and Extensions 9 files
from this preferences folder to the SNConfigs folder
you made in the previous step.
- Now that you have a duplicate set of configs for ScreamerNet
you may return to Layout and reset your render threads back
to what they were originally if you wish. We'll be setting
up all the ScreamerNet nodes to use their own SNConfigs files
leaving the files in the preferences folder for LightWave itself.
- Open the
/Applications/LightWave3D 9/SNConfigs/Extensions
9 file in TextEdit.
- The
Extensions 9 file only contains references to third
party plugins that you've added yourself. If you haven't added
any
plugins
to LightWave, then this file will be blank and you are done
with it and may quit TextEdit.
- If you have added plugins in LightWave, check the paths to
see if any of them reference any folders outside the
LightWave3D
9 folder. If they do, and that path won't be accessible
via the network, then you will need to find/replace all instances
of the paths to change them to a network accessible path.
If you keep all your third party plugins inside a folder inside
the LightWave3D
9 folder, then you won't need to change anything since
they will be copied to each render node and their paths will
remain intact.
|

|
|
|
 |
After going through the tedious process of manually creating
a full set of Terminal shell scripts to configure and launch
all the individual ScreamerNet UB nodes, I decided there should
be
a
better way,
so I made one. I wrote an XCode Aqua GUI front end to configure
and launch ScreamerNet UB nodes in a much easier and far less
error prone manner. This utility is called DLI_SNUB-Launcher.
The following steps will show you how to use DLI_SNUB-Launcher
to more easily set up and launch your ScreamerNet UB nodes. You
may use the FREE
LITE Version. of DLI_SNUB-Launcher for this tutorial. If
you find DLI_SNUB-Launcher as useful as I do, you may register
for
a
FULL or PRO serial number
later.
|
|
 |
- Download your free lite version of DLI_SNUB-Launcher by right
clicking on the link below and selecting Save Linked File from
the pop-up
menu.
DLI_SNUB-Launcher.zip
- After downloading the DLI_SNUB-Launcher.zip
file, unzip the file by double-clicking it.
- Drag the expanded DLI_SNUB-Launcher to your /Applications/LightWave3D
9 folder.

You may run the DLI_SNUB-Launcher application from any
location you wish, but if you place it in your LightWave3D
folder, it will be able to find ScreamerNet
by itself. DLI_SNUB-Launcher defaults to look for
ScreamerNet in the same folder as the DLI_SNUB-Launcher application.
If you ever wish to uninstall it, simply
drag DLI_SNUB-Launcher to the trash.
Perform the following steps on each of the three remote rendering
Macs. We’ll be using a remote content directory path, /Volumes/NetContent,
which we will share with SharePoints
as described previously. We’ll also be using a command
directory named Commands, inside this content directory.
For additional information review Sharing
the Content Folder with SharePoints & Mounting
the Content Folder from the Render Machines.
- First copy the entire
/Applications/LightWave3D 9 folder
from the host Mac to the Applications folder on each of the
three remote rendering Macs.
- On each of the remote Macs, in any Finder window,
click the Network icon.

- Log into the host Mac with the username and password of the
NetRender user
you created on the host machine using SharePoints.
Click the Connect button when ready.
- Mount the
NetContent share point, which will
then appear on the desktop as a volume.
- Run
/Applications/LightWave3D 9/DLI_SNUB-Launcher,
on each dual processor remote rendering Mac and configure it
as follows:

- Click the -c Config Folder button and choose
the
/Applications/LightWave3D
9/SNConfigs folder.
- Activate (using the check mark at the left) then click
the -d
Content Folder button
and choose the
NetContent volume/folder.
- On the bottom Batch Render Settings drawer click the Command Folder button
and choose the
NetContent/Commands folder.
(Use the New Folder button
to create a Commands folder
inside the NetContent volume/folder
if you haven’t
already.)
- On each of the three dual processor remote Macs set
the node numbers as follows:
- Remote Render Machine 01: First Node
# 1 Through Last Node
# 2
- Remote Render Machine 02: First Node
# 3 Through Last Node # 4
- Remote Render Machine 03: First Node
# 5 Through Last Node # 6
- Click the Launch ScreamerNetUB Nodes button
on each remote Mac.
- Now go to the dual processor host Mac and repeat the DLI_SNUB-Launcher
configuration & launch process using First Node # 7 Through
Last Node #8.
- Any of these remote Macs may also be located on the Internet,
if the host Mac has a static IP address. In such cases,
simply use Mac OS X’s Go->Connect to Server on
the remote Mac and type in the host Mac’s IP address.
Mount the NetContent folder and proceed as if it were just
another render node, following the previous steps.
- Now that all your ScreamerNet nodes are up and running skip
ahead to the Advanced Network Rendering
with the Third-party Universal Binary - ScreamerNet Controller
for OS X.
Another way to configure and launch the ScreamerNet
UB nodes is to use manually configured shell scripts that can
be run in Terminal. For
a much easier and far less error prone method to configure and
launch the ScreamerNet UB nodes, just use the previous method
- Configuring & Launching
ScreamerNet UB Interactively with DreamLight’s SNUB-Launcher.
For those hardcore users who wish to use the shell script
approach, the following steps will walk you through
manually creating a set of shell scripts that will hold all the
command line configuration
information
for
each individual
ScreamerNet UB
node.
These shell
scripts may then be used to launch the ScreamerNet UB nodes using
the Terminal.
In this example we’ll
make six shell scripts for six ScreamerNet UB remote render nodes
which we’ll run on three dual processor or dual core Macs.
We’ll
be using a remote content directory path, /Volumes/NetContent,
which we will share with SharePoints
as described previously. We’ll also be using a command
directory named Commands, inside this content directory.
- Launch TextEdit to create a new blank text file. If you see
rulers on the window go to Format->Make Plain Text to remove
them and set the document to plain text.
- Now type or copy/paste the following into the blank document,
including the quotes, all one line.
"/Applications/LightWave3D 9/ScreamerNet" -2 -c"/Applications/LightWave3D
9/SNConfigs" -d"/Volumes/NetContent" "/Volumes/NetContent/Commands/job1" "/Volumes/NetContent/Commands/ack1"
- Save this shell script file in the
LightWave3D 9 folder
as SN-01.sh,
verifying that it says Plain Text Encoding at the bottom of
the save panel.
- With the
SN-01.sh file still open,
edit the file’s
contents by changing the job and ack numbers both to 2, as
follows:
"/Applications/LightWave3D 9/ScreamerNet" -2
-c"/Applications/LightWave3D 9/SNConfigs" -d"/Volumes/NetContent" "/Volumes/NetContent/Commands/job2" "/Volumes/NetContent/Commands/ack2"
- Save as, this edited shell script file as
SN-02.sh,
in the LightWave3D
9 folder.
- Be sure to click the Use .sh button when asked if it should
use .txt or .sh as an extension.
- Repeat this process until you have
SN-01.sh through SN-06.sh files.
|
|
 |
Now we’ll make two more shell scripts to run on the host Mac,
which in this case is also a dual processor or dual core Mac.
The local path to the NetContent folder will be different on
the
host Mac than it is on the remote Macs. In our case it’s
at the top
level of an external hard drive with the following path.
/Volumes/WorkHD/NetContent
In your case, replace WorkHD throughout the following examples
with your actual local path to the NetContent folder that’s being
shared with SharePoints.
- Open the
SN-06.sh shell script file in TextEdit.
- Edit the
file’s
contents by changing the job and ack numbers to 7 and editing
the three NetContent paths as follows, substituting your actual
local path to your NetContent folder.
"/Applications/LightWave3D 9/ScreamerNet" -2 -c"/Applications/LightWave3D
9/SNConfigs" -d"/Volumes/WorkHD/NetContent" "/Volumes/WorkHD/NetContent/Commands/job7" "/Volumes/WorkHD/NetContent/Commands/ack7"
- Save this edited shell script file as
SN-07.sh, in the LightWave
3D 9 folder.
- Be sure to click the Use .sh button when asked if it should
use .txt or .sh as an extension.
- Next change the job and ack files to 8 and save the edited
version as
SN-08.sh in the LightWave3D 9 folder.
We now need to make all the shell scripts that we just created
executable.
- Launch
/Applications/Utilities/Terminal
- Type into the Terminal window,
cd followed by
a space.
- Drag the
LightWave3D 9 folder from the Finder to the Terminal
window to load that path into Terminal.
- With the Terminal window in the foreground, press the return
key to execute the change directory (cd) command. This will
change the current directory in Terminal to the
LightWave3D
9 folder.
- Now type the following command into Terminal and press the
return key.
chmod +x SN-*.sh
- This will make all the
SN-01.sh through SN-08.sh script
files executable so that you can run them through the Terminal
to launch the ScreamerNet UB instances when needed.
- Quit Terminal.
- Finally copy the
/Applications/LightWave3D 9 folder
from the host Mac to the Applications folder on each
of the remote rendering
Macs.
Perform the following steps on each of the remote rendering
Macs. The shell scripts may also be run remotely from the host
Mac by using ssh to log into each of the remote Macs to run the
scripts.
For additional information review Sharing
the Content Folder with SharePoints & Mounting
the Content Folder from the Render Machines.
- On each of the remote Macs, in any Finder window,
click the Network icon.
- Log into the host Mac with the username and password of the
NetRender user
you created on the host machine using SharePoints.
Click the Connect button when ready.
- Mount the
NetContent share point, which will
then appear on the desktop.
- Open the
/Applications/LightWave3D 9 folder,
on the remote rendering machine, not on the host Mac.
- Run the next two available
SN-0#.sh shell scripts,
one at a time, on each dual processor remote machine as follows.
- Remote Render Machine 01:
SN-01.sh & SN-02.sh
- Launch
/Applications/Utilities/Terminal
- Drag
SN-01.sh from the Finder to the Terminal window.
- Bring the Terminal window to the front and press
the return key to launch the ScreamerNet node #1.
Note that each ScreamerNet instance will repeatedly
write
Can't
access job file to the Terminal window. This
is normal, until the render controller is started,
which
creates
the job files.
- Press command-N to make a new Terminal window.
- Drag
SN-02.sh from the Finder to the
second Terminal window.
- Bring the second Terminal window to the front and
press the return key to launch the ScreamerNet node
#2.
- Repeat these steps on each remote render machine
using the appropriate
SN-##.sh shell script files
as follows.
- Remote Render Machine 02:
SN-03.sh & SN-04.sh
- Remote Render Machine 03:
SN-05.sh & SN-06.sh
- Now go to the dual processor host Mac and repeat the same
process for
SN-07.sh & SN-08.sh
- Any of these remote Macs may also be located on the Internet,
if the host Mac has a static IP address. In such cases, simply
use Mac OS X’s Go->Connect to Server on
the remote Mac and type in the host Mac’s IP address.
Mount the NetContent folder and proceed as if it were just
another render node, following the previous steps.
|

|
|
|
 |
Since the basic network render controller that is built in to
LightWave is somewhat limited for use in a production environment,
we’ll
use third-party ScreamerNet controllers in this example.
The only third-party ScreamerNet controller that
is currently compatible with ScreamerNet UB is Jonathan Baker’s
excellent ScreamerNet
Controller for OS X which has the following benefits over
the built-in LightWave ScreamerNet network render panel.
- Properly translates render output paths between LWPPC & LWUB
scenes.
- Handles remote and local paths so that you can use SharePoints.
- Allows scenes to be added or deleted from the render queue
at any time.
- Allows the queue to be reordered at any time.
- Saves the queue so it may resume in the event of a crash
or power outage.
- Scans for completed frames when adding scenes so that you
can resume a crashed scene or stop and continue a render at
another time.
- Jonathan Baker is extremely responsive to the users and quickly
fixes any bugs.
ScreamerNet Controller for OS X is easy to setup and use. Just
follow these simple steps:
- Download the
latest version of ScreamerNet Controller.
Version
4 and later is the Universal Binary version.
- Double-click it to expand the ".zip" archive.
- Double-click the ScreamerNet Controller.pkg file and
follow the installation instructions.
- Run ScreamerNet Controller Application.
- Select the ScreamerNet Controller for
OS X -> Registration… menu item and
enter your registration info. A professional license is
needed to run more than five render nodes.
- Select ScreamerNet Controller for OS
X -> ScreamerNet Controller Preferences…
- Next to "For Mac network nodes, the following path is
mounted:" click the Set Path button.
- Navigate to the
NetContent folder and click
the choose button.
- Type
NetContent into the corresponding text
field, and hit OK.
- Next select the menu CPUs -> Set Max CPUs… and
enter the number of ScreamerNet instances you are running.
In this case we’re using
8. You’ll
then see 8 CPUs listed in the top window pane.
- Select the menu CPUs -> Set Command Directory… and
navigate to the
Commands folder inside the NetContent folder
and click the choose button. Now each of the CPUs should
initialize and finally change to
a status of Ready. If they don’t, then
your setup is incorrect. Both ScreamerNet Controller and
all the
ScreamerNet UB instances must be pointed to the same command
directory. They all must also have read/write access to
that directory.
They communicate with each other by reading and writing
simple text files to this common shared directory.
- Now go down the CPU list and double-click on each one
to open the CPU options.

- Turn on the Use Remote Mounting Path (Mac Only) option
for all the remote nodes that are not running on the host
machine (1-6 in this example). Leave this option OFF for
the ScreamerNet
instances that are
running on the host machine (7-8 in this example). While
you are doing this, you may also
give each instance a name that makes it easier for you to
keep track of which machine is running which ScreamerNet
UB instance.
|
|
 |
 |
Add the first scene to the render queue.
- Select the menu Scenes -> Add Scene…,
locate and load the first scene:
"NetContent/Scenes/
Cel_Shade/Drunk_Zombie.lws"
- Set the settings for Start Frame to 100, End Frame
to 200 and Step to 10
- Set the RGB Output File Path by click on the change
button.
- Navigate to the
NetContent/Renders folder
if it already exists, otherwise create a New Folder in
the top level of the NetContent folder
named Renders.
- Navigate to the
NetContent/Renders/Drunk_Zombie folder
if it already exists, otherwise create a New Folder in
the Renders folder named Drunk_Zombie.
- Use
Drunk_Zombie as the Save As: name
and click the Save button.
- Set the Files will be saved as: pop-up to LW_JPEG(.jpg)
- Click the OK button and the scene will be added to
the render queue where it will be loaded by the nodes
and they
will begin rendering.
|
Add the second scene to the render queue.
- Select the menu Scenes -> Add Scene…,
locate and load the second scene:
"NetContent/Scenes/
Expressions/BigWheel.lws"
- Set the settings for Start Frame to 30, End Frame to
60 and Step to 2
- Set the RGB Output File Path by click on the change button.
- Navigate to the
NetContent/Renders/BigWheel folder
if it already exists, otherwise create a New Folder in
the Renders folder named BigWheel.
- Use
BigWheel as the Save As: name and click
the Save button.
- Set the Files will be saved as: pop-up to LW_JPEG(.jpg)
- Click the OK button and the scene will be added to the
render queue where it will be loaded by the nodes
and they will begin
rendering.

- As each frame is rendered, it appears in the appropriate
NetContent/Renders folder.
- When done, CPUs -> Select All Active CPUs.
Then CPUs -> Remove CPUs. This will quit
all the running ScreamerNet instances. Then Quit ScreamerNet
Controller and un-mount
NetContent from each of
the remote Macs where you can also quit all the Terminal apps
on each remote Mac.
1 2 3 4 5 6 7 8 [9] 
|