AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez | 
 

 [Résolu] Android decalage des touches sur l'écran tactile

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Legends
Petit bavard
avatar

Messages : 54
Localisation : 28
Projet Actuel : Zakyro
jeu Android

MessageSujet: [Résolu] Android decalage des touches sur l'écran tactile   Mar 6 Sep 2016 - 17:53

Bonjour j'ai un problème , mon jeu pratiquement finit j'ai décider de le mettre sous android
après l'avoir tester sur 6 téléphone différent j'ai un soucis sur 2 d'entre eux ou ça ne s'affiche pas correctement :

explication en image


les touches virtuel pour ce déplacer sont normalement en bas de l’écran et en plus gros

et j'ai aussi des décalages comme sur les bords
Mais c'est problème sont que sur certain téléphone après avoir tout essayer est ce que quelqu’un aurait une solution svp

Je suis sous GM et mon tactile des touches marche pourtant.

_________________
fleche_d Pixel.Studio.Art fleche_g


Dernière édition par Legends le Jeu 15 Sep 2016 - 22:38, édité 1 fois
Revenir en haut Aller en bas
Is Daouda
Utilisateur confirmé: Rang *
avatar

Messages : 270
Localisation : Lomé

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Sam 10 Sep 2016 - 0:20

Essaie d'utiliser les viewport pour voir.
Peut être sa peut marcher.

_________________
"Celui qui trouve sans chercher a longtemps cherché sans trouver".
Revenir en haut Aller en bas
Legends
Petit bavard
avatar

Messages : 54
Localisation : 28
Projet Actuel : Zakyro
jeu Android

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Dim 11 Sep 2016 - 20:51

non ça ne fonctionne pas mais ça décale que sur certain téléphone bizarre

_________________
fleche_d Pixel.Studio.Art fleche_g
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Lun 12 Sep 2016 - 18:01

Comment tu positionne ces boutons? Différents appareils peuvent avoir différentes résolutions.

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
Legends
Petit bavard
avatar

Messages : 54
Localisation : 28
Projet Actuel : Zakyro
jeu Android

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Lun 12 Sep 2016 - 18:12

objects pour sauter

create :
virtual_key_add(1160,620,100,100,vk_up);

draw gui :
draw_sprite (boutton_haut_spr,0,1160,620)

voila pour un bouton ce que j'utilise

_________________
fleche_d Pixel.Studio.Art fleche_g
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Lun 12 Sep 2016 - 18:17

C'est normal dans ce cas, les écrans ont des résolutions différentes, donc tes coordonnées ne seront pas les mêmes.
Il te faut positionner tes boutons en fonction de la taille de la view, avec view_wview et view_hview normalement.

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
Legends
Petit bavard
avatar

Messages : 54
Localisation : 28
Projet Actuel : Zakyro
jeu Android

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Lun 12 Sep 2016 - 21:03

En changeant les view wview et les hview directement sur la room ça fonctionnait pas
après oui j'ai pensé que chaque écran a des dimensions différente mais mes rooms sont de taille différente
en keep aspect ratio pour les rooms :

nouvelle objet
room start:

var base_w = 1024;
var base_h = 768;
var aspect = base_w / base_h ; // get the GAME aspect ratio
if (display_get_width() < display_get_height())
   {
   //portrait
   var ww = min(base_w, display_get_width());
   var hh = ww / aspect;
   }
else
   {
   //landscape
   var hh = min(base_h, display_get_height());
   var ww = hh * aspect;
   }
surface_resize(application_surface, ww, hh);

et pour mes boutons virtuel :

bouton virtuel
draw gui :
draw_sprite(sprite0, 0, display_get_gui_width() - 64, display_get_gui_height() - 64);

mais ça fonctionne pas très bien j'ai du mal faire un truc pour les boutons virtuel ça avait l'air de marcher mais le tactile ne suit pas apres

_________________
fleche_d Pixel.Studio.Art fleche_g
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Mar 13 Sep 2016 - 18:53

Normal, les positions des boutons tactiles ne vont pas suivre celles de la GUI qui sont purement rattachées au dessin.

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
Legends
Petit bavard
avatar

Messages : 54
Localisation : 28
Projet Actuel : Zakyro
jeu Android

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Mar 13 Sep 2016 - 19:28

aurait tu une astuce stp

_________________
fleche_d Pixel.Studio.Art fleche_g
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Mar 13 Sep 2016 - 23:06

Oui, utiliser display_get_width et display_get_height pour définir ces positions. Soit en multipliant des coordonnées normalisées (entre 0 et 1) par ces dimensions, soit en plaçant ces boutons en fonction de la longueur et la largeur de l'écran (j'entends des soustractions)

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
Legends
Petit bavard
avatar

Messages : 54
Localisation : 28
Projet Actuel : Zakyro
jeu Android

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Mar 13 Sep 2016 - 23:17

un truc du genre : ?

create:
virtual_key_add(display_get_gui_width() - 128, display_get_gui_height() - 108),100,100,vk_up);

draw gui:
draw_sprite(boutton_saut_android), 0, display_get_gui_width() - 128, display_get_gui_height() - 108);

j'ai pas compris l'histoire des calculs triste2

et mon dernier soucis c'est la taille des touches n'ai pas la meme sur tout les telephone mop

_________________
fleche_d Pixel.Studio.Art fleche_g
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Mar 13 Sep 2016 - 23:26

Oui, c'est bien ça.
Quant au calcul avec des coordonnées normalisées, imagine la valeur entre 0 et 1 comme un pourcentage. Par exemple à partir de 0.5, 0.0 tu es dans la partie droite de l'écran. Ça te permet de faire un placement des coordonnées en fonction d'une taille de référence et de pouvoir l'adapter de manière simple.
Pour un bouton en bas à droite tu peux avoir donc les coordonnées normalisées 0.9, 0.9 (multiplié par la résolution, en 1280*720 ça te donne 1152*648) avec une taille 0.05, 0.05 (64*36 en 720p).

Tu peux préférer l'approche que tu donne dans ton create (essaie avec display_get_width() et display_get_height() si jamais ça marche pas bien comme ça) si tu veux éviter d'avoir des boutons plus ou moins étiré en fonction du ratio de l'écran (4:3 ou 16:9 ou 16:10 par exemple). Cependant ça va causer problème si quelqu'un veut jouer sur un écran de très haute résolution, les boutons vont apparaître minuscule.

Tu peux corriger ça en gardant l'approche des coordonnées normalisées mais avec une taille dont la longueur et la largeur sont égales pour avoir un carré, pas un rectangle (en prenant simplement la hauteur pour la largeur).

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
Legends
Petit bavard
avatar

Messages : 54
Localisation : 28
Projet Actuel : Zakyro
jeu Android

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Mar 13 Sep 2016 - 23:38

D'accord merci asumagic je vais essayer je peut te mp

_________________
fleche_d Pixel.Studio.Art fleche_g
Revenir en haut Aller en bas
Legends
Petit bavard
avatar

Messages : 54
Localisation : 28
Projet Actuel : Zakyro
jeu Android

MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   Jeu 15 Sep 2016 - 22:27

voila la solution

create
///Virtual vk_up
image_speed=0;
/*
 
  xx = grid_size * 0.1; //position on screen
  yy = grid_size * 5;   //position on screen
*/

device_width = window_get_width();

grid_size = device_width / 12.5; ///room 1280x720

xx = grid_size * 10.7;
yy = grid_size * 5;

v_down = virtual_key_add(xx, yy, grid_size*1.7, grid_size*5,vk_up);

/*if debug_mode
virtual_key_show(v_up);

draw
draw_self();

draw_sprite(boutton_haut_spr,image_index,view_xview[0]+550,view_yview[0]+315)

press up
image_index=1

release up
image_index=0

_________________
fleche_d Pixel.Studio.Art fleche_g
Revenir en haut Aller en bas
Contenu sponsorisé




MessageSujet: Re: [Résolu] Android decalage des touches sur l'écran tactile   

Revenir en haut Aller en bas
 
[Résolu] Android decalage des touches sur l'écran tactile
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu] Android decalage des touches sur l'écran tactile
» [résolu][Android] recherche application upload image
» [résolu] Téléphone SAMSUNG Jet S8000 écran amoled
» [Résolu] Problème, touches simultanées
» (résolu)touches clavier: ~ au lieu de @, etc...

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide confirmés-
Sauter vers: