Exigences techniques
Compatibilité des appareils et des navigateurs
Nous souhaitons que le jeu puisse fonctionner sur Chrome et Edge. Les jeux qui fonctionnent mal sur Safari seront désactivés.
Une partie considérable des utilisateurs de Jogos utilise des Chromebook. Si un jeu ne fonctionne pas de manière fluide sur un appareil avec 4 Go de RAM, le système Chromium OS désactivera ces jeux.
Si le jeu prend en charge les appareils mobiles, il doit également supporter la souris, le clavier et le toucher.
Le jeu devrait pouvoir fonctionner en mode paysage sur les appareils de bureau. Nous autorisons la publication de jeux en mode portrait, particulièrement adaptés aux appareils mobiles, par exemple en affichant des barres noires ou une image de fond aux bords de l'écran.
Pour adapter la compatibilité des jeux HTML5 dans différents pays ou régions, nous avons posé les exigences suivantes concernant le packaging global du jeu :
Catégorie PC Mobile Taille du paquet de téléchargement initial ≤ 50 Mo ≤ 25 Mo Taille totale des fichiers ≤ 500 Mo ≤ 250 Mo Nombre de fichiers ≤ 5000 ≤ 3000
Exigences pour les jeux mobiles
Pour être éligible à la page d'accueil mobile, la taille du téléchargement initial ne doit pas dépasser 25 Mo.
Vous pouvez configurer les orientations prises en charge dans votre soumission. Le site demandera aux utilisateurs de tourner leur appareil pour s'assurer que votre jeu ne fonctionne que dans ces orientations. Par conséquent, vous n'avez pas besoin d'implémenter toute logique de verrouillage d'orientation.
Par exemple, lorsque vous jouez à un jeu sur certains appareils (comme les tablettes), un double-clic ou un appui long peut afficher un outil de zoom ou sélectionner l'ensemble du jeu et afficher un menu contextuel. Pour éviter des opérations désagréables, ajoutez le CSS suivant au corps du jeu :
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
En raison de plantages fréquents (en raison d'une insuffisance de mémoire), les jeux Unity sont désactivés par défaut sur la plateforme iOS. Lorsque votre jeu atteint un certain volume de jeu, notre équipe évaluera ses performances sur la plateforme iOS et considérera s'il faut activer cette fonction.
Nous gérons la qualité graphique d'Unity (rapport de pixels d'appareil) pour garantir de bonnes performances de jeu aux utilisateurs : Pour les appareils iOS et les appareils Android à faible mémoire, nous choisissons une valeur DPR de 1, car ces appareils plantent lorsque le DPR natif pris en charge est élevé. Pour les autres appareils, utilisez le DPR natif pris en charge par l'appareil (window.devicePixelRatio). Si nous estimons qu'une exception est nécessaire, nous pouvons manuellement modifier cette configuration.
Description du contrôleur QA
L'outil de détection de qualité QA pour les développeurs de Jogos propose deux solutions d'adaptation complètes. Vous n'avez pas besoin de réaliser des travaux d'adaptation supplémentaires pour votre jeu :
- Si votre jeu est nativement adapté uniquement aux appareils mobiles et utilise des boutons virtuels et des joysticks virtuels, vous pouvez utiliser la configuration "Adaptation des contrôles de jeu mobile pour PC" pour configurer les boutons de la souris ou du clavier afin de satisfaire les joueurs sur PC.
- Si votre jeu est nativement adapté uniquement aux PC et utilise le clavier et la souris pour le contrôle, vous pouvez utiliser la configuration "Adaptation des contrôles de jeu PC pour appareils mobiles" pour placer des boutons virtuels et des joysticks virtuels à l'endroit que vous jugez approprié pour mapper les touches du PC et permettre aux joueurs de jouer sur appareil mobile.
Traitement des problèmes courants
Le fragment de code suivant peut résoudre de nombreux problèmes d'expérience utilisateur causés par le comportement par défaut des navigateurs (ces problèmes ont déjà été résolus par notre SDK Unity. Pour les autres plateformes, utilisez-le selon le cas).
- Défilement de page indésirable
- Événements clavier indésirables
- Changement de visibilité sur l'application Samsung
- Apparition du menu contextuel en dehors de la toile Unity
// Désactiver le défilement de page indésirable.
window.addEventListener('wheel', (event) => event.preventDefault(), {
passive: false,
});
// Désactiver les événements clavier indésirables et le défilement avec la touche espace.
window.addEventListener('keydown', (event) => {
if (['ArrowUp', 'ArrowDown', ''].includes(event.key)) {
event.preventDefault();
}
});
// Ceci est une correction pour gérer les changements de visibilité.
// Sur les webviews, c'est un problème signalé pour l'application Samsung.
document.addEventListener('visibilitychange', () => {
if (document.visibilityState) {
if (document.visibilityState === 'hidden') {
application.publishEvent('OnWebDocumentPause', 'True');
} else if (document.visibilityState === 'visible') {
application.publishEvent('OnWebDocumentPause', 'False');
}
}
});
// Désactiver le menu contextuel apparaissant après un clic droit en dehors de la toile.
document.addEventListener('contextmenu', (event) => event.preventDefault());