¿Qué significa "hornear luces"?

36

¿Qué significa hornear lightmap? Escuché esto en Unity3d, y nuevamente encontré este plugin LightUp para sketchup que hornea lightmap.

Por lo que observo, el mapa de luz horneado le da al objeto 3D una sensación mucho más realista. ¿El propósito de iluminar el objeto es darle ese aspecto de animación cg que ves en animaciones renderizadas previamente?

Kim Jong Woo
fuente
Además, cada vez que hornea algo, ya sea física, iluminación o cualquier otra cosa. Significa que ha configurado algo que tomará mucho tiempo procesar / procesar en tiempo real, o desea que se reproduzca de la misma manera cada vez, por lo que solo lo hace una vez y guarda los resultados para su uso posterior, y porque todos los cálculos se realizan, mostrar lo que se ha horneado es rápido y siempre el mismo en todos los juegos.
AttackingHobo
AttackingHobo, esa es una excelente manera de decirlo. Lo entiendo ahora. Pero curioso, ¿cómo se hornearía la física? ¿Luxrender produce renders fotorrealistas porque pueden calcular la física de la luz?
Kim Jong Woo
1
La física se puede hornear para escenas complejas simulando y almacenando todas las posiciones de los objetos, rotaciones, etc. para cada paso de tiempo. Luego, en lugar de volver a calcular todos los valores en vivo, solo se reproducen a partir de los valores almacenados.
AttackingHobo

Respuestas:

53

Cuando tienes una luz estática (sin movimiento) en un juego, tienes dos opciones para representar esta luz. Podrías representarlo igual que una luz dinámica; es decir, aliméntelo a través de la tubería del sombreador que calculará su efecto en todo lo que lo rodea, cada cuadro, en su camino a la pantalla. Esto obviamente es bastante caro. O, un editor puede cocer la luz en la escena.

Lo que siempre pensé en hornear era quizás una versión más simple: básicamente el editor solo toma las texturas de todo alrededor de la luz, calcula el efecto de la luz en esas texturas (las ilumina, quizás las colorea, las sombras, etc.) y los guarda como texturas de reemplazo para usar. Entonces, todas las texturas alrededor de la "luz" parecen tener una luz proyectada sobre ellas, pero en el tiempo de ejecución en realidad no hay una luz desde el punto de vista del cálculo; Es una ilusión óptica, esencialmente.

La unidad, sin embargo, parece estar generando un mapa de luz . Esto es similar a la noción anterior, pero la iluminación al horno se mantiene por separado en lugar de modificar la textura subyacente, y supongo que un sombreador fusiona los dos en tiempo de ejecución. Esto tendría la ventaja de mantener la ventaja de las texturas en mosaico (es decir, poco uso de memoria), ya que no tendrían la luz cocida directamente en ellos, por lo tanto, podrían permanecer en mosaico, y el sombreador sería muy liviano, especialmente en comparación con el tratamiento del Ligero como dinámico.

Una luz obviamente necesita ser estática para que esto funcione; es decir, no puedes moverlo durante el juego, porque la luz se ha cocido en las texturas. Además, cualquier objeto dinámico en la sala (como el personaje del jugador) no tendrá la luz brillando sobre ellos, por lo que debe haber algún tipo de excepción, donde la luz se representa para los objetos dinámicos pero no se (re) representa El paisaje estático.

Ricket
fuente
12
Y la mayoría de las veces debido a que la iluminación es suave, el mapa de luz se puede guardar en una resolución más baja que el resto de las texturas, aún se ve bien, pero se procesa más rápido y requiere menos memoria.
AttackingHobo
+1, esta es una respuesta muy agradable y extensa, gracias. :)
Xeo