June 22

¿Cuántos polígonos utilizar en un juego?

Esta es una de las preguntas que más frecuentemente suelo escuchar, y es de las primeras preguntas que el equipo tendrá que hacerse antes de empezar con la producción de un proyecto. Es una decisión que afectará tanto la calidad visual del juego como su desempeño.

Lo más común es que las personas con poca experiencia simplemente te dirán que utilices X cantidad de polígonos para tus personajes y ya… Sin embargo, es una respuesta un tanto inocente, realmente no es una pregunta tan trivial de responder.

La respuesta rápida y sencilla a esa pregunta sería: “no hay una respuesta”.

la respuesta larga:

Para definir cuál es la cantidad de polígonos óptima para utilizar en un juego primero tienes que conocer varias cosas sobre tu juego:

  1. ¿Exactamente cuál es el hardware meta al que lo vas a dirigir?.. no solo decir “va dirigido a dispositivos móviles”, por que hay de absolutamente todo tipo… tienes que definir cuáles son los dispositivos que vas a soportar… tanto el de especificaciones mínimas como el de especificaciones máximas… y conocer cuál es el throughput de polígonos que tiene su GPU.
  2. Necesitas tener claro cómo será el juego que están planeando desarrollar… ¿qué tipo de vista utilizarás?.. ¿3d? ¿isométrico?.. ¿side scroller?… no vas a procesar la misma cantidad de polígonos para un escenario visto en primera persona, que si lo ves de arriba a abajo, o si lo ves de lado…  ¿visualmente qué tanto detalle está planeando el equipo de arte para los escenarios?.. ¿muy detallados?.. ¿muy simples?… todo esto sirve para darte una idea de qué tanto “budget” requieren los escenarios.
  3. ¿Cuál es el framerate mínimo necesario para que tu juego sea jugable y ofrezca una buena experiencia al usuario?.. no es lo mismo un juego FPS que se basa totalmente en buenos reflejos y buena respuesta del jugador, a un juego de estrategia, o un juego de Realidad Virtual… todos tienen requerimientos de framerate diferentes, necesitas definir cuál es la velocidad mínima adecuada para el proyecto en el que estarán trabajando.
  4. ¿Cuántos personajes vas a tener en pantalla al mismo tiempo? (tanto el del jugador, como otros jugadores en línea y NPC’s)… ¿todos estarán animados?.. no es lo mismo tener 100 polígonos de un static mesh en pantalla, a tener esos mismos 100 polígonos animándose…
  5. ¿Qué tanto espacio en pantalla ocuparán los diferentes elementos?… por ejemplo, no vas a manejar con el mismo poligonaje un personaje de un juego de plataformas donde ocupa un ~7% del área de la pantalla, que en el de un Third-Person Shooter donde siempre lo tendrás enfrente de la cámara ocupando casi 1/4 de la pantalla… por lo general una buena medida es intentar mantener 10 pixeles en pantalla por polígono (triángulo).

 

Todo esto puede variar enormemente dependiendo del proyecto que desarrollarán, lo que funciona bien en uno puede no funcionar en otro… así que es importante saber entender qué capacidad de hardware tendrán las plataformas  donde correrá el juego y qué aspectos del juego generan más valor para el usuario.

Una vez que hayas tomado todos estos puntos en cuenta, entonces podrán distribuir el “presupuesto” de poligonaje de acuerdo a las cosas que son más importantes para el juego que estarán desarrollando, entre detalle del escenario, los personajes, los NPCs,, el framerate, y el alcance del mercado al que se piensa llegar… de forma que ya que entren en producción el equipo de modelado deberá asegurarse de respetar esas limitantes.

Un par de tips:

  • Considera que no hay nada en el juego que el jugador estará viendo más seguido que al personaje principal, por lo que (dependiendo del juego) quizás valdría la pena darle mayor prioridad sobre los enemigos y NPCs.
  • Toma en cuenta que no estas obligado a desplegar la misma geometría en tus plataformas con las especificaciones más bajas que en las de especificaciones más altas, el equipo que estará modelando los niveles podrá diseñar un escenario con el poligonaje mínimo necesario para que corra bien y se vea suficientemente bien en las plataformas bajas, y de ahí agregar más detalle (props, utencilios del personaje, etc) que solo será visible en las plataformas de rango medio y alto en los que puedan correr bien (aunque si es un multijugador que usa split-screen en pantalla quizás preferirías mantenerlo desabilitados).

 

En fin, hay una buena cantidad de trucos para mantener el juego corriendo con buen framerate sin sacrificar poligonaje en los modelos, pero quizás eso sea para otro post.

Por lo pronto, si en el equipo en el que estás trabajando están por comenzar la preproducción de un juego (que es donde se definirán todos los detalles para cuando entren en producción), quizás una buena idea sería hacer un “mock-up” del escenario (aunque sean círculos y cubos, pero que sean representativos de la cantidad de polígonos que podrían requerir), así como de los personajes y demás objetos animados tanto en polígonos como en cantidad de elementos en pantalla, correrlo en las diferentes plataformas hacia el que irá dirigido el juego, y ahí ver que tan buen framerate y respuesta tiene el juego en cada uno…

 

Saludos!



Copyright © Jacobo Ríos, 2016. All rights reserved.

Posted June 22, 2014 by jakovo in category "videojuegos