Overview
Esta guía le muestra cómo tomar ventaja de esta nueva característica de Game Maker Studio 1.3
¿Cuál es application_surface?
Todo el mundo sabe plenos efectos de sombreado pantalla de los juegos modernos. Mayormente cada jugador sabe lo que es FXAA . Pero sólo unos pocos saben, cómo se hace en realidad.
Un shader no puede modificar la pantalla de “directamente”. Sólo puede modificar una textura. Así que una superficie es básicamente una textura que se representa sobre y esta textura es entonces modificada por un fragmento de shader, que se utiliza para modificar los colores de una textura.
Antes, superficies existían en GM: S pero si quería hacer efectos de pantalla completa, se necesitan para sacar todo su juego en uno, que era una molestia. Con GM: S 1.3, esto está a punto de cambiar. La partida es tablas sobre una superficie de forma predeterminada, lo que nos permite hacer efectos de pantalla completa con más facilidad. Esta superficie predeterminada es accesible en GML a través de la application_surface constante incorporado. Existe esta guía para cubrir ese tema.
Un Shader COOL!
1.) Crear un shader
2.) Pegue el código siguiente en la sección fragmento, deje la sección de vértice como es.
Este código se toma de este tema:[gmc.yoyogames.com]
No voy a entrar en detalles sobre cómo funciona, ya que no es el alcance de este tutorial. Así que si quieres para ponerse en marcha con shaders primero, no dude en visitar cualquier Tutorial GLSL línea.
Creación del objeto
Ahora, cree el objeto que desea utilizar para mostrar este efecto en la pantalla. Lo nombré objTV desde el shader es un efecto de la televisión.
Lo que necesitamos es tres eventos:
1.) Crear evento
En esta sección, vamos a hacer tres cosas. En primer lugar vamos a desactivar el dibujo automático de la application_surface. Esto se hace con este código:
Como se dice, se deshabilita la nueva superficie automático sea arrastrado automáticamente y esto nos permite aplicar un sombreado antes de que realmente prestamos esta superficie.
Luego, necesitamos una variable del shader. Para acceder a esta variable, tenemos que preguntarnos GMS donde se ubica lo que nos puede proporcionar un puntero. (Esto es en realidad un poco de materia de bajo nivel aquí, pero necesario, leer sobre los uniformes GLSL si quieres saber más.)
Así que almacenamos la ubicación del uniforme “tiempo” en nuestro s_time variable para acceder a ella más tarde. El shader necesita este uniforme para generar algo de animación.
El último es sencillo, vamos a usar nuestra propia variable de tiempo. El construido en las variables son o demasiado lento o demasiado rápido. Así que tenemos nuestra propia medición del tiempo. El sombreado utiliza ésta para la animación de las líneas de exploración.
2.) Paso Evento
El evento paso es bastante sencillo:
Aumenta el tiempo con cada paso y lo reinicia si crece demasiado grande. Usted puede modificar la velocidad de la animación cambiando 0,01 a lo que quieras.
3.) Final Draw Evento
Así que ahora aquí es donde sucede la magia.
En primer lugar, tenemos que obligar a la shader de salida de corriente y enviar la variable tiempo:
Ahora el sombreado está atado y que finalmente puede dibujar la superficie incorporada:
Esto le dice a GMS que hemos terminado con este shader.
Utilizando el objeto
Ahora sólo hay una cosa por hacer: Establece el objeto de persistente y añadirlo a la primera sala de su proyecto o no la coloque al persistente y sólo agregarlo a las salas en las que desee utilizar este pequeño efecto agradable.
Descargas
Mira el ejemplo a través de Steam:
Quieres descargar todo el Proyecto para la importación en GMS:[drive.google.com]
Gracias por leer y si encuentra útil esta guía, no dude en enviar cualquier comentario, de juegos o Pu-tas, aca dejo mi mail , [email protected]
Tenga en cuenta que esta guía debe GameMaker Studio 1.3 Standard Edition. En el momento de escribir esto, usted tiene que optar en la Beta actual, lo que potencialmente puede romper cualquier proyecto en ciernes. Así que sólo hacer esto si sabes lo que haces (se puede hacer retroceder el clie