Cycles X

Cycles X
Información sobre la plantilla
Parte de la familia Blender
DesarrolladorThe Blender Foundation
Última versión estableversión 2.92 Cycles
GéneroPrograma de Gráficos 3D
Sistemas Operativos compatiblesActualmente es compatible con todas las versiones de Windows, Mac OS X, GNU/Linux, Solaris, FreeBSD e IRIX.
IdiomaMultilenguaje
Licenciaopensource
Sitio web
https://www.blender.org

The Blender Foundation ha revelado Cycles X, una próxima revisión del renderizador de producción de la herramienta que se dice que la "prueba para el futuro durante los próximos 10 años".

La nueva versión, que se lanzará con Blender 3.1, mejorará los tiempos de renderizado en las GPU modernas y la interactividad de la ventana gráfica. La revisión también agregará soporte para renderizado incremental y reanudable.

El proyecto

A grandes rasgos, el objetivo del proyecto es:

  • Mejorar la arquitectura para el desarrollo futuro.
  • Mejorar la usabilidad de la ventana gráfica y la representación por lotes
  • Mejore el rendimiento en CPU y GPU modernas
  • Introducir algoritmos de renderizado más avanzados

Su primer objetivo es validar la nueva arquitectura. Con ese fin, han implementado un prototipo de un nuevo kernel de GPU y nuevos algoritmos de programación para viewport y renderizados por lotes. Hay suficiente funcionalidad para renderizar algunas de las escenas de referencia ahora.

Current Cycles X kernel graph

Gráfico de kernel de Current Cycles X

Está disponible una presentación técnica para desarrolladores sobre la nueva arquitectura, y el código se puede encontrar en la rama ciclos-x en git.blender.org, además de algunos resultados de rendimiento iniciales y el código para colaborar con los colaboradores de Cycles.

Lanzamiento oficial

Segun palabras de los desarrolladores, queda mucho por hacer. y esperan que pasen al menos 6 meses hasta que este trabajo sea parte de un lanzamiento oficial de Blender.


Quadro-RTX-6000-CUDA
Quadro-RTX-6000-OptiX
Quadro-RTX-A6000-CUDA1
Quadro-RTX-A6000-OptiX

Resultados iniciales

Tenga en cuenta que los números cambiarán a medida que sigan trabajando en la nueva arquitectura. El soporte OptiX fue agregado hace unos días por Patrick Mours.

Las mejoras más significativas se encuentran en escenas interiores con muchos rebotes de luz y sombreadores, donde los nuevos núcleos pueden lograr una mayor ocupación y coherencia.

El rendimiento de renderizado de la CPU es aproximadamente el mismo que antes en este punto, pero la nueva arquitectura también abre nuevas posibilidades allí.

En segundo lugar, han estado trabajando para mejorar la representación de la ventana gráfica. Los núcleos de renderizado más rápidos ayudan, pero también descubrieron que mejorar la programación, el tiempo y los mecanismos de visualización pueden hacer que la ventana se sienta más interactiva. La nueva compatibilidad con la ventana gráfica para muestreo adaptativo y muestras por lotes hace que la imagen se limpie más rápido una vez que se terminan las primeras muestras.

Viendo hacia adelante

En los próximos meses probaran más ideas de optimización y restauraran la funcionalidad faltante. Cuando falta funcionalidad, generalmente es porque quieren adoptar un enfoque diferente en la nueva arquitectura.

Algunos ejemplos según sus desarrolladores:

  • Representación de volumen: planean implementar la marcha de rayos y el muestreo de luz con algoritmos más modernos.
  • Cazadores de sombras: probaran un algoritmo diferente que puede tener en cuenta la luz indirecta
  • Representación multidispositivo: experimentaran con un equilibrio de carga más detallado sin mosaicos.

Más allá de esto, la nueva arquitectura debería permitirnos encajar más fácilmente en algoritmos de renderizado como la guía de ruta, con los que experimentaran e investigaran cómo se pueden hacer compatibles con la GPU.



Novedades de la nueva versión

Como parte de la nueva arquitectura, están eliminando algunas funciones, dentro de las cuáles las más destacadas son:

  • Núcleos de renderizado OpenCL. La combinación de la implementación limitada del kernel dividido de Cycles, los errores del controlador y el estándar OpenCL estancado ha hecho que el mantenimiento sea demasiado difícil.
  • Están trabajando con AMD e Intel para que los nuevos kernels funcionen en sus GPU, posiblemente utilizando diferentes API (como CYCL, HIP, Metal,…). Esto no necesariamente estará listo para la primera versión, la implementación debe alcanzar una barra de calidad más alta que la que hay ahora. A largo plazo, la compatibilidad con los principales proveedores de hardware de GPU sigue siendo un objetivo importante, y creen que con esta nueva arquitectura serán capaces de mejorar el rendimiento y algo de estabilidad. Es solo cuestión de tiempo hasta que Cycles X vuelva a admitir más GPU.
  • Rastreo de caminos ramificados. Estan trabajando para mejorar los algoritmos de muestreo para hacer esto obsoleto y asignar muestras de manera más automática cuando sea necesario. El muestreo adaptativo mejorado y el muestreo de importancia de la luz son clave aquí.
  • Eliminador de ruido NLM. Los algoritmos de eliminación de ruido de IA y, en particular, OpenImageDenoise generalmente producen mejores resultados, y optimizaremos la arquitectura y el flujo de trabajo para ellos.

Estas funciones seguirán estando disponibles y admitidas en las versiones 2.83 y 2.93 LTS.

Fuentes

[1]