Más de 40 fantásticos tutoriales de desarrollo de juegos de toda la Web

La comunidad indie gamedev es increíble: está dispuesta a compartir consejos, trucos, consejos e incluso tutoriales detallados que explican conceptos importantes. Aquí, he reunido algunas docenas de mis ejemplos favoritos de Internet, que cubren codificación, matemáticas, diseño de juegos y desarrollo de juegos. Esta es la calidad del contenido que aspiramos alcanzar en Gamedevtuts+.

Artículos Relacionados
  • Más de 15 análisis, post mortems y documentos de diseño de juegos
  • Codificación
  • Matemáticas
  • Diseño de juego
  • Estética y presentación.
  • Ser un desarrollador de juegos

Codificación

Uso de campos potenciales en un escenario de RTS

Este tutorial de IA tiene un enfoque interesante para el pathfinding. En la imagen de arriba, suponga que el punto verde es un carácter controlado por computadora, la E blanca es su destino objetivo y los bloques marrones son montañas infranqueables. La técnica básica es hacer que el objetivo genere un campo positivo y las montañas generen campos negativos, como si fueran cargas eléctricas positivas y negativas. Luego se agregan los campos, como se representa por los distintos tonos de azul, y el punto verde simplemente se mueve a la posición adyacente con el "pull" más alto (es decir, el de azul más claro).

El tutorial se sumerge en mucho más detalle, mostrando cómo lidiar con las unidades enemigas, los mínimos locales y otras situaciones..

Juego de la vida de Conway para superficies curvas


Una demo del resultado final..

Es posible que hayas visto el tutorial de Stephane Beniak sobre el clásico Juego de la vida aquí en Gamedevtuts +. Este tutorial, por Mikola Lysenko, discute una interesante nueva variante: una generalización del Juego de la Vida para espacios lisos, aplicada a superficies curvas arbitrarias..

Mikola no solo da los pasos necesarios para recrear su versión; se sumerge profundamente en las matemáticas y los conceptos necesarios para entenderlo, y gradualmente va logrando el impresionante resultado final..

Crear un mundo de desplazamiento infinito (Starling / Nape)


Video de la demo en vivo..

Este es un tutorial breve y simple, destinado a mostrar el poder de las bibliotecas Nape y Starling Flash, ¡pero me gusta mucho el resultado! La lógica real detrás de la creación del terreno es lo suficientemente fácil de entender como para poder portarla a la mayoría de las otras plataformas de juegos..

Simular la superficie del agua en LibGdx


Video demo del efecto final..

Este tutorial, de Rahul Srivastava de Rotating Canvas games, tal vez iría bien con el tutorial Dynamic 2D Water Effects de Michael Hoffman, que publicamos a principios de este año. Rahul explica cómo usar los sombreadores OpenGL, una función sinusoidal y un ruido aleatorio para crear este efecto de superficie de agua limpia.

Entendiendo la baraja de Fisher-Yates

Bueno, esto es realmente más un tutorial directo de CS que un tutorial de codificación específico de gamedev, pero no pude resistirme a incluirlo aquí porque me encanta la presentación. Las animaciones barajadas ayudan a ilustrar lo que ya es un claro tutorial.

Detección de silueta

Este artículo explora una pregunta: ¿cómo podemos detectar la silueta de un objeto 3D? Como suele ser el caso, el primer paso es definir claramente el problema; Una vez hecho esto, el tutorial repasa los problemas específicos y ofrece algunos ejemplos de código. Al final, puede tomar un modelo 3D arbitrario y generar su esquema 2D.

Generación de mapas poligonales para juegos

Este es uno de mis tutoriales favoritos de todos los tiempos. Es completo y está muy bien explicado, con muchos diagramas y demostraciones. Incluso si no tienes planes de generar mapas para tus juegos, creo que encontrarás una lectura fascinante..

Detección de colisión y respuesta en N

Recuerda n? Es un clásico juego de plataformas Flash, lanzado originalmente en 2005 y eventualmente transferido a Xbox, DS y PSP. Realmente llamó la atención de la gente en ese momento debido a su movimiento súper suave y la mecánica de colisión..

En este dos partes (la segunda parte está aquí), los desarrolladores de N explican los conceptos básicos de sus sistemas de detección de colisiones. Si desea llevar esto más lejos, Shiu nos escribió un tutorial sobre los mismos conceptos..

Detección de colisiones Pixel-Perfect

El método simple de detección de colisiones AABB (caja delimitadora alineada con el eje) es adecuado para muchos juegos, pero según mi experiencia, los desarrolladores de juegos a menudo desean obtener un método de píxel perfecto lo más rápido posible. Este tutorial es bastante específico para XNA, pero explica los conceptos con la claridad suficiente para que pueda implementarlos en la plataforma de desarrollo 2D que elija..

Metaballs 2D en XNA


Demostración del efecto final..

Este efecto de estilo de lámpara de lava se usa a menudo para procesar líquidos, y es bastante sencillo de renderizar con código, ¡no se requieren sombreadores personalizados! Este tutorial está en XNA, pero es bastante fácil de portar a otras plataformas.

Diversión de orden superior: Implementación de plataformas 2D

Rodrigo Monteiro divide los juegos de plataformas en 2D en cuatro tipos (basado en mosaico (puro), basado en mosaico (suave), máscara de bits y vectorial) y explica de manera sucinta cómo se puede implementar el movimiento en cada caso. Esto logra ser una excelente introducción a los conceptos y una excelente guía de referencia..

Lode's Computer Graphics Tutorial: Raycasting

Puede que no sea estrictamente necesario escribir sus propios difusores de rayos en estos días, gracias a Stage3D, Unity y OpenGL, pero creo que todavía es interesante aprender los conceptos básicos de la creación de una sala en 3D. Este tutorial explica la idea aproximada, le muestra cómo construir el raycaster de color sólido que se muestra en la imagen de arriba y finaliza al implementar un renderizador de texturas de estilo 3D de Wolfenstein..

Manual de programación de juegos

Probablemente no deberías intentar leer esto en tu teléfono inteligente. Este enorme artículo de Randy Gaul es un excelente resumen, lleno de excelentes consejos para la programación de juegos en C++.

Haz tu propio juego de rol con el motor Source

The Source Engine es mejor conocido por impulsar juegos de FPS como Half-Life 2 y Team Fortress 2, pero en este tutorial, Ben Evans te muestra cómo crear un prototipo de RPG básico. Explica cómo crear misiones, agregar diálogos y configurar una condición de finalización..

The Pure Advantage: Advanced Racing Game AI

La inteligencia artificial para los oponentes controlados por computadora no debe estar necesariamente diseñada para que sean lo más competentes posible; competir contra un conjunto de conductores perfectos no sería divertido. Aquí, Eduardo Jiminez explica la "banda elástica" de AI en Pure, diseñada para que el juego se sienta competitivo y, por lo tanto, emocionante, al evitar que el jugador se atrase demasiado (¡o se ponga demasiado al frente!).

Cómo programar juegos independientes

En esta charla de 80 minutos (media presentación, media sesión de preguntas y respuestas), Jonathan Blow of Braid and The Witness da el consejo que se habría dado a sí mismo como desarrollador de juegos de pregrado.

A * Pathfinding para principiantes

Hay muchos tutoriales de A * pathfinding en línea, pero creo que este es el mejor para empezar. Patrick Lester explica el método de forma rápida y directa, con sugerencias y aclaraciones, e incluso proporciona un código fuente y algunas sugerencias sobre qué guías leer a continuación..

Arregla tu paso del tiempo!

Si tienes un buen conocimiento de las matemáticas de la mecánica, codificar un simulador de física parece una tarea simple. En el papel, lo es. En la práctica, la naturaleza discreta de cualquier simulación de código significa que se encontrará con varios problemas, por ejemplo, si el tiempo delta del simulador no coincide con la velocidad de visualización de su juego, encontrará que la simulación se ejecuta más rápido o más lento de lo que esperaba..

En este breve pero importante artículo, Glenn Fielder explica por qué ocurre el problema y cómo solucionarlo..

Platformers de todos

Esta bien no es técnicamente Un tutorial, pero sin duda merece un lugar aquí. Chris DeLeon ha proporcionado un juego de plataformas de tres niveles, completo con un editor de niveles y un código fuente completo. Como él lo pone:

Esto no es tanto un proyecto de código abierto como un montón inusualmente expansivo de código de ejemplo / demostración conectado, aunque está pensado para abarcar tanto o más sobre diseño de juegos (experiencia del usuario, ajustes, relaciones de sistema) y producción de juegos (compromisos de desarrollo, creación eficiente, canalización de contenido) ya que se trata de la programación subyacente.


Matemáticas

Cuaterniones

Los cuaterniones son una forma conveniente de representar rotaciones en el espacio tridimensional. […] La principal ventaja que tienen sobre los ángulos de Euler es que pueden interpolarse sin verse mal. Puede componer rotaciones al multiplicar los cuaterniones, al igual que con las matrices de rotación, pero una unidad de cuaternión es siempre una rotación, mientras que una matriz de 3 × 3 podría ser una serie de otros tipos de transformaciones (posiblemente indeseables).

Este tutorial de tres partes de Twisted Oak Studios explica las matemáticas de los cuaterniones. Esto no es una pintura por números post; asume que tienes interés en aprender sobre este tipo de conceptos, en lugar de ponerlos en práctica.

Diversión con polígonos convexos

Hay una gran cantidad de excelente contenido en el sitio de Paul Firth, pero este es un post al que me estoy refiriendo: un par de métodos útiles para trabajar con polígonos convexos (es decir, formas de lados rectos que no se doblan sobre sí mismas).

Paul explica cómo averiguar el área dentro de un polígono y cómo detectar si un punto determinado está dentro de un polígono. Apenas emocionante, pero frecuentemente útil.

Vector Maths - Un manual para programadores de juegos

Otra gran guía de Paul Firth. Esta vez, aborda prácticamente todo lo que necesitas saber, como desarrollador de juegos, para tener un buen conocimiento de las matemáticas vectoriales. Utilizo esto como referencia (¡está perfectamente organizado!) Pero creo que también serviría como un tutorial de introducción decente.

Algebra Lineal para Desarrolladores de Juegos

David Rosen de Wolfire Games repasa los conceptos básicos de vectores y matrices en esta serie de cuatro partes, con numerosos ejemplos relacionados con juegos tanto en 2D como en 3D..


Diseño de juego

La base de datos No Twinkie

Como TVTropes por malas decisiones de diseño de juegos. Ernest Adams ha estado siguiendo el rastro de "fallas en el juego" durante más de una década (tanto por sus propias experiencias como por sugerencias de los lectores), y las ha compilado en una lista categorizada aquí..

Aprendiendo a amar los patrones de ataque enemigo

Los grandes jefes en los juegos de rol deberían ser difíciles, pero no es divertido si son imposibles de vencer. Aquí, Solitayre explica cómo estructurar los patrones de ataque de un enemigo para hacer batallas memorables y gratificantes..

Diseñando Alrededor de un Mecánico de Juegos Básicos

En este artículo, Charmie of FunstormGames transmite la metodología de diseño de juegos engañosamente simple de Wil Mozell: el "Diagrama del núcleo" que se muestra arriba. Como muestra la publicación, esto se aplica sorprendentemente bien a muchos juegos diferentes, por lo que ofrece una manera interesante de pensar en el diseño..

11 consejos para hacer un divertido juego de plataformas

Es difícil categorizar esta publicación: contiene consejos sobre codificación, escritura de historias, interfaz de usuario y trabajo en equipo, todo centrado en el tema de la creación de juegos de plataforma. Si planea hacer un juego de plataformas, lea esto, sea cual sea su rol!

La química del diseño de juegos

¿Se pueden dividir las habilidades de juego en una serie de "átomos"? Danc dice que sí, y presenta su método para hacerlo aquí. De esta manera, a los mecánicos de un juego se les puede dar una estructura clara, que a su vez se puede usar para diseñar el juego para que el jugador avance, siempre aprendiendo o mejorando.

Si te gusta esto, echa un vistazo a la presentación de Danc La aplicación de rescate de Princess, también.

No tengo palabras y debo diseñar

Nota: Vea también la versión revisada más adelante de este artículo (PDF).

Como diseñadores de juegos, necesitamos una forma de analizar los juegos, tratar de entenderlos y entender qué funciona y qué los hace interesantes. Necesitamos un lenguaje crítico. Y dado que esta es básicamente una forma nueva, a pesar de su enorme crecimiento y su asombrosa diversidad, necesitamos inventar una.

Principios de la sensación virtual


Los estados superpuestos e interactivos de los controles de Super Mario..

Steve Swink, autor de Game Feel, discute el concepto de sensación virtual - "lo que hace que tu madre se incline hacia la izquierda y hacia la derecha en su asiento mientras trata de jugar al Rad Racer", examinando siete formas diferentes de afectarlo. Para ayudar a demostrar su punto, usa ejemplos de juegos populares y demostraciones simples jugables que se centran en los controles.


Estética y presentación.

Jugarlo o perderlo


Mira la presentacion.

Martin Jonasson y Petri Purho demuestran cómo un clon de Breakout simple se puede hacer mucho más divertido al agregar "jugo": pequeños toques de pulido. Asegúrese de revisar los diversos enlaces publicados debajo del video en YouTube.

Leyenda de Dungeon - Iluminación dinámica en Sprites

Gracias al mapeo normal, estos sprites 2D simples se pueden iluminar de forma dinámica según la luz que los golpea. Eche un vistazo al esqueleto del sombrero pirata, en particular: un lado está iluminado en azul; el otro se enciende en rojo. Es una excelente manera de combinar el arte de píxeles retro con el poder de los modernos entornos de juegos en 3D..

Iluminación dinámica y sombras


Demostración del efecto..

Inspirado en el post anterior, Matt Greer ideó un método para agregar iluminación dinámica y Sombras al pixel art 2D. Este tutorial entra en más detalles que el primero, explicando las matemáticas detrás del efecto con algunos ejemplos de código.

Desvanecimiento de tinta de Incredipede


Puedes ver el efecto en las transiciones del menú en los primeros segundos de este video.

Colin Northway explica cómo creó el efecto de atenuación de sangrado de tinta para las transiciones de menú en Incredipede. Además de explicar el efecto genial, esta publicación también destaca la importancia de la prueba y el error.

Guía de laicos para la proyección en videojuegos.

Citaré del autor, Radek Koncewicz:

La proyección básicamente significa tomar un objeto tridimensional y mostrarlo en un plano 2D (es decir, una pantalla). Hay varias maneras de lograr esto, y cada técnica tiene un impacto profundo en la apariencia y la mecánica de un juego..

Antes de leer este artículo, nunca había notado realmente la proyección en los juegos, podía distinguir un juego isométrico de un verdadero juego en 3D, claro, pero como muestra este artículo, "isométrico" no significa realmente lo que pensé que era ...

Arte del juego 2D para programadores

Esta es una colección de guías estelares paso a paso para dibujar dibujos animados adecuados para juegos, sin necesidad de utilizarlos. dibujar cualquier cosa. Las guías son tan simples que se siente más como un montaje de una obra de arte que una creación, y lo digo como un cumplido.

Cómo elegir los colores de manera procesal

Ya hemos hablado de paletas en Gamedevtuts +: cómo elegirlas manualmente y cómo permitir que los jugadores las personalicen. Este artículo explica cómo dejar que un computadora Elija una paleta adecuada para su juego, ideal para cualquier cosa con niveles generados por procedimientos!

Así que quieres ser un artista de píxeles?

Aunque este tutorial tiene más de una década, sigue siendo una gran guía para programadores que no tienen ninguna habilidad artística para hacer un pixel art de aspecto decente rápidamente..

Si tiene una inclinación más artística, consulte el tutorial de píxeles de Derek Yu.


Ser un desarrollador de juegos

Cómo ser un desarrollador de juegos independiente

Este es mi artículo de referencia para los aspirantes a desarrolladores de juegos independientes que desean saber en qué se están metiendo. Está lleno de pequeñas citas como esta:

El diseño de juegos y el diseño de niveles son habilidades diferentes: uno es diseñar un sistema y el otro está trabajando en cómo presentar ese sistema de la manera más gratificante.

Dato curioso: en realidad usamos este artículo como una de nuestras guías de referencia cuando elaboramos los planes para Gamedevtuts.+.

Terminando un juego

En nuestra encuesta reciente, la selección más común para la parte más difícil de desarrollar un juego fue "terminarlo".

Aquí, Derek Yu enumera consejos prácticos para realmente hacer juegos. (El post también se dobla como una patada de motivación en la parte trasera!)

Visualizando el proceso creativo


"La creatividad es como una serpiente que se traga una serie de pelotas de tenis".

Danc explica su proceso creativo para crear excelentes juegos, incluido el importante proceso de creación de prototipos (y el proceso igualmente importante de deshacerse de las malas ideas).

Lecciones aprendidas del indie 'Meatgrinder'

Me senté con los desarrolladores. Hablamos. Jugué sus juegos. Me contaron sobre sus relaciones, sus pruebas y sus brillantes esperanzas. Honestamente, fue desgarrador. Tantos grandes juegos. Y, sin embargo, hay muchos modelos de negocios rotos, técnicas de producción rotas y filosofías rotas de lo que importa. El ochenta por ciento de los juegos que se muestran no recuperarán sus presupuestos de desarrollo.

Esto es más una guía de lo que no que hacer; Danc comparte los errores más comunes (y devastadores) que cometen los estudios de juegos independientes. Aprender de los demas.


No se olvide: además de publicar tutoriales de gamedev aquí, a menudo también compartimos lo mejor de la web en nuestros canales de Twitter, Facebook y Google+. También he creado una comunidad de Google+ para compartir artículos como estos. Si sabes de un gran tutorial que me perdí, házmelo saber!

También puedes ver la gran selección de fondos de juego y otros recursos de juego bellamente diseñados en Envato Elements.

Activos del juego en Envato Elements

(Y, naturalmente, si ha escrito uno de los artículos presentados anteriormente, considere esto como una invitación abierta a escribir para nosotros ...)