Animar 1 año de Vray daylight

Jorginho - 18/05/2010 23:32
Me gustaría simular 1 año de movimientos solares (Daylight) en lapsos de 3h para hacer una animación, el problema es que no tengo claro cómo hacer correr el reloj de las opciones del Daylight, suelo usar autokey para animar, pero como eso son 3 contadores pues tendría que correr las horas los días y los meses a la vez, se puede hacer eso? Como?
Espero haberme explicado bien, un saludo y gracias de antebraso.
3dpoder - 05/07/2025 14:07
Simular un año completo de iluminación solar en intervalos de 3 horas es uno de esos proyectos donde el arte y la técnica se dan la mano, ideal para estudios de iluminación arquitectónica, efectos ambientales, o simplemente para demostrar que sabes sacarle el jugo a 3ds Max y VRay. El problema, como bien señalas, es que el sistema Daylight System en Max tiene múltiples parámetros: fecha, hora, y localización… y animarlos para cubrir un año puede parecer titánico. Pero no te preocupes, se puede automatizar y hacerlo bien.



¿Qué necesitamos animar realmente?

Para simular con precisión el paso del tiempo solar, tendrás que modificar principalmente el Time of Day dentro del Daylight System. Pero aquí viene el truco, 3ds Max no te deja animar directamente la fecha (día y mes) desde la interfaz, solo la hora. Sin embargo, esto se puede hacer con un script en MAXScript que modifique los tres parámetros: hora, día y mes… ¡todo en uno!

¿Por qué en 3 horas y no en días?

Un año tiene 8760 horas. Si lo reduces a lapsos de 3h, obtienes unas 2920 muestras. En una animación a 30 fps eso serían 2920 frames, o casi 1 minuto y 40 segundos si muestras cada frame. Bastante razonable para visualizar la progresión anual de la luz.

¿Cómo se hace? Aquí los pasos clave:


Ejemplo de script para automatizar 3h de animación solar:

[CODE]for f = 0 to 2920 do (
local hrs = (f * 3) mod 24
local totalDays = floor((f * 3) / 24)
local date = dateTime 2024 1 1 0 0 0 -- Fecha de inicio
date += totalDays
$.daylightParameters.sunlightTime = date + (hrs / 24.0)
sliderTime = f
)
[/CODE]

Este script simula desde el 1 de enero de 2024 (ajústalo a tu año si necesitas algo diferente), y cada frame representa un salto de 3 horas, modificando automáticamente la hora y el día.

Recomendaciones adicionales:

¿Simular un año en 3ds Max? Fácil. El verdadero reto es hacer que tu PC no se derrita en el intento. Así que pon a renderizar esa animación… y vete de vacaciones: ¡cuando vuelvas será verano otra vez!