Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 11/17/2020 in all areas

  1. 1 point
    LeaN

    [Guia] Optimizar tu mapa

    En esta guía se tratará el tema de la optimización en los mapas en 5 puntos, para asi obtener un buen rendimiento del mismo en gran parte para los FPS. Los FPS son los frames por segundo, y los podes ver en el cs con el comando net_graph 3 en consola. 1. VIS modo FULL. Es importante compilar con VIS en modo FULL, se recomienda hacerlo en la compilación final porque este modo hace que el compileo dure mas tiempo, pero que valga la pena. Para configurar el VIS en Full sigue esta ruta: Batch Compiler > VIS > Vis Type > Full. 2. Textura Null. Para una buena optimización de FPS hay que usar esta textura null en las caras no visibles de los sólidos, para que dichas caras sean nulas en el mapa y asi descontar todas las caras posibles. Para mas información sobre esta textura visita el siguiente enlace: [Guia] Textura Null. 3. Construcción del mapa. Obviamente el hecho de cómo construis el mapa, es lo que más va a influir en los FPS. Por eso dejo varios tips para optimizar tu mapa de la mejor manera posible: A ) El hecho de ver en el juego muchos models/jugadores en un espacio amplio, hace que te funcione lento (bajos FPS), pasa esto porque cuesta renderizar todos esos models/jugadores y mas si no tenes una buena placa de video, por ende, el tip es: No crear el mapa con espacios exageradamente abiertos y con distancia de vista muy amplia. No hace falta que se junten muchos models en un espacio para que los FPS bajen, si creas un espacio abierto y grande con mucho detalle ya cuesta renderizar toda esa vista, los models son el agregado para que bajen aun mas los FPS. B ) No usar una inmensa cantidad de sólidos sin entidad juntos. Convierte algunos sólidos que no den con el "exterior" en func_wall, para disminuir la cantidad de solidos sin entidad, esto hace que se reduzcan lo polígonos siguiendo la lógica de los wpolys (abajo mas información al respecto). Si conviertes en entidad los sólidos que dan con el exterior crearias un LEAK. C ) Las texturas, fijate de no editarlas con dimensiones menores a 1.00. Estas dimensiones de las texturas se ven con la herramienta de aplicación de textura (Shift + A), en X e Y. A medida que aumentamos el número baja la calidad de la textura y a medida que achicamos el valor aumenta la calidad de textura pero eso cuesta muchos polígonos. Por ende, en cuanto pongamos valores altos mejor. Recomiendo usar los siguientes valores 1.00 - a nivel general y lo menos posible 2.00 - a nivel general y para espacios amplios 5.00 - para sólidos o caras de sólidos escasamente visible entre los jugadores (por ejemplo un techo) 10.00 - para sólidos o caras inaccesibles a la vista del jugador pero sin embargo la textura null se notaría y no la usamos. (por ejemplo un borde de ventana) D ) No colocar varios models (cycler_sprite) juntos, baja fps, explicado en el punto A. E ) Recomiendo no construir un Skybox (cubo de sky que cubra al mapa para descartar cualquier LEAK). Esto baja enormemente los FPS. A menos que sea un Skybox cuidadoso y adaptado a la forma del mapa, lo que llevaría mucho trabajo hacerlo. Pero crearlo para tapar un LEAK no sirve. F ) Tratá de usar las texturas " { " (transparente) con func_wall en construcciones como rejas, escaleras, etc. en vez de usar muchísimos sólidos. Invierte en FPS y evitá crear esos sólidos de 1 unidad de medida. G ) Se recomienda no usar nunca la herramienta carve / tallar suele generar errores los cuales te juegan en contra con los FPS. Aprende a reemplazar ésta herramienta por la de corte creando pieza por pieza. H ) Tratá de invertir en sólidos usando la menos cantidad posible. Suele pasarle a muchos que en vez de usar 1 sólido usan 2, cuando es exactamente lo mismo a nivel estético, o que usan 6 sólidos cuando es exactamente lo mismo si usan 1 o 2. Generalmente al usar la herramienta de corte les pasa sin que lo noten y dejan creados sólidos que sobran. 4. HINT, SKIP y Visleaves. Un visleaf (o leaf) es un espacio de superficies visibles en un mapa. Esto tiene que ver con las habitaciones en los mapas, cuando el jugador se encuentra en una habitación en el mapa tiene que renderizar la otra habitación, por mas que el jugador no pueda ver la otra habitación porque hay una pared, el juego la renderiza igual. Entonces para evitar ese renderizado innecesario se usa el HINT y el SKIP. El mal uso de estas texturas especiales causará un peor rendimiento del deseado y del que ya tenés. Pero este tema de HINT, SKIP y Visleaves se tratará con mas profundidad en otra guía mas adelante porque conlleva mucha explicación e imágenes y hará muy larga ésta guía. 5. Wpolys. Worldpolys = Poligonos del mundo = Poligonos del mapa. Son el número de polígonos del mapa que genera el compilador VIS. El compilador genera cortes en el mapa formando muchisimos mas poligonos de los que creemos que hay en realidad. ¿Como se cuántos wpolys tiene mi mapa? Podes verlos con el comando r_speeds 1 en consola (funciona sin sxe el comando). Y agregar el comando developer 1 para mas comodidad ¿Qué pasa si me excedo de wpolys? El juego anda "tosco", se traba. A menos polígonos, mejores fps. ¿Con cuántos wpolys se que hay un buen rendimiento y con cuántos un mal rendimiento? Esto va a depender de la PC de cada jugador, por lo tanto dejo una recomedación en base a mi criterio, pero siempre varía. Los números que yo creo apropiados son: 800 wpolys: el mapa tiene un nivel de excelencia. 1200 wpolys: el mapa está bien. 1500 wpolys: comienza a bajar FPS a aquellos con PC de calidad baja. 2000 wpolys: comienza a bajar FPS a aquellos con PC de calidad media 3000 wpolys: si este número solo te aparece en un rincón del mapa muy poco accesible, safa, ya que la jugabilidad no se da en esa parte o es muy escasa. Pero si este número te tira en la mayor parte del mapa recomiendo editarlo para reducir los polígonos, ya que en el juego diario es probable que reciba quejas de algunos players ¿Cómo hacer para que el compilador genere menos cortes (wpolys)? Cuando 2 sólidos hacen contacto entre sí, el compilador genera cortes en dichos sólidos. Por ejemplo una caja esta apoyada sobre un piso (son 2 sólidos en contacto). Entonces el compilador va a generar varios cortes en los 2 sólidos. Lo que tenemos que lograr es que se generen la menor cantidad de cortes posibles. Para ello se pueden usar las 2 técnicas mas usadas y eficaces (puntos A y B). A ) Voy a usar el ejemplo de la caja y el piso (2 sólidos). Para evitar los cortes no tiene que haber contacto uno con el otro, por ende se recomienda dejar un espacio de 1 unidad entre caja y piso, haciendo que la caja este flotando 1 unidad. Que este flotando no se va a notar en el juego (solo en algunos sólidos en algunas partes) por ende se recomienda usar este método en algunos sólidos (en la mayoria). Cuidado con causar un leak por dejar 1 unidad. B ) Las entidades no son cortadas mientras no se toquen entre sí, por ende una caja con func_breakable en contacto con el piso no va a ser cortada, como tampoco el piso. Por lo tanto se recomienda que a los sólidos que no les dejaste 1 unidad por la mala estética los conviertas en func_wall. No así si el piso fuera una entidad por lo dicho en un principio en éste punto. __________________________________ Si tenés en cuenta los puntos de la guía seguramente tendrás un mapa bien optimizado. Si el mapa está con un rendimiento malo es muy posible también que tengas algun error en la compilación. Y si hacés un mapa y te funciona a bajos FPS o altos Wpolys, fijate en ésta guía nuevamente para analizar en dónde puede estar tu error ya que éstas son las recomendaciones mas sobresalientes.
  2. 1 point
    TaTaN_TaTaN

    Artículo: Mapa vs Mapper

    Artículo publicado por Emi en Mapping Zone Mapa vs Mapper INTRODUCCIÓN A veces creemos que nuestro mapa esta listo y es perfecto. Pero siempre va a faltar algo, siempre vamos a poder seguir progresando como mappers y al mismo tiempo nuestros mapas progresan. De esta manera surge el título de este artí­culo. Es una pelea entre el diseño y la originalidad, los lí­mites del engine y la creatividad, los detalles y la jugabilidad, una pelea entre el mapa y el mapper. Aunque muchos mappers no la toman en cuenta a la hora de mappear, lo que hace a un mapa único de otros, es su jugabilidad. No son las texturas, no son los detalles, es la jugabilidad (desde mi punto de vista lo mas difí­cil de lograr). Si pensamos rápidamente en los mapas más populares de diversos mods la mayorí­a no son populares por sus detalles o por sus texturas, sino por su jugabilidad única. Un mapa sin jugabilidad es como una casa sin puertas, solamente sirve para ser vista. Paredes vacías, texturas repetidas, cajas por todos lados, estructuras sin formas, etc. Increí­ble el número de mapas que no toma en cuenta lo importante que es ser detallista en un mapa. La primera impresión de un mapa se tiene mirándolo, si el mapa no es agradable a la vista, raramente alguien lo trate de probar. A lo largo de este tema iré mostrando cómo improvisar sus habilidades como mappers. 1. Clásico de todos los dí­as, la típica habitación cuadrada y sin detalles con texturas de halflife.wad y sin iluminación alguna. Así es, las mismas texturas se repiten por paredes y pisos una y otra vez. 2. Un poco de edición y... 3. Ahora va mejor, pero sería mejor aun si... 4. Sería mejor aun con algunos cambios en la arquitectura del ambiente. Todaví­a podemos improvisar más. 5. Lo veo mucho mejor con esos bordes pero todaví­a lo veo como si ya lo conociera al mapa. Las texturas halflife.wad tienen ya aproximadamente 20 años y se convirtieron en una tremenda cagada. A pesar de que tu mapa ZOMBIE preferido use estas texturas o que te guste muchísimo nuke, dust2, inferno. Las texturas originales del juego están súper quemadas y cuando alguien ve esas texturas no piensa en tu mapa... piensa en el otro. 6. No cambié de mapa. Sigue siendo el mismo con unas texturas muy simples pero que nunca habí­an visto antes, y le agregue cajas por todos lados para tapar espacios vací­os. Si total todos hacen eso. Creo que hasta hace muy poco yo hacía lo mismo. Pero es un gran error que veo que se repite mucho últimamente. No abusemos de las cajas. 7. Se que queda muy vací­o, pero hay otras maneras de ser detallistas sin abusar de las cajas. 8. Terminamos de detallar todo lo que es arquitectura teniendo en cuenta paredes, techo y piso. Otra manera de ser detallista es usando toda la iluminación que nos brinda el juego. Desde light, light_spot hasta archivos rad. Como se ve agregue un par de luces en la pared a la altura del piso y otra sobre la puerta con dos entidades (light y light_spot para crear un efecto direccional de luz y otro radial). Estos detalles son básicos, lo demás esta en ustedes, en su originalidad y creatividad. Mapa vs Mapper. Los dos ganan o los dos pierden.
×
×
  • Create New...