Apis en Unity
Implementación de consumo de API en Unity
Tengo que comenzar diciendo que hay, visto por mi, dos formas de consumir la api:
- HttpWebRequest
- UnityWebRequest
El primero nativo de C#, que es lenguaje preferido de Unity, y el segundo entregado por Unity, que debe ser una mejora del nativo, dando más funcionalidad y compatibilidad con su motor.
Aqui la pagina oficial de la documentación de la librería entregada por unity.
https://docs.unity3d.com/ScriptReference/Networking.UnityWebRequest.html
Vamos a explicar como usar un método GET y un POST, ya que son los dos más usados para buscar datos y guardar datos.
Método GET
Para el método get ademas de usar lo recomendado en la documentación se hicieron varias cositas.
Esto es lo nuevo que se usó, aparte de la documentación, lo que traduce es en:
Tomar una lista de datos tipo JSON (que es el formato más común para estas APIS) e iterar tomando cada tupla y concatenándolo a un texto.
Teniendo como resultado la impresión del top 10 de puntuaciones
Ahora lo importante aquí no es como se usó el GET ni como imprimimos en pantalla, eso lo pueden ver en el código del proyecto.
https://github.com/luisplata/pacman1981/blob/master/Assets/escenario/ControladorDeCreditosScore.cs
Si no cómo tratar los datos entrantes, que es una lista de objetos en formato JSON.
Por lo que toco implementar una clase abstracta construida por nosotros para poder tomar esa lista de objetos, ya que la clase nativa de unity no lo permitía.
Aquí la implementación:
https://github.com/luisplata/pacman1981/blob/master/Assets/escenario/JsonHelper.cs
Lo que nos permitió sacar esa información es agregar a esa lista a un objeto creado por nosotros.
En la última línea está retornando el wrapper los ítems. Pues es lo que se creó en la función “FixJson” para poder retornar una lista de objetos. Ya que es en ese caso si soporta la conversión la librería de unity.
Con eso terminamos la parte de consultar data.
Método POST
Para este método el tratado de la consulta es casi igual pero añadiendo el componente de formulario que se tiene que enviar para que la API pueda leer los datos de ahí.
Coloco enlace de documentación del método POST de http y porque hay que hacer un formulario.
https://www.w3schools.com/tags/ref_httpmethods.asp
Ahora la parte idéntica es la preparación del llamado añadiendo la parte del POST
Resaltando las partes importantes. que son: la creación del formulario, el adicionado de los datos con llave valor, y la inclusión del mismo en el método POST de la librería de unity.
Con esto mandamos la data necesaria a nuestro servidor que nos devolverá un éxito o un error. En el caso de éxito lo que hacemos es volver a consultar nuestro score para que traiga la información volviendo al método GET antes explicado.
Get PacMen_1981
PacMen_1981
Videojuego creado a partir de pacman de 1981 de atari 2600
More posts
- Sistema de PuntuaciónJun 01, 2020
- Comenzamos con el proyectoMay 31, 2020
- Pacman, IAMay 30, 2020
- Interfaz de UsuarioMay 28, 2020
- Creando la música o sonidos del juegoMay 28, 2020
- Colocando movimiento del fantasma que buscaMay 27, 2020
Leave a comment
Log in with itch.io to leave a comment.