¿Qué es el orden Z?

Z-Order es el nombre que se le da al proceso involucrado en la clasificación de los elementos de una aplicación informática que deben aparecer visualmente frente a otros objetos. Un uso común del orden z es cuando hay varias ventanas abiertas en una interfaz gráfica de usuario (GUI) y el orden z determina qué ventanas se dibujarán completamente y cuáles quedarán oscurecidas por las ventanas sobre ellas. El nombre orden z se deriva de las convenciones de nomenclatura tradicionales que se utilizan al describir espacios tridimensionales (3D), donde X se refiere a la dirección derecha-izquierda, Y a la dirección arriba-abajo y Z a la dirección adelante-atrás. Casi todas las aplicaciones 3D utilizan algún tipo de ordenamiento z para determinar rápidamente qué objetos deben o no deben renderizarse para aumentar la velocidad de visualización de una escena.

Se puede pensar que el eje real que se describe mediante un orden z se extiende hacia el campo de visualización, acercándose o alejándose de un espectador que mira el monitor. Cuanto más lejos está un objeto, mayor es su número en el orden, mientras que los objetos más cercanos tienen números más bajos. Mediante el uso de algoritmos de clasificación simples, los objetos que están más distantes del espectador pueden excluirse de la vista o pueden dibujarse solo parcialmente, porque están oscurecidos por objetos que están más cerca.

Un uso común del orden z es mantener el estado de una serie de ventanas abiertas u otros elementos de la GUI en una aplicación. Cuando se genera una ventana u otro elemento, se le asigna un número de orden para indicar que está a la vista. Si se abre otra ventana o elemento, el orden z se desplaza para que la nueva ventana activa se considere más cercana. Además de ayudar a proporcionar señales que hacen que los elementos de la GUI de dibujo sean más eficientes, algunos sistemas operativos o aplicaciones también lo usan para determinar el orden de tabulación de modo que, cuando un usuario usa el teclado para recorrer una GUI, los elementos que obtienen el enfoque se seleccionan en función de en su orden z.

Los programas de edición de gráficos utilizan métodos de ordenamiento z para dibujar imágenes que tienen varias capas, lo que garantiza que las capas se representen en la secuencia correcta. Este mismo principio se aplica a los programas utilizados para publicación o maquetación, donde se pueden apilar varios elementos para crear un compuesto. En algunas situaciones, como en los gráficos vectoriales, el orden también se usa para calcular operaciones geométricas en objetos, como crear una unión o diferencia entre geometrías en capas.

En las aplicaciones 3D, el orden z también se denomina a veces búfer z o búfer de profundidad. Además de proporcionar una forma optimizada de clasificar objetos dentro de una escena, también permite la eliminación eficiente de superficies ocultas. Los objetos que tienen un número lo suficientemente distante en el orden z se pueden ignorar y no renderizar en absoluto, mientras que los objetos que están cubiertos por formas más cercanas pueden tener segmentos enteros de su geometría sin renderizar porque no se pueden ver.