Unity Ads es una de las dos plataformas que nos permiten mostrar anuncios y monetizar nuestros juegos de Unity, ya vimos una introducción a admob, la plataforma de publicidad ofrecida por Google.
Me gusta usar Unity Ads, por que es una forma de agradecer a Unity el esfuerzo que hacen ofreciéndonos el IDE de desarrollo de juegos de forma gratuita. No es el único motivo, es tan buena, o incluso mejor que la plataforma de Google. Son anuncios de juegos para gente que está jugando.
Configurando los Ads Services desde Unity.
El primer paso es dar de alta nuestro proyecto en los Unity Services. Unity ofrece muchos mas servicios que los Ads, como estadísticas, servicios multijugador o el Build Cloud. Si ya estamos dados de alta en Unity Services el paso es muy sencillo, si no lo estamos, tan solo es un poco mas largo, pero igual de sencillo. Tendremos que informar el nombre de nuestra empresa y nuestro nombre.
Abrimos desde el Menú: Windows->Services.
Nos mostrará los servicios que podemos activar. Selecionamos Ads.
En la segunda pantalla nos pide que indiquemos si el juego va a ser usado por jóvenes, en mi caso es un juego que puede ser jugado por niños a partir de los 8 o 9 años, así que prefiero que Unity no muestre anuncios de juegos dirigidos a un público meramente adulto.
En la tercera pantalla marcamos la opción de Test Mode, estamos desarrollando el juego, tenemos que desmarcarla cuando vayamos a distribuirlo. Pulsamos el botón que los llevará al Dasboard de Unity Ads donde configuraremos los anuncios. Aunque Unity ya nos ha preparado un anunció por defecto que será el mostrado en nuestra aplicación. Por lo que dejaremos la configuración de nuevos anuncios para mas adelante.
Creando el script para mostrar nuestro anuncio.
Si solo queremos mostrar un anuncio es sorprendentemente sencillo. Tan solo tenemos que llamar a una función.
[code language=”csharp”]
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Advertisements;
public class showUnityAd : MonoBehaviour {
public void ShowStandardVideoAd() {
Advertisement.Show ();
}
}
[/code]
Este script lo podemos asociar a cualquier botón y se mostrará nuestro anuncio! Ya esta, increíblemente sencillo. Nos faltan muchas opciones de configuración, pero la base ya la tenemos.
Opciones de configuración en el Dashboard de Unity Ads
En el dashboard es donde podemos controlar los tipos de anuncios que tenemos para nuestras diferentes aplicaciones.
Aquí nos está mostrando la información del proyecto SuperSpartyBros. El nombre lo recupera del que le damos al proyecto al crearlo, no utiliza el del ejecutable que creamos. Si seleccionamos la plataforma, podremos ver los anuncios que tenemos configurados.
Unity nos crea Video y Rewarded Vide, nosotros podemos crear más. El anuncio que nos mostrará Unity es que que tenemos marcado como Default. Pulsando sobre el botón Edit accedemos a las opciones del anuncio.
Como vemos no hay muchas opciones. Podemos configurar lo segundos que le damos al usuario para que se salte el anuncio, y para el caso de los Rewarded Vídeos, ni eso!
Más opciones
El sistema de Unity Ads nos permite mucho mas que simplemente mostrar un anuncio. Realmente la mayoría de juegos los utilizan para que el usuario pueda obtener ventajas con el visionado de vídeos, algo así como un pago para ganar, pero viendo publicidad.
Para ello tendremos que preparar una función CallBack, que le pasaremos al método Show y que Unity llamará una vez finalizado el visualizado del vídeo por parte del usuario.
[code language=”csharp”]
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Advertisements;
public class showUnityAd : MonoBehaviour {
public void ShowStandardVideoAd() {
ShowOptions opcions = new ShowOptions();
options.resultCallBack = FuncionQueLlamaraUnity;
Advertisement.Show ("rewardedVideo, opcions);
}
void FuncionQueLlamaraUnity(ShowResult result)
{
if(result == ShowResult.Finished) {
//le damos el premio al usuario, que ha finalizado de ver el vídeo.
}else if(result == ShowResult.Skipped) {
//El usuario no ha finalizado el vídeo. Se queda sin premio.
}else if(result == ShowResult.Failed) {
//Error al cargar el vídeo.
}
}
}
[/code]
Como veis el código es tan solo un poco mas complejo que el anterior. Creamos la variable opcions, que contendrá la función CallBack a la que llamara unity al finalizar el visionado del video. Pasamos esta variable, junto al nombre del anuncio a ejecutar a la función Show, y preparamos nuestra función.
Ahora ya solo queda crear un juego que sea un pelotazo!
[…] con publicidad, un juego de Unity para plataformas móviles: Puedes usar los vídeos de Unity, el Unity Service Ads, o puedes usar la opción de Google: admob, lo que viene a ser el adsense de las plataformas […]