Добрый день. Я занимаюсь web-разработкой и почти всем, что с этим связано.

Сетевая визуализация

LuxRender имеет встроенную функциональность для сетевой визуализации, поэтому для увеличения скорости визуализации одну сцену можно просчитывать на нескольких компьютерах. Работает как для локальных сетей, так и по интернету. На всех компьютерах должна быть установлена одна и та же версия LuxRender.

Визуализация в локальной сети

Принцип состоит в том, что есть один ведущий компьютер (мастер), управляющий несколькими ведомыми (слейвами). Клиент посылает проделанную в ходе визуализации работу на сервера, получает такую же информацию от других и периодически получает общий результат.

Процесс настройки сетевой визуализации состоит из нескольких шагов:

Запуск Luxconsole

Luxconsole — это легковесная версия LuxRender, не содержащая графического интерфейса. Это значит, что программа должна быть запущена из терминала. Более подробно о LuxConsole написано на соответствующей странице.

Запуск luxconsole с опцией -s
Запуск luxconsole с опцией -s

Запуск Luxconsole on Windows

If you've installed LuxRender using the official Windows installer you can start Luxconsole by using the "Start LuxRender Slave" shortcut in the Start Menu. This shortcut will list the local IPv4 addresses for convenience before starting Luxconsole.

If you did not use the installer then the easiest way to use Luxconsole on Windows is by creating a shortcut for it. After having gone through this procedure once, you'll be able to start a network rendering server just by double clicking the shortcut.
>-go to the folder in which luxconsole.exe is located, right click luxconsole.exe and select Create Shortcut -right click on the shortcut icon that was just created, choose Properties and go to the Shortcut tab -In the Target field, add a space at the end and type “-s” without the quotes. The complete line should read something like “C:\Program Files\luxrender\luxconsole.exe” -s

After applying the changes double clicking the shortcut should bring up a terminal window. A text should show up saying including something like “Launching server [2 threads] mode on port '18018'”. If this is the case, you have successfully started a network rendering server.

On some Windows systems you might see a warning dialog appear from your Windows firewall or Anti-Virus software. This is because luxconsole.exe is trying to open a network port. Using this port must be allowed both on the host and client machine for network rendering contributions to take place.

Starting Luxconsole on Windows using the Command Prompt

If you prefer starting Luxconsole from a Windows command window, just browse to the folder in which Luxconsole is located and type “luxconsole.exe -s”.

Запуск Luxconsole в OSX

After moving the LuxRender folder to your Applications folder to install LuxRender, navigate to the /Applications/LuxRender/scripts_interactive folder and double click on the "create_systemwide_symlinks" executable. As the name implies, this will run a script that creates symlinks allowing you to simply open a Terminal window and type "luxconsole -s" and hit enter, without typing the whole path to the executable. You should see some text saying something like “Launching server mode [2 threads] Server listening on port '18018'”.

Alternatively you can open a terminal window and drag the run_luxconsole_server icon onto a terminal window – this will show something like /Applications/LuxRender/scripts_interactive/run_luxconsole_server. Then press enter, after which you should see some text saying something like “Launching server mode [2 threads] Server listening on port '18018'”

Запуск LuxConsole под Linux

В терминале введите ./luxconsole -s. Если всё пойдёт правильно, вы увидите текст вроде «Launching server [6 threads] mode on port '18018'».

Поиск IP-адресов компьютеров

В Windows наберите ipconfig /all наберите в командной строке. В OSX IP-адрес можно узнать в Настройках системы, секции Network. Если вы используете Linux, скорее всего, вы сами знаете, как узнать IP-адрес.

Запуск рендеринга и добавление серверов

Now that the render servers are set up, open LuxRender on the client and start the rendering (or start LuxRender directly from an exporter). In LuxRender, go to the network tab, for all of the render servers fill in the IP address in the Server field and press the “+” button. Вот и всё!

Два рендер-сервера
Два рендер-сервера

After a while, the first contributions of the render servers will be sent back to the client. The contributions of the render servers will be added to the rendering in progress right away, so they can be seen in the Render tab. Also the S/px value should jump up any time a rendering contribution from a server arrives. Additionally, information about interaction between the client and servers can be followed in the Log tab.

Network rendering using the terminal (optional)

Instead of starting the rendering from LuxRender's graphical interface, it is also possible to start the rendering from the terminal/command line. For example:

luxconsole -u 192.168.1.248 -u 192.168.1.19 -t 2 fullcornell-metropolis.lxs

Where "192.168.1.248" and "192.168.1.19" are the IP addresses of 2 servers. You can use as many "--useserver" (or "-u") options as you like (one for each server available). By default every 180 seconds the client will contact the server in order to download the traced samples. This interval can be changed by using the "--serverinterval" (or "-i") option:

luxconsole -u 192.168.1.248 -u 192.168.1.19 -t 2 -i 300 fullcornell-metropolis.lxs

The default TCP port used for client/server communication is 18018. You can use the "--serverport" (or "-p") option in order to change the tcp port:

luxconsole -s -p 10001

The "--useserver" (or "-u") also supports an extended format in order to define the port used by the server:

luxconsole -u 192.168.1.248:10001 -u 192.168.1.19 -t 2 fullcornell-metropolis.lxs

Рендеринг по интернету

Принцип работы сетевого рендеринга по интернету такой же, как и у рендеринга по локальной сети, за тем лишь исключением, что вы должны использовать внешний IP-адрес, а не IP-адрес в локальной сети.

На рендер-серверах должен быть доступен 18018-й порт. Если он закрыт фаерволом или роутером, LuxRender не сможет установить соединение. Поэтому не помешает указать порт во вкладке «Network», например, 172.16.254.1:18018 вместо 172.16.254.1.

Использование DrQueue с Luxrender

Including support for all features required by a render farm (like job queues, accounting, authentication, etc.) is currently out of the scope of LuxRender. However, you can easy integrate LuxRender in one of the existing Distributed Render Queue Managers, for example the open source program DrQueue.

LuxRender is supported in DrQueue in the webinterface DrQueueOnRails through Ruby bindings. It does not yet work with the GTK gui drqman. Please try out the 0.64.x SVN branch at [1].

You can find all needed additional information in their Trac wiki and community forums.

Автоматизация сетевой визуализации под Windows с использованием bat-файлов (опционально)

Если вы используете Windows XP, Vista или 7, для автоматизации процесса визуализации можно использовать bat-файлы.

С созданием bat-файла не должно возникнуть сложности: нужно просто создать текстовый файл и вставить туда необходимый код. Затем нужно сохранить файл и изменить расширение с .txt на .bat. Стоит обратить внимание на путь до LuxRender — нужно указать тот путь, по которому он установлен именно в вашей системе.

Для серверов такой код:

cd C:\Program Files\LuxRender
START Luxconsole -s

Сохраните этот bat-файл. После его запуска вы активируете аккаунт сервера.

Для клиентов (мастеров):
cd C:\Program Files\LuxRender
START Luxconsole -u 192.168.0.xxx -u 192.168.0.xxx -u 192.168.0.xxx -u 192.168.0.xxx
//192.168.0.xxx/lux/test.lxs

Замените xxx на нужный IP-адрес серверов, заместите количество серверов на то, сколько их доступно и установите путь до сцены. Сохраните этот bat-файл. Когда будет необходимо запустить клиент, просто запустите этот пакетный файл и вы увидите, как запустится клиент, подключится к серверам и начнёт визуализацию.

Комментарии