Guía Hardware

Cómo funciona un videojuego: todo lo que sucede en el núcleo de este software y no ves

Actualizado a: 19 de diciembre de 2023

Los videojuegos han transformado la forma en que experimentamos la interacción digital, convirtiéndose en una forma de entretenimiento que trasciende generaciones y culturas. A medida que la tecnología avanza, los videojuegos se han vuelto más sofisticados, inmersivos y diversificados, lo que ha suscitado un creciente interés en comprender cómo funcionan en su núcleo, y cómo combinan de forma perfecta el diseño, la programación, y todo lo demás, como ya hicimos cuando explicamos el funcionamiento de una tarjeta gráfica o GPU

¿Qué es un videojuego?

Need For Speed

Algunas personas ven los videojuegos como simples juguetes electrónicos que no tardan mucho en producirse. En realidad, los videojuegos modernos más populares son producciones complejas que compiten con las grandes superproducciones de verano creadas por los estudios de cine de Hollywood, y pueden necesitar grandes inversiones y más de un año de desarrollo.

Cada videojuego moderno comienza con una historia. Ya sea una simulación de un evento histórico o un escenario de rol en un mundo de fantasía futurista, la historia impulsa la acción del videojuego y crea un fuerte vínculo entre el jugador y los personajes del juego, una forma más de atrapar al jugador.

Escritores, artistas, diseñadores y programadores deben colaborar juntos para crear todas las partes de la historia, incluyendo los personajes, los escenarios, la música y otros sonidos, y los posibles caminos que puede tomar la historia. Aveces es una tarea realmente titánica, y salen verdaderas obras de arte premiadas por su música, historia, diseño, etc. Pero hay algo más que eso, y es la jugabilidad, que debe estar a la altura de lo que esperan los jugadores, y esto puede ser algo más difícil, más aún si te sales de lo convencional, como los videojuegos de plataformas, de disparos, de estrategia, simuladores, etc. Por ejemplo, Minecraft, pese a sus gráficos aparentemente primitivos, ha marcado un antes y un después en cuanto a jugabilidad, con la inmensidad de posibilidades que permite. Y crear una idea así no es fácil, y no surge todos los días, por eso muchos juegos se parecen en la dinámica o jugabilidad…

Por otro lado, también hay que saber que los escenarios y personajes que aparecen en los videojuegos también están sometidos a las leyes de la física. Por ejemplo, si te fijas en un videojuego hay mucha física implicada, desde las ondas del agua, hasta la forma en la que la luz incide en las superficies o se crean las sombras, hasta la trayectoria de objetos lanzados y su repercusión, la destrucción de objetos, las explosiones, los saltos, etc. Todo es física…

Piensa que cuando estás controlando a un personaje en particular en un juego, hay una variedad aparentemente infinita de cosas que puedes hacer con ese personaje. Todo esto lo debe generar en el momento, no es algo grabado. El código debe escribirse para tener en cuenta todas las posibles elecciones que puedes hacer con tu personaje. Cada movimiento que haces conduce a cambios en el escenario, así como a un conjunto completamente nuevo de opciones para tu próximo movimiento. El código fuente controla todos estos factores y hace que jugar el juego sea una experiencia fluida para el usuario. Por ejemplo, imagina el Prince of Persia clásico, un videojuego aparentemente muy simple, en el que apareces en la casilla de salida en la primera pantalla. Justo ahí, puedes optar por ir a la derecha, a la izquierda, dar un salto,… todo esto no puede estar predeterminado, sino que se va ejecutando conforme usas los periféricos de entrada para su control, en este caso el teclado.

Una vez que todos los elementos del videojuego han sido diseñados, se deben encajar como piezas de puzzle para que todo funcione de forma correcta. Los programadores tendrán que tratar de ligar el trabajo artístico y la programación para que todo funcione junto, escribiendo millones de líneas de código fuente que controlan todos los aspectos del videojuego, usando lenguajes de programación como C++. Luego habrá que testar que todo funcione y depurarlo.

Un poco de historia

La historia del videojuego es una crónica fascinante que abarca más de medio siglo de innovación tecnológica y creatividad. Se cree que el primer videojuego se creó en la década de los 50, cuando se desarrolló el denominado Bertie el Cerebro (Bertie The Brain), sin embargo, no es considerado como el primer videojuego dado que su definición no se ajusta del todo a lo que hoy entendemos como tal.

Bertie The Brain permitía interactuar con el ordenador, permitiendo a los usuarios jugar al llamado tres en raya o tic-tac-toe contra una inteligencia artificial bastante primitiva. El diseñador fue Josef Kates, de Toronto. Sin embargo, quedó sin ostentar el título del primer creador del videojuego por lo que he comentado anteriormente. El que sí se considera como el primer videojuego de la historia, aunque no se comercializó, es el Tennis for Two que llegó en 1958 de la mano de William Higinbotham. Para jugar se usaba un osciloscopio que permitía a los jugadores golpear una pelota virtual sobre una red invisible.

En 1962 llegaría el famoso Spacewar! creado por Steve Russell y sus colegas del MIT, considerado como el primer videojuego para ordenador, y que trataba de controlar unas naves espaciales que combatían entre sí en un entorno de gravedad simulada.

Diez años más tarde llegaría Pong, un videojuego de Atari que aún sigue siendo una joya para muchos amantes de los videojuegos retro. Además, en la época fue todo un éxito comercial a pesar de su simplicidad, en la que aparecían dos palas en los laterales de la pantalla con las que tenías que golpear la pelota de un lado al otro.

Poco a poco fueron evolucionando, y en la década de los 70s llegaría el boom de las videoconsolas domésticas, como la Magnavox Odyssey y la Atari 2600, que aún siguen estando presentes en muchos emuladores para videojuegos vintage. Poco a poco la industria estaba en alza, con más y más títulos en el mercado y mejorando las capacidades con el paso del tiempo.

No fue hasta los 80s cuando llegaría la conocida como edad de oro de los videojuegos. Una época dulce donde se lanzarían algunos de los más populares de la historia, como Pac-Man, Space Invaders, Donkey Kong, Super Mario Bros, Tetris, etc. La industria tuvo un crecimiento masivo y comenzaron a surgir arcades en todo el mundo, además de ponerse de moda las salas de recreativos.

España también tuvo una Edad de oro del software, que data de entre 1983 y 1992, cuando fue el segundo productor europeo de software, solo por detrás de Reino Unido. Entre las empresas creadas estaba Made in Spain, Opera Soft, Zigurat, Topo Soft, Dinamic Software, etc. Una de las más conocidas es la madrileña Pyro Studios, creadora de la saga de videojuegos Commandos.

La era de los 16 bits (década de 1990) sería un nuevo salto, con el lanzamiento de consolas como la Sega Genesis y la Super Nintendo, que ofrecían gráficos mejorados y una jugabilidad más profunda, para videojuegos como Sonic the Hedgehog y The Legend of Zelda: A Link to the Past se convirtieron en clásicos.

Además, en esta década de los 90s se produjo la transición hacia los gráficos 3D, y la introducción de consolas como la Sony PlayStation y la Nintendo 64 permitió el desarrollo de juegos tridimensionales, lo que dio lugar a títulos revolucionarios como Super Mario 64 y Tomb Raider. En los años siguientes llegarían nuevas categorías y gráficos mejorados y cada vez más realistas. La industria había crecido tanto que ya representaba ganancias superiores a la industria del cine y de la música juntas.

Por otro lado, con la llegada del siglo XXI empezaron también a aparecer los primeros juegos para móviles, la antesala de lo que hoy tenemos en los actuales smartphones. Y a partir de 2010 comenzaría un gran impulso para el entretenimiento basado en realidad virtual y realidad aumentada, con dispositivos como la Oculus Rift o títulos como Pokemon Go. Y la actual historia ya la conoces…

La historia de los videojuegos es un viaje continuo de innovación y creatividad, y su influencia en la cultura y el entretenimiento es innegable. A medida que la tecnología sigue avanzando, la industria de los videojuegos continuará desarrollándose y sorprendiendo a las generaciones futuras. Actualmente, la IA es otro de los temas candentes que podría hacer los juegos más reales…

Cómo se hace un videojuego

motores de renderizado 3D

Para desarrollar un videojuego, primero hay que crear una idea, un concepto. El proceso que siguen los desarrolladores de videojuegos consta de las siguientes etapas:

Preproducción

La preproducción, también conocida como fase de diseño, establece la visión y requisitos de un juego. Puede durar desde una semana hasta más de un año, pero no debe superar el 20% del tiempo de desarrollo total.

En esta etapa, se crea el Documento de Diseño del Juego (GDD o Game Design Document), que describe la idea, género, historia, mecánicas, arte y estrategia de monetización. El GDD se actualiza a lo largo del desarrollo. Grandes empresas, como EA y Microsoft, se basan en una documentación extensa. Un GDD mantiene la organización, ayuda a identificar riesgos y facilita la presentación y financiamiento del juego.

Además, el prototipo es crucial para probar la funcionalidad y la jugabilidad antes de la versión final. Herramientas gratuitas, como Unity 3D y Blender, son útiles para crear prototipos con activos de marcador de posición. La clave es saber qué se quiere demostrar con cada prototipo.

Producción

La etapa de producción de un videojuego es donde se crea la mayor parte del trabajo. Los artistas desarrollan recursos, los programadores escriben el código fuente y se crean música, sonidos y niveles. Durante el desarrollo, se establecen hitos para realizar un seguimiento del progreso:

  1. Prototipo: como se mencioné anteriormente, la primera prueba del juego, generalmente se realiza en la etapa de preproducción, y es fundamental para garantizar que el proyecto es viable.
  2. Primer jugable : es la primera versión digital del juego, con muchos de los elementos principales del juego incluidos, aunque puede que no esté completo. Esta etapa le da al editor una mejor idea de cómo será el juego real, y si puede funcionar en la práctica.
  3. Vertical Slicing: es una muestra completa del juego que incluye todas las funciones y que pueden jugar los editores potenciales. Esto se utiliza a menudo para presentar el juego a los inversores. Un corte vertical puede durar unos minutos o hasta media hora completa.
  4. La fase pre-alfa: es donde se desarrolla la mayor parte del contenido. A menudo se agregan y eliminan funciones aquí antes de que se complete el juego.
  5. Alpha: todas las características clave están incluidas en esta etapa y el juego es completamente jugable. Por supuesto, aún se pueden hacer adiciones y el juego se puede modificar y revisar si es necesario. después de ser probado por los evaluadores de control de calidad para asegurarse de que todo funcione sin problemas.
  6. Beta: en este punto, todo el contenido y los activos están integrados y el equipo debe centrarse en la optimización en lugar de agregar nuevas funciones o características. Muchos desarrolladores lanzan versiones gratuitas de la Beta para que los jugadores las prueben por adelantado y reporten errores o posibles problemas que puedan solucionar antes del lanzamiento final.
  7. Lanzamiento: todos los errores han sido corregidos y el juego está listo, con una Gold Master, o versión final que será la que se lance al público, ya sea en formato óptico, en formato digital para la descarga, etc.

Hoy en día, muchos desarrolladores utilizan motores gráficos (game engine) de desarrollo de juegos para simplificar la creación y reutilizar funciones. Algunos motores, como CryEngine y Unreal Engine, tienen una curva de aprendizaje pronunciada, mientras que otros, como Construct 2, son accesibles para principiantes y no requieren programación. Unity Game Engine se encuentra en un punto intermedio y es amigable para principiantes, habiéndose utilizado para crear juegos populares y comerciales.

En el desarrollo devideojuegos, se necesitan muchos roles para ayudar a que el proceso, por tanto, los recursos humanos en los grandes estudios (algunos pequeños desarrolladores pueden ser solo una persona) suelen ser:

  • Gerente de proyecto: se asegura de que el proceso de desarrollo del juego se desarrolle sin problemas, es el centro de comunicación entre el diseño de desarrollo, los equipos y los ejecutivos.
  • Desarrolladores/programadores: su trabajo incluye ayudar a convertir el concepto de diseño en código fuente para crear un juego totalmente jugable. Son ingenieros de software e informáticos con una sólida experiencia en programación (en diversos lenguajes de programación), creatividad y algunas habilidades matemáticas. También pueden intervenir en etapas de depuración (debugging) y compilación para obtener el binario final a partir del código fuente. Por supuesto, también habrá un equipo de mantenimiento, encargado de lanzar parches o actualizaciones para corregir bugs o ir mejorando el título con las distintas versiones.
  • Diseñadores gráficos: es el impulsor creativo del juego y, generalmente, un cruce entre un guionista y un artista gráfico, con algunos conocimientos de programación. También habrá artistas conceptuales, animadores, modeladores 3D, artistas de efectos especiales (VFX), etc. Todos ellos encargados de aportar el color, el movimiento, y la vida de los gráficos del título.
  • Ingenieros de audio/diseñadores de sonido/compositores: los expertos en sonido desarrollan efectos de sonido realistas, graban voces en off/diálogos entre personajes y crean bandas sonoras que crean el ambiente para los jugadores, agregando suspenso o pistas de audio.
  • Probadores: también son conocidos por su control de calidad, encargados de probar el juego en búsca de errores o problemas de cualquier tipo, incluso prueban que las instrucciones sean claras para el jugador, antes de que se lance el juego al público.
  • Otros roles: por supuesto, también puede haber otros cargos en las grandes empresas, e incluso algunas otras profesiones que intervienen en la creación del videojuego, como los traductores o dobladores, que son los encargados de traducir y poner voces a los personajes.

Post-producción

Una vez llegamos a esta etapa del desarrollo del videojuego, se produce uno de los momentos más emocionantes para los estudios y creadores de títulos. Tras años de arduo trabajo finalmente han dado sus frutos y las ventas de videojuegos (con suerte) serán un éxito, aportando los beneficios necesarios para la empresa.

Pero una vez que se completa la producción y se envía el juego, el proceso de desarrollo continúa y algunos miembros del equipo son relegados al mantenimiento y corrigen errores reportados o detectados, a mejorar la optimización, agregar expansiones, remasterización, etc., como he comentado anteriormente.

Cómo funciona un videojuego

iPhone 15 Pro Gaming

Para comprender cómo funciona un videojuego, primero hay que entender todas las piezas implicadas y su función:

  • Hardware: un videojuego se ejecuta en una plataforma de hardware, que puede ser una consola de juegos, un PC, o un dispositivo móvil, entre otros. Esta plataforma incluye una unidad central de procesamiento (CPU), una unidad de procesamiento gráfico (GPU), memoria RAM, almacenamiento secundario o ROM donde se almacena el videojuego en sí y otros componentes como los periféricos de entrada, que permiten controlar lo que sucede en el videojuego, como es el caso del joystick, el teclado, el ratón, pantalla táctil, mandos, etc.Y también tenemos los periféricos de salida, que permiten al usuario o jugador sentir lo que sucede en el videojuego, como los altavoces, la pantalla, o algunos sistemas como el Force FeedBack. Y, por supuesto, para los videojuegos multijugador será necesaria una red que conecte con los otros dispositivos del resto de jugadores.
  • Software del sistema: cada plataforma tiene su propio sistema operativo o entorno de ejecución que administra los recursos de hardware y proporciona la base para que el videojuego se ejecute. Podemos encontrar desde macOS, Linux y Windows en PC, hasta sistemas como webOS o TizenOS para smart TVs, pasando por iOS y Android de dispositivos móviles, o sistemas como OrbisonOS de la PlayStation o Xbox OS (Windows NT) de la Xbox. Estos sistemas son muy importantes para el funcionamiento del videojuego, ya que mediante llamadas al sistema harán que se cumplan las funciones que el usuario introduce mediante los sistemas de control citados anteriormente (periféricos de entrada).
  • Motor gráfico: la mayoría de los videojuegos utilizan un motor , que es un software diseñado específicamente para el desarrollo y ejecución de videojuegos. Ejemplos populares incluyen Unity, Unreal Engine y Frostbite. Estos motores proporcionan herramientas para la creación de gráficos, física, inteligencia artificial y más. En ellos se basarán para poder obtener los resultados que se esperan del videojuego. Por ejemplo, la física de la que hablé anteriormente, la inteligencia de los personajes no jugadores, la lógica del juego, etc., para que todo tenga una coherencia. El motor de física, integrado en este motor gráfico se encarga, por ejemplo, de enviar a las unidades de procesamiento los cálculos necesarios para simular movimientos, colisiones realistas, la incidencia de la luz, fuerzas, trayectorias, velocidades, aceleraciones, etc. En el caso del motor de IA, será el que controle los personajes o elementos del videojuego no sujetos al control del jugador, haciendo que tengan un comportamiento coherente, que puedan seguir rutas, realizar acciones, tomar decisiones tácticas, responder a las acciones del jugador, etc., es decir, darles vida.

Jaime Herrera

Jaime Herrera

Técnico electrónico y experto en el sector de los semiconductores y el hardware. Con una amplia y sólida trayectoria en el campo de la electrónica, he acumulado una extensa experiencia. Mi pasión por la tecnología y la informática me ha impulsado a dedicar décadas de mi vida al estudio y desarrollo de soluciones en este fascinante sector. Como técnico electrónico, he tenido el privilegio de trabajar en una variedad de proyectos y desafíos, lo que me ha permitido adquirir un profundo conocimiento y experiencia en la creación, diseño y mantenimiento de dispositivos electrónicos.

>
Guía Hardware
Logo