Requisiti tecnici
Compatibilità con dispositivi e browser
Vogliamo che il gioco possa essere eseguito su Chrome e Edge. I giochi che funzionano male su Safari saranno disabilitati.
Una parte considerevole degli utenti di Jogos utilizza Chromebook. Se un gioco non funziona in modo fluido su dispositivi con 4 GB di RAM, il sistema operativo Chromium OS disabiliterà questi giochi.
Se il gioco supporta i dispositivi mobili, deve supportare anche il mouse, la tastiera e il touch.
Il gioco dovrebbe essere in grado di essere eseguito in modalità orizzontale sui dispositivi desktop. Permettiamo la pubblicazione di giochi in modalità verticale, particolarmente adatti per i dispositivi mobili, ad esempio con barre nere o immagini di sfondo visualizzate ai bordi dello schermo.
- Per adattare i giochi HTML5 alla compatibilità in diversi paesi o aree, abbiamo impostato i seguenti requisiti per l'intero pacchetto del gioco:
Categoria | PC | Mobile |
---|---|---|
Dimensione del pacchetto di download iniziale | ≤ 50 MB | ≤ 25 MB |
Dimensione totale dei file | ≤ 500 MB | ≤ 250 MB |
Numero di file | ≤ 5000 | ≤ 3000 |
Requisiti per i giochi mobili
Per essere idonei per la home page mobile, la dimensione del download iniziale non deve superare i 25 MB.
Puoi configurare le orientazioni supportate nel contenuto che invii. Il sito chiederà all'utente di ruotare il dispositivo per garantire che il tuo gioco possa essere eseguito solo in quelle orientazioni. Pertanto, non è necessario implementare alcuna logica di blocco dell'orientazione.
Ad esempio, quando si gioca su alcuni dispositivi (ad esempio, tablet), un doppio clic o un clic prolungato può visualizzare lo strumento di ingrandimento o selezionare l'intero gioco e visualizzare il menu contestuale. Per evitare problemi di utilizzo, aggiungi il seguente CSS al corpo del gioco:
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
A causa di frequenti crash (a causa di mancanza di memoria), i giochi Unity sono disabilitati per impostazione predefinita sulla piattaforma iOS. Quando il tuo gioco raggiunge un certo volume di utilizzo, il nostro team valuterà le prestazioni sulla piattaforma iOS e considererà se abilitare questa funzionalità.
Gestiamo la qualità grafica di Unity (rapporto pixel del dispositivo) per garantire buone prestazioni di gioco per l'utente: Per i dispositivi iOS e i dispositivi Android con bassa memoria, selezioniamo un valore DPR pari a 1, poiché questi dispositivi si bloccano quando il DPR nativo supportato è più elevato. Per gli altri dispositivi, utilizziamo il DPR nativo supportato dal dispositivo (window.devicePixelRatio). Se riteniamo necessario fare un'eccezione, possiamo sovrascrivere manualmente questa configurazione.
Descrizione del controllo QA
Lo strumento di controllo qualità QA per sviluppatori Jogos offre due set completi di soluzioni di adattamento. Non è necessario eseguire ulteriori lavori di adattamento per il tuo gioco:
- Se il tuo gioco è originariamente adattato solo per dispositivi mobili e utilizza pulsanti virtuali e joystick virtuali, puoi utilizzare la configurazione "Controlli per adattare un gioco mobile al PC" per configurare i pulsanti della tastiera o del mouse, in modo da soddisfare i giocatori sul PC.
- Se il tuo gioco è originariamente adattato solo per PC e utilizza la tastiera e il mouse per il controllo, puoi utilizzare la configurazione "Controlli per adattare un gioco PC a dispositivi mobili" per trascinare e posizionare pulsanti virtuali e joystick virtuali nella posizione che ritieni più appropriata, per mappare i tasti del PC e consentire ai giocatori di eseguire operazioni sui dispositivi mobili.
Gestione dei problemi comuni
Il seguente frammento di codice può risolvere molti problemi di esperienza utente causati dal comportamento predefinito del browser (questi problemi sono già stati implementati dal nostro UnitySDK. Per altre piattaforme, utilizzarli a discrezione).
- Scorrimento della pagina non desiderato
- Eventi chiave non desiderati
- Cambio di visibilità nell'app Samsung
- Apparizione del menu contestuale fuori dal canvas di Unity
// Disabilita lo scorrimento della pagina non desiderato.
window.addEventListener('wheel', (event) => event.preventDefault(), {
passive: false,
});
// Disabilita gli eventi chiave non desiderati e lo scorrimento con la barra spaziatrice.
window.addEventListener('keydown', (event) => {
if (['ArrowUp', 'ArrowDown', ''].includes(event.key)) {
event.preventDefault();
}
});
// Questo è il fix per gestire i cambiamenti di visibilità.
// Su webview, questo è un problema segnalato per l'app Samsung.
document.addEventListener('visibilitychange', () => {
if (document.visibilityState) {
if (document.visibilityState === 'hidden') {
application.publishEvent('OnWebDocumentPause', 'True');
} else if (document.visibilityState === 'visible') {
application.publishEvent('OnWebDocumentPause', 'False');
}
}
});
// Disabilita il menu contestuale che appare dopo un clic destro fuori dal canvas.
document.addEventListener('contextmenu', (event) => event.preventDefault());