5 comentarios » Publicado el: 12 de Abril de 2007 a las 00:00:00, en la categoría: 3D.

RSS twitter menéame digg bitacoras

Net render: la magia del rendereo en red

Es muy conocido el hecho de que, en 3ds max, se puede hacer renders en red, con más de un computador; fenómeno más conocido como "Net render".

Algunos de los beneficios que trae este tipo de rendereo es que se puede trabajar con muchos computadores rendereando una sola escena o muchos computadores rendereando un solo frame (bastante util cuando se tiene que hacer pruebas en renders que se demoran más de 5 minutos).

Aunque este documento es muy extenso, este proceso es relativamente simple y, a grandes rasgos, funciona de la siguiente manera:

  1. Por supuesto, todos los pcs deben estar en red y deben tener 3d studio (la misma versión para todos) y los plugins necesarios instalados.
  2. Uno de los pcs debe funcionar como manager, es decir, que es el que le manda trabajos al resto de los pcs, llamados servers.
  3. En el pc que hace de manager se abre 3d studio, se setea el render y se manda a renderear.
  4. En ese momento, el render que se envió queda en una lista de espera para ser rendereado apenas el manager se contacte con cualquiera de los servers.
  5. Después de eso, solo queda esperar el resultado final.

Profundizando un poco más en el tema, vamos a ver los detalles del proceso, que están divididos en tres pasos principales:

Configurar los pcs para "netrenderear"

Backburner es un software (adicional a 3ds max, pero que funciona junto con él), que permite realizar renders en red. Usualmente, en INICIO/PROGRAMAS/DISCREET/BACKBURNER, se encuentran los 3 servicios que ofrece: Manager: Es el que maneja al resto de los pcs. Desde él se asignan tareas al resto de los computadores que están en modo server. Server: Se debe abrir en cada uno de los pcs "obreros", es decir los que van a renderear. Estos se comunican con el manager y esperan tareas. Monitor: Es una ventana desde la cual se puede ver y controlar todos los procesos. Desde esta ventana se pueden cancelar las tareas o cambiar prioridades o propiedades. Lo ideal es que este encendida solo en el pc que hace de manager.Lo primero que se debe hacer es encender el manager en el pc que va a controlar todo. La primera vez aparecerá una ventana de configuración, donde generalmente la configuración por defecto funciona a la perfección. Al darle click en Ok, el manager queda funcionando.Si se quiere (no es necesario pero siempre es bueno visualizar lo que se hace), se puede encender el monitor en el mismo pc que hace de manager, para poder ver lo que está en lista de espera y a que pcs se le esta enviando trabajos.

Después se abre, en cada uno de los pcs que harán renders, el server. También aparece una ventana de configuración (solo la primera vez), que generalmente funciona con la configuración por defecto. Al darle click en Ok, el server comienza a funcionar; busca un manager en la red (especificada por la máscara de subred - 255.255.255.0) y al encontrar uno, queda activo y esperando tareas.

La máscara de subred está seteada en todos los pcs que están en la red, y en el caso de que algo no esté funcionando bien, se puede quitar el ticket de "Automatic search" e ingresar una ip o el nombre de algún pc específico de la red.

Renderear la escena

Acá llega el momento de abrir 3ds max, pero solo en el pc que hace de manager.Al igual que cualquier render, se setea la cámara, los fotogramas a renderear y el lugar donde se van a almacenar los renders (que idealmente debería ser en el pc que hace de manager, a través de la red), entre otros. Este punto es importante, pues si se configura una carpeta de salida con una ruta como "C: enders", cada pc que esté haciendo de server, cuando termine de realizar el render que se le asignó, va a intentar guardar la imagen en su disco C:, en su carpeta renders, y no lo va a enviar, a través de la red, a una carpeta renders que se encuentra en el pc que sirve de manager. Para que eso funcione en red, la ruta debe especificarse como " ombredelpc ombredelacarpeta". Esto se puede realizar seleccionando la carpeta a través de "mis sitios de red/toda la red/etc". Y hay que tener en cuenta que la carpeta donde se van a almacenar los renders (que está en el pc que hace de manager) debe estar compartida con permisos para escribir en ella, pues sino, el resto de los pcs no podrán almacenar las fotos.Finalmente hay que verificar que la casilla "Net Render" esté activa y luego hacer click en el botón render.

Conectarse al manager y enviar el trabajo

Pero eso no es todo...ahora hay que conectarse al manager y enviarle el trabajo que queremos que se realice. Para esto, se debe configurar la venta que aparece luego de hacer click en el boton Render.

El proceso básico para esto consiste en conectarse (dándole click a "connect", por supuesto), y luego click en "Submit". De esta manera un render que no tenga mapas (o que use los mapas que vienen con 3d studio, que deberían estar instalados en todos los pcs que hagan de server), debería renderearse sin problemas.

Nótese que el firewall de windows aveces bloquea algunas actividades. Hay que asegurarse de que el backburner esté desbloqueado en todos los pcs.

El problema es un poco más complejo cuando la escena requiere mapas específicos. Para esto, existe la opción include maps, que lo que hace es comprimir la escena con todos sus mapas y xrefs en un archivo zip (maxzip) y al momento de enviarle trabajos a los servers, les envía este zip, el cual ellos descomprimen en una carpeta temporal para realizar el render. Este es el método más seguro. Otra manera es utilizar la opción Use Alternate Map Path y Use Alternate Xrefs Path, que permiten especificar una ruta desde la cual se obtendrán los mapas o xrefs (al igual que todas las rutas en 3ds max, si no se especifica una ruta de red, los mapas y xrefs deberían existir en la carpeta especificada en cada uno de los pcs).

Otra opción util de esta misma ventana es Split Scan Lines, que permite subdividir el render en varias franjas y enviarle una parte a cada server. Esto es muy útil a la hora de hacer un solo render que se demore mucho, pues así todos los pcs (servers) renderean una parte de él.

Este es todo el proceso para realizar netrenders. Solo queda presionar Submit y ver (en el monitor) como el trabajo es agregado a la lista de espera del manager. Si el monitor no está encendido, el trabajo igual se realiza, ya que éste es sólo un visualizador de los trabajos.

Comentarios

Los comentarios han sido cerrados.

RSS | XHTML | CSS | Licencia CC (BY-NC-SA)

Este sitio está alojado en DreamHost © peivem 2008. Todos los derechos reservados | Versión 1.62 | Diseño y desarrollo por GEEKBOX