Conceptos básicos de creación de juegos: lo que necesitas saber para comenzar con gdevelop.

Los conceptos básicos de GDevelop son simples. Lea la siguiente información para comenzar con el software. Si no tiene GDevelop, descargue la última versión aquí! https://gdevelop-app.com/download/

Coordenadas

Los objetos en la pantalla / escena de GDevelop tienen una coordenada X y una coordenada Y. Estas coordenadas corresponden a la posición horizontal (eje X) y la posición vertical (eje Y) en el plano cartesiano.

La coordenada X disminuye a medida que se desplaza hacia la derecha y se desplaza hacia la izquierda. La coordenada Y disminuye a medida que se desplaza hacia arriba y hacia abajo.

Para mover o rotar objetos, debe especificar el ángulo deseado en grados. La siguiente ilustración muestra cómo GDevelop entiende el ángulo de rotación:

Si utiliza funciones trigonométricas como el seno o el coseno, deberá expresar los ángulos en radianes. (1 radian = 180 / PI grados y 1 grado = PI / 180 radians. PI es el número que es aproximadamente igual a 3.14159).

Events y cómo se agarran los objetos

Los eventos que usas para crear las reglas de tu juego se componen de condiciones y acciones.

La mayoría de las condiciones y acciones se refieren a objetos. Las condiciones ejecutan una prueba en los objetos. Las acciones manipulan el objeto.

Una acción, sin una condición, se refiere a todos los objetos. Si utiliza un objeto por primera vez en un evento, GDevelop probará o modificará todos los objetos con este nombre en la escena. Si usa el objeto en el mismo evento nuevamente, GDevelop probará o modificará solo los objetos que fueron seleccionados por las condiciones anteriores.

Este proceso es una aplicación de la lógica. Por ejemplo, este evento no tiene condición. Se eliminarán todos los objetos llamados “Cuadrado”:

El evento a continuación tiene una condición. Solo eliminará los objetos “Cuadrados” con una posición X inferior a 100 píxeles:

Vélo en acción! 🎮Abre este ejemplo online: https://editor.gdevelop-app.com/?project=example://object-selection

Eventos (Events):El orden es importante.

¡El orden de los acontecimientos es crítico!

Los eventos en la parte superior se ejecutan primero. Los eventos se ejecutan cada vez que se muestra su juego. Esta pantalla se llama un frame / cuadro. Se ejecuta unas 60 veces por segundo. Los siguientes ejemplos no son equivalentes:

El primer par de acciones de eventos crea un objeto “Cuadrado” en las coordenadas X: 100. Y: 200 (100; 200). Entonces el evento borra el cuadrado creado inmediatamente. No se muestra “Cuadrado” en la pantalla. Se elimina justo después de ser creado. El segundo par de acciones de eventos elimina todos los objetos “Cuadrados” de la escena / pantalla. Luego crea un “Cuadrado” en la escena / coordenadas de pantalla X: 100, Y: 200 (100; 200). Este evento muestra que es visible un cuadrado en la escena y luego se recreará de inmediato.

Mover objetos usando fuerzas incorporadas.

Los movimientos en los objetos pueden lograr con fuerzas. Las fuerzas se utilizan para “empujar” objetos.

Puede especificar:

  • Las coordenadas cartesianas de la fuerza (es decir, X e Y, en píxeles).
  • Sus coordenadas polares (fuerza vectorial ángulo y longitud).
  • La amortiguación de fuerza, un coeficiente entre 0 y 1.

Cada segundo, la longitud de la fuerza se multiplicará por la dispersión: un valor de 1 significa que la fuerza continuará para siempre. Un valor de 0 hará que se detenga inmediatamente. Todos los valores intermedios obligarán a la fuerza a detenerse gradualmente.

Algunos comportamientos que puede agregar a sus objetos moverán los objetos por sí mismos. Esto niega la necesidad de usar fuerzas. En este caso ver más abajo:

Ejemplo

Digamos que quieres mover un objeto hacia la parte inferior:

Puede agregar fuerza usando las coordenadas X / Y especificando 0 para la coordenada X y, digamos, 150 píxeles para la coordenada Y. También puede usar coordenadas polares y agregar una fuerza con un ángulo de 90 ° y una longitud de 150 píxeles.

Otras formas de mover objetos.

Algunos comportamientos, como el motor de física o Pathfinding, pueden mover objetos por sí mismos. En este caso, es mejor no utilizar el sistema de fuerzas integrado y, en su lugar, basarse únicamente en las acciones proporcionadas por las extensiones utilizadas.

Véalo en acción! 🎮Abra este ejemplo Online: https://editor.gdevelop-app.com/?project=example://move-object-with-physics

Variables

Las variables le permiten almacenar datos. Por ejemplo, una variable puede almacenar un número o un texto. Podríamos compararlos con cajones o cajas donde podemos archivar notas. Cualquier dato puede almacenarse en una variable, siempre que esté en formato de texto or numero. Cosas como la cantidad de vidas que un jugador se a quitado, la puntuación más alta del jugador, la cantidad de balas que quedan y / o la cantidad de enemigos muertos son ejemplos de lo que se puede almacenar en una variable. Probablemente va a almacenar números en las variables como una práctica común.

Las acciones y condiciones prueban o cambian un valor variable.

¿Dónde se almacenan las variables? (variable "alcance")

El alcance de una variable determina el lugar al que se puede acceder una variable. En GDevelop, hay tres ámbitos de variables disponibles:

  • Variables Globales son accesibles desde todas las escenas del juego. Por ejemplo, se pueden usar para almacenar la puntuación del jugador en diferentes niveles / escenas.
  • Variables de Escena solo son accesibles desde la escena en la que se crean. Se pueden usar para datos que solo conciernen a una escena. Una variable de escena podría acceder al tiempo restante para completar el nivel / escena.
  • Variables Objeto solo conciernen a un objeto. Por ejemplo, un héroe puede tener una variable “Salud” o “Munición”.
Lea más sobre las variables en la página Variables. Las variables se usan mucho y puedes usarlas en muchos ejemplos y en tutoriales.
¿Quieres ver cómo se usan las variables en un video tutorial? Consulte este tutorial: Variables explicadas para No programadores..

Tiempo transcurrido desde el último fotograma (TimeDelta).

El juego evalúa eventos y vuelve a pintar la pantalla varias veces por segundo: decimos que el juego se Actualiza, se Actualiza durante un “tick”. La frecuencia con que esto suceda depende de los recursos de su computadora: una computadora lenta puede generar 25 cuadros por segundo, una rápida 60. GDevelop generalmente puede garantizar que este valor sea el mismo en todas las computadoras. Sin embargo, la velocidad de algunas operaciones puede cambiar de una computadora a otra, por ejemplo, operaciones matemáticas y la representación de movimientos.

Para mantener constante la velocidad de los cambios, use la expresión TimeDelta (), que devuelve el tiempo en segundos desde el último fotograma.

Por ejemplo, no hagas esto:

Pero haz esto en su lugar:

  • El primer evento es agregar 20 a la variable cada vez que se actualiza el juego (es decir, tanto como sea posible, hasta 60 veces por segundo). Esta variable no es la misma de una computadora a otra: no podemos predecir el valor de la variable después de 10 segundos, por ejemplo, porque depende de la cantidad de cuadros, que procesa el juego.
  • El segundo evento es correcto y confiable: el número 300 se multiplica por TimeDelta (). Por lo tanto, la variable se incrementará al mismo tiempo en todas las computadoras. Como TimeDelta () devuelve un tiempo en el segundo, le permite cuantificar exactamente la cantidad: en nuestro caso, la variable crecerá a 300 unidades / segundo. Por lo tanto, podemos predecir que la vida aumentará en 3000 unidades en 10 segundos, sin importar qué número de fotograma se pintó durante este tiempo.

Recuerda: Usar TimeDelta() cuando desee agregar continuamente cierta cantidad a un valor. Si se pretende que su acción se inicie solo una vez (por ejemplo, durante una colisión en la que luego elimina el objeto), puede usar un valor discreto sin TimeDelta, ya que no depende de la velocidad del juego.

Cuando mueves un objeto usando fuerzas, no es necesario usar TimeDelta () ya que GDevelop lo usa automáticamente.

Y ... eso es casi todo lo que necesitas saber.

➡️ ¡Puede seguir leyendo los tutoriales para obtener más información sobre la creación de juegos reales con Gdevelop!.