Doom Wiki
Doom Wiki
Sin resumen de edición
Etiqueta: rte-wysiwyg
Sin resumen de edición
(No se muestran 7 ediciones intermedias del mismo usuario)
Línea 2: Línea 2:
 
Un '''rastro de limo''' es una banda vertical en la textura que "sangra" hacia fuera de los bordes de la pantalla.
 
Un '''rastro de limo''' es una banda vertical en la textura que "sangra" hacia fuera de los bordes de la pantalla.
   
Puede ocurrir en un nivel que no se ha construido correctamente debido a un error en el [[Constructor de nodos|constructor de nodos]], pero también ocurrirá con frecuencia como una consecuencia natural del formato de mapa del [[motor de Doom]], incluso en  perfectos constructores.
+
Puede ocurrir en un nivel que no se ha construido correctamente debido a un [[Fallos del motor|error]] en el [[Constructor de nodos|constructor de nodos]], pero también ocurrirá con frecuencia como una consecuencia natural del formato de mapa del [[motor de Doom]], incluso en  perfectos constructores.
 
Dentro del mapa, las coordenadas de los [[Vértice (VERTEX)|vértices]] sólo se almacenan como números enteros. En la edición normal de un mapa los vértices sólo se pueden colocar en coordenadas enteras. Durante la construcción de la [https://es.wikipedia.org/wiki/Partici%C3%B3n_binaria_del_espacio partición binaria del espacio (BSP)], sin embargo, puede ser necesario dividir líneas en [[Segmentos (SEG)|segmentos]] en un lugar que tiene coordenadas no enteras.
   
 
El constructor de nodos termina teniendo que cortar una cantidad significativa de precisión de las coordenadas de los vértices generados, y como resultado, algunos ''segs'' puede terminar o comenzar muy lejos de donde tienen que ser colocados por un BSP matemáticamente correcto. Esto resulta en un [[Subsector|subsector]] abierto y el plano del subsector sangrará en la ubicación del vértice infractor. Cualquier subsector abierto mostrará un comportamiento similar.
   
 
Un ''rastro de limo'' de vez en cuando puede ser tan grave como para abarcar toda la pantalla, en cuyo caso la textura del suelo puede ser visto para encontrarse con la textura de techo en el centro de la pantalla. Este tipo de ''rastro de limo'' es muy raro, pero un caso así puede observarse cuando el ángulo de visión es tangente a uno de los lados de la estrella cerca de la salida de [[MAP09: The Pit (Doom II)|MAP09: The Pit]] en [[Doom II]].
Dentro del mapa, las coordenadas de los [[Nociones básicas de mapeo#Vertices|vértices]] sólo se almacenan como números enteros. En la edición normal de un mapa los vértices sólo se pueden colocar en coordenadas enteras. Durante la construcción de la [https://es.wikipedia.org/wiki/Partici%C3%B3n_binaria_del_espacio partición binaria del espacio (BSP)], sin embargo, puede ser necesario dividir líneas en [[Segmentos (Seg)|segmentos]] en un lugar que tiene coordenadas no enteras.
 
   
  +
==Soluciones==
El constructor de nodos termina teniendo que cortar una cantidad significativa de precisión de las coordenadas de los vértices generados, y como resultado, algunos segs puede terminar o comenzar muy lejos de donde tienen que ser colocados por un BSP matemáticamente correcto. Esto resulta en un [[Sector#Subsectores|subsector]] abierto y la plana del subsector sangrará en la ubicación del vértice infractor. Cualquier subsector abierto mostrará un comportamiento similar.
 
   
  +
Lee Killough creó inicialmente una heurística opcional en el algoritmo de la utilidad del constructor de nodo BSP, que intenta evitar escisiones de seg, que darían lugar a un alto grado de error de redondeo. Esta corrección puede sellar una gran mayoría de los ''rastros de limo'' que otros constructores de nodo generarían, pero está lejos de ser perfecta.
Un rastro de limo de vez en cuando puede ser tan grave como para abarcar toda la pantalla, en cuyo caso la textura del suelo puede ser visto para encontrarse con la textura de techo en el centro de la pantalla. Este tipo de rastro de limo es muy rara, pero uno puede ser espiado cuando el ángulo de visión es tangente a uno de los lados de la estrella cerca de la salida de [[MAP09: The Pit (Doom II)|MAP09: The Pit]] en [[Doom II]].
 
   
  +
[[Archivo:E2M3_intestinal.png|thumb|350px|left|El caso que aparece en [[E2M3: Refinery (Doom)|E2M3: Refinery]]]]
  +
Cuando Lee comenzó a trabajar en el [[Source port|source port]] MBF, decidió investigar una posible solución del lado del motor para el problema. Dentro del motor de juego, las coordenadas de los vértices se convierten en números de punto fijo.
   
  +
Utilizando el [https://es.wikipedia.org/wiki/Teorema_del_coseno Teorema de los cosenos], MBF y sus puertos derivados intentan proyectar vértices que son utilizados sólo por segs (y no por los extremos de [[Linedef|linedefs]]) de nuevo hacia la linedef al que pertenecen los segs.
  +
Los ''rastros de limo'' no se asocian generalmente con líneas que son exactamente horizontales o verticales, porque el error de redondeo en esas líneas colocará el vértice en algún momento a lo largo de la línea, no generando ninguna abertura. MBF evita vértices de prueba a lo largo de esas líneas en aras de la eficiencia máxima.
   
  +
Tenga en cuenta que incluso el algoritmo de MBF no puede reparar todos los ''rastros de limo'', y por lo tanto deben seguir siendo una parte aceptada de mapas de edición para el motor de Doom.
   
  +
Nodos extendidos de ZDBSP (soportados por los source port derivados de [[ZDoom]] y también por PrBoom+ / GLBoom+), usan coordenadas de punto fijo para la posición de los vértices, lo que permite reducir en gran medida la pérdida de precisión de los source port compatibles.
  +
Como nota para los constructores de mapas, la mayoría de los ''rastros de limo'' pueden ser reparados moviendo los sectores y cambiando el lugar de los vértices. Sin embargo, ya que son bugs naturales en el motor del constructor de nodos, los ''rastros de limo'' a veces simplemente no se pueden quitar y el [[WAD]] terminará por tener un pequeño "defecto".
   
  +
Al igual que se ha indicado anteriormente, sin embargo, a la mayoría de los jugadores no les importa los ''rastros de limo'', si es que notan esos defectos.
   
  +
==Véase también==
   
  +
* [[Fallos del motor]]
 
 
[[Archivo:E2M3_intestinal.png|thumb|left]]
 
   
   

Revisión del 18:58 17 jun 2019

E1m1 rastro de limo

El rastro de limo que aparece en E1M1: Hangar puede haber inspirado el nombre de este fenómeno.

Un rastro de limo es una banda vertical en la textura que "sangra" hacia fuera de los bordes de la pantalla.

Puede ocurrir en un nivel que no se ha construido correctamente debido a un error en el constructor de nodos, pero también ocurrirá con frecuencia como una consecuencia natural del formato de mapa del motor de Doom, incluso en  perfectos constructores. Dentro del mapa, las coordenadas de los vértices sólo se almacenan como números enteros. En la edición normal de un mapa los vértices sólo se pueden colocar en coordenadas enteras. Durante la construcción de la partición binaria del espacio (BSP), sin embargo, puede ser necesario dividir líneas en segmentos en un lugar que tiene coordenadas no enteras.

El constructor de nodos termina teniendo que cortar una cantidad significativa de precisión de las coordenadas de los vértices generados, y como resultado, algunos segs puede terminar o comenzar muy lejos de donde tienen que ser colocados por un BSP matemáticamente correcto. Esto resulta en un subsector abierto y el plano del subsector sangrará en la ubicación del vértice infractor. Cualquier subsector abierto mostrará un comportamiento similar.

Un rastro de limo de vez en cuando puede ser tan grave como para abarcar toda la pantalla, en cuyo caso la textura del suelo puede ser visto para encontrarse con la textura de techo en el centro de la pantalla. Este tipo de rastro de limo es muy raro, pero un caso así puede observarse cuando el ángulo de visión es tangente a uno de los lados de la estrella cerca de la salida de MAP09: The Pit en Doom II.

Soluciones

Lee Killough creó inicialmente una heurística opcional en el algoritmo de la utilidad del constructor de nodo BSP, que intenta evitar escisiones de seg, que darían lugar a un alto grado de error de redondeo. Esta corrección puede sellar una gran mayoría de los rastros de limo que otros constructores de nodo generarían, pero está lejos de ser perfecta.

E2M3 intestinal

El caso que aparece en E2M3: Refinery

Cuando Lee comenzó a trabajar en el source port MBF, decidió investigar una posible solución del lado del motor para el problema. Dentro del motor de juego, las coordenadas de los vértices se convierten en números de punto fijo.

Utilizando el Teorema de los cosenos, MBF y sus puertos derivados intentan proyectar vértices que son utilizados sólo por segs (y no por los extremos de linedefs) de nuevo hacia la linedef al que pertenecen los segs. Los rastros de limo no se asocian generalmente con líneas que son exactamente horizontales o verticales, porque el error de redondeo en esas líneas colocará el vértice en algún momento a lo largo de la línea, no generando ninguna abertura. MBF evita vértices de prueba a lo largo de esas líneas en aras de la eficiencia máxima.

Tenga en cuenta que incluso el algoritmo de MBF no puede reparar todos los rastros de limo, y por lo tanto deben seguir siendo una parte aceptada de mapas de edición para el motor de Doom.

Nodos extendidos de ZDBSP (soportados por los source port derivados de ZDoom y también por PrBoom+ / GLBoom+), usan coordenadas de punto fijo para la posición de los vértices, lo que permite reducir en gran medida la pérdida de precisión de los source port compatibles. Como nota para los constructores de mapas, la mayoría de los rastros de limo pueden ser reparados moviendo los sectores y cambiando el lugar de los vértices. Sin embargo, ya que son bugs naturales en el motor del constructor de nodos, los rastros de limo a veces simplemente no se pueden quitar y el WAD terminará por tener un pequeño "defecto".

Al igual que se ha indicado anteriormente, sin embargo, a la mayoría de los jugadores no les importa los rastros de limo, si es que notan esos defectos.

Véase también