Se hai una domanda che non trovi in questa pagina, contattaci utilizzando i dati di contatto riportati nella pagina di contatto dell'assistenza.
Questa pagina potrebbe essere aggiornata con le domande frequenti man mano che vengono ricevute.
Generale
Questa sezione include tutte le domande che non rientrano in una categoria specifica.
Posso testare il gioco nell'ambiente di YouTube?
Sì, utilizza il portale per sviluppatori e segui le istruzioni per i test.
Il mio gioco non viene visualizzato su Android o nella suite di test dell'SDK. Cosa devo fare?
Quando i giochi non vengono visualizzati esclusivamente su Android o sulla suite di test dell'SDK, spesso il problema è causato dal modo in cui i giochi vengono caricati in WebView. Per motivi di prestazioni, il gioco viene inizialmente caricato in una WebView che non viene mostrata all'utente, il che comporta una dimensione dell'area visibile della WebView pari a zero. Per risolvere il problema, si consiglia la seguente soluzione:
(1) Verifica che il codice del gioco venga eseguito indipendentemente dalle dimensioni dell'area visibile.
(2) Verifica che il codice del gioco gestisca il ridimensionamento dell'area visibile e che non attenda o non si blocchi quando le dimensioni dell'area visibile sono pari a zero.
Ti consigliamo di ascoltare l'evento della finestra resize e di impostare l'altezza del gioco solo quando window.innerHeight è diverso da zero.
Requisiti tecnici
Questa sezione include domande relative ai requisiti tecnici di Sala giochi di YouTube.
Posso ricevere un'esenzione per il limite di dimensioni dei singoli file?
No. La dimensione del singolo file è un limite rigido.
Come viene misurata la dimensione iniziale del bundle?
Le dimensioni del bundle iniziale vengono misurate come la quantità totale di byte scaricati dal gioco fino alla chiamata dell'evento gameReady.
I giochi istantanei utilizzano la compressione HTTP, se possibile, il che significa che le dimensioni del bundle iniziale potrebbero essere inferiori alle dimensioni totali degli asset. Quando testi le dimensioni del bundle iniziale nella suite di test dell'SDK, se l'host locale non comprime gli asset, le dimensioni potrebbero essere maggiori di quelle che verranno visualizzate una volta pubblicato il tuo Playable. Per visualizzare le dimensioni effettive del bundle iniziale pubblicato per una Sala giochi, utilizza la suite di test dell'SDK indirizzata al file index.html da una build caricata o modifica le impostazioni del server locale per attivare la compressione gzip.
Ho raggiunto o superato il limite di dimensioni del singolo file o del bundle totale. Che cosa devo fare?
Per ottimizzare il gioco e migliorare il rendimento, consulta i seguenti articoli:
- Compressione delle immagini
- Controlli delle prestazioni
- Tempi di caricamento rapidi
Attiva la compressione del testo *
Ottimizzazione della codifica e delle dimensioni di trasferimento degli asset basati su testo
Cosa succede se non riesco a rispettare il limite di dimensioni totali del bundle?
Gli utenti potrebbero dover scaricare gli asset del tuo gioco ogni volta che ci giocano. Per evitare tempi di caricamento lunghi e un utilizzo elevato di dati, ti consigliamo di ridurre al minimo le dimensioni totali del bundle del gioco.
Incoraggiamo i giochi a utilizzare il caricamento lento o altri tipi di caricamento incrementale degli asset durante ogni sessione di gioco man mano che gli utenti avanzano, oppure a suddividere gli asset per livello per consentire il download di piccole quantità di asset distribuite nel corso di una sessione lunga. In situazioni come queste, avere un bundle di dimensioni totali maggiori potrebbe non compromettere l'esperienza utente e, di fatto, potrebbe migliorarla consentendo di includere più contenuti nel gioco con un impatto minore per utente. Se ritieni che il tuo gioco funzioni in questo modo e giustifichi una dimensione totale del bundle più grande, contattaci tramite la nostra pagina di contatto dell'assistenza per discutere del tuo caso d'uso.
Le mie analisi interne possono essere escluse dai requisiti per le chiamate esterne?
No. Al momento, i giochi non devono effettuare chiamate esterne. Comunica al tuo partner manager il tipo di analisi che ti interessa, in modo che le funzionalità future in questo ambito possano avere la priorità.
Il gioco recupera dati e livelli da un database remoto. È accettabile?
Al momento no, ma stiamo sperimentando l'accesso ai dati da remoto con titoli selezionati. Oggi, tutti i dati di gioco devono essere inclusi nel bundle di gioco. Se vuoi aggiornare o rinnovare gli asset o i contenuti del tuo gioco, utilizza i dati di contatto riportati nella pagina di contatto dell'assistenza per inviare un bundle di gioco aggiornato o per richiedere ulteriori informazioni se vuoi che il tuo gioco venga preso in considerazione per il nostro programma pilota.
Visualizzo un errore relativo alla violazione della "Content Security Policy" per l'esecuzione di script incorporati
Ciò accade quando utilizzi JavaScript per creare e aggiungere un tag <script> alla tua pagina. Per motivi di sicurezza, YouTube utilizza una Content Security Policy (CSP) che richiede che gli script abbiano un codice di sicurezza speciale chiamato "nonce". YouTube aggiunge automaticamente questo codice agli script nel file HTML, ma devi aggiungerlo manualmente a tutti gli script che crei con il codice.
Quando generi i tag di script in modo programmatico utilizzando JavaScript, devi trovare il nonce dalla tua pagina e applicarlo al nuovo elemento di script.
Esempio:
const script = document.createElement('script');
script.src = '...';
// Find the nonce from the main page and apply it
script.nonce = document.querySelector('script[nonce]')?.nonce;
document.head.appendChild(script);
Puoi testare le configurazioni offline utilizzando le linee guida specificate nelle istruzioni della suite di test.
Integrazione dell'SDK
Questa sezione include tutte le domande relative alle API Playables SDK.
Non ho superato la certificazione a causa di problemi di integrazione audio. Cosa devo correggere?
Il problema audio più comune riguarda i giochi che richiedono l'interazione dell'utente prima di avviare la riproduzione. Tuttavia, Sala giochi di YouTube potrebbe ricevere lo stato attivo automaticamente, quindi il gioco deve gestire questo caso.
Per un esempio di configurazione audio, consulta gli esempi.
Unity
Questa sezione include tutte le domande relative all'integrazione dei giochi Unity esistenti con l'SDK Sala giochi di YouTube. Per esempi su come utilizzare l'SDK e il wrapper Unity, consulta la documentazione del wrapper Unity di Sala giochi di YouTube.
Posso utilizzare la precompressione di Unity?
Non consigliamo di precomprimere gli asset. Il requisito relativo alle dimensioni iniziali del bundle utilizza le dimensioni post-compressione e ai file caricati verrà applicata la compressione dopo l'importazione. Se è ancora necessario precomprimere i file, consulta il resto di questa sezione o contatta il team di assistenza tramite la nostra pagina dei contatti di assistenza per discutere l'opzione migliore per il tuo gioco.
Alcuni giochi dovranno utilizzare la precompressione per i file .wasm o .data di Unity.
Utilizza la precompressione solo nelle seguenti condizioni, poiché potrebbe comportare tempi di caricamento molto più lenti:
- Se devi utilizzare la precompressione di Unity per soddisfare i requisiti relativi alle dimensioni dei singoli file o alle dimensioni totali del bundle, consulta la sezione "Ho raggiunto o superato il limite di dimensioni dei singoli file o del bundle totale, cosa devo fare?".
- Se devi utilizzare la precompressione di Unity per ottenere la certificazione del tuo gioco,
devi soddisfare i seguenti requisiti:
- DEVI utilizzare la precompressione zip.
- Devi decomprimere i file manualmente all'interno dello script del caricatore. Ti consigliamo di utilizzare l'API Compression Streams.
Questi requisiti aggiuntivi derivano dalle limitazioni dell'architettura di pubblicazione. Al momento, il supporto di intestazioni HTTP aggiuntive o della compressione Brotli non è disponibile.
Come posso gestire gli aggiornamenti dei frame quando il gioco è in esecuzione in background?
Puoi utilizzare setTimeout per gestire gli aggiornamenti dei frame quando il gioco è in background.
In questo modo è possibile controllare comportamenti come la messa in pausa dell'audio. Puoi verificare la gestione dei frame in background attivando l'opzione "Esegui in background" nelle impostazioni del player.
Limitazioni di memoria per i giochi Unity
Alcuni giochi in Unity utilizzano una quantità di memoria significativa, il che può comportare il superamento delle limitazioni di memoria utilizzata per i giochi. Ti consigliamo di seguire la documentazione per lo sviluppo relativa alla memoria in Unity WebGL.