Struttura di un gioco HTML5 (H5)

In genere, la maggior parte dei distributori di giochi ospita i propri giochi in un formato che può essere facilmente riprodotto a schermo intero o incorporato in un iFrame in un'altra pagina web o in una WebView all'interno di un'app.

La pagina che ospita il gioco (ovvero il canvas di gioco giocabile) contiene il codice AdSense ('il tag'), carica la logica JavaScript per il gioco e in genere contiene un elemento canvas in cui viene visualizzato il gioco.

Il nostro obiettivo con l'API Ad Placement è ridurre al minimo il codice che devi aggiungere al tuo gioco. In questo modo, puoi controllare gli annunci senza dover modificare costantemente il gioco e rilasciarne nuove versioni.

Esamina la struttura concettuale di un gioco HTML5 in questa figura. Il codice campione è disponibile nella sezione Struttura di un gioco H5 di esempio.

Esistono molti modi per creare giochi H5, utilizzando direttamente JavaScript o librerie di terze parti per grafica 2D e 3D che vengono visualizzate in un widget Canvas, motori di gioco e, in alcuni casi, processi di compilazione incrociata piuttosto complessi da altri linguaggi.

L'API Ad Placement è progettata per essere eseguita nello stesso documento del canvas del gioco e del tag adsbygoogle. Ad esempio, se aggiungi un gioco come iframe in una pagina più grande, il tag e tutte le chiamate all'API devono essere effettuati all'interno di questo iframe.

Esempio di struttura di un gioco H5

L'esempio più dettagliato che segue mostra le parti principali di una tipica pagina di gioco.

Esistono molti modi per creare giochi H5, utilizzando direttamente JavaScript o librerie di terze parti per grafica 2D e 3D che vengono visualizzate in un widget Canvas, motori di gioco e, in alcuni casi, processi di compilazione incrociata piuttosto complessi da altri linguaggi. I dettagli precisi del tuo gioco potrebbero differire da questo esempio.

<head>
   ## The Ad Placement tag ##
   # Configure your monetisation settings here and place the standard
   # boilerplate code for initialising the API functions. This code may change
   # depending on where the game is being distributed (eg. a website, a super
   # app, different publishers).
   <script async
       data-ad-frequency-hint="30s"
       src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-123456789" # your publisher ID
       crossorigin="anonymous">
   </script>
   <script>
      window.adsbygoogle = window.adsbygoogle || [];
      var adBreak = adConfig = function(o) {adsbygoogle.push(o);}
   </script>
   [...]
</head>
<body>
   [...]

   ## Your game code ##
   # This is your game logic that renders the playable canvas. Once you've
   # integrated your game with the Ad Placement API, this code won't change due
   # to ad configuration updates.
   <canvas id="game_canvas" width="100%" height="100%"></canvas>
   <script src="game.js"></script>
   [...]
</body>

L'API Ad Placement è progettata per essere eseguita nello stesso documento del canvas del gioco e del tag adsbygoogle. Ad esempio, se aggiungi un gioco come iframe in una pagina più grande, il tag e tutte le chiamate all'API devono essere effettuati all'interno di questo iframe.

<head>
  <!-- The adsbygoogle tag is not here -->
</head>
<body>
  <iframe src="https://www.my-game.com" title="My game" allow="autoplay">
    <!-- The game is loaded here and contains the adsbygoogle tag -->
  </iframe>
</body>

Come vengono distribuiti i giochi H5

I giochi H5 possono essere distribuiti in molti modi diversi e su molte piattaforme diverse. Spesso possono essere coinvolte diverse entità nella creazione e distribuzione dei giochi, tra cui:

  • Sviluppatori: le persone che creano i giochi
  • Motori: le aziende che forniscono gli strumenti per crearli
  • Provider di hosting: ospitano i giochi
  • Distributori: collaborano con gli sviluppatori per creare cataloghi ricchi di giochi
  • Publisher: proprietari dell'origine del traffico che vogliono inserire giochi sui propri siti o nelle proprie app.

In molti casi, le entità possono ricoprire questi ruoli: potresti sviluppare, ospitare e pubblicare i tuoi giochi.

I giochi possono essere giocati in diversi modi, tra cui:

  • A schermo intero: occupano tutto lo schermo per offrire un'esperienza immersiva.
  • Iframe/WebView: vengono pubblicati in una parte di un documento più grande.
  • Incorporati: vengono posizionati direttamente in pagine con altri contenuti.

Diagramma che mostra come vengono effettivamente visualizzati gli annunci

Le esperienze a schermo intero e iframe si applicano sia al web che alle app ("iframe" in questo caso può anche riferirsi a una WebView incorporata in un'app). Prevediamo che la maggior parte dei giochi venga distribuita in questi modi. I giochi incorporati sono esperienze solo web.

Va ricordato che

  1. L'annuncio viene visualizzato nel documento HTML che contiene il tag.
  2. L'annuncio deve sempre coprire completamente il documento contenitore.
  3. Il tag e il gioco devono sempre trovarsi all'interno dello stesso documento.