Autore Topic: scrolling menu su open-gl  (Letto 947 volte)

marco1991

  • Visitatore
scrolling menu su open-gl
« il: 02 Settembre 2012, 23:06:00 CEST »
0
salve raga!

vorrei implementare un menù simil angry-bird (chissà perchè tutti lo usano come riferimento xD), vorrei farlo con
open gl spostando la Camera in base a dove trascino il dito, il problema è che non capisco come far a capire quando
il dito viene trascinato..qualcuno può illumianrmi?
grazie mille


PS: scusate ho sbagliato sezione, avevo molte tab aperte e mi sono confuso, chiedo venia

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:scrolling menu su open-gl
« Risposta #1 il: 03 Settembre 2012, 13:38:25 CEST »
0
Le OpenGL-ES non sanno nulla del touch, devi intercettare il touch nella view che contiene la superficie OpenGL-ES e gestire questa informazione di conseguenza.

Quando inizializzi le OpenGL-ES imposti per forza la matrice della camera, ci sono diversi modi per farlo, dipende se prospettica o ortogonale, questa deve essere modificata in modo da cambiare il centro di proiezione o della visuale in basa all'informazione del touch.
adb logcat | tee /tmp/logcat | grep TAG

marco1991

  • Visitatore
Re:scrolling menu su open-gl
« Risposta #2 il: 03 Settembre 2012, 14:22:49 CEST »
0
Le OpenGL-ES non sanno nulla del touch, devi intercettare il touch nella view che contiene la superficie OpenGL-ES e gestire questa informazione di conseguenza.

Quando inizializzi le OpenGL-ES imposti per forza la matrice della camera, ci sono diversi modi per farlo, dipende se prospettica o ortogonale, questa deve essere modificata in modo da cambiare il centro di proiezione o della visuale in basa all'informazione del touch.

sisi ok fin qui c'ero, però come faccio a capire se il dito è stato trascinato? non riesco a implementare questo

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:scrolling menu su open-gl
« Risposta #3 il: 03 Settembre 2012, 15:17:26 CEST »
0
API di Android ti fornisce tutte le informazioni:

MotionEvent | Android Developers

Se cerchi esistono molti esempi su come utilizzarli:

Responding to Touch Events | Android Developers
adb logcat | tee /tmp/logcat | grep TAG

marco1991

  • Visitatore
Re:scrolling menu su open-gl
« Risposta #4 il: 05 Settembre 2012, 15:03:18 CEST »
0
ti rigrazio! sono riuscito a farla ma ora cè un altro problema...

in pratica io faccio a ogni ciclo di thread un controllo:
-se è un touch_move allora sposta la camera
-se è un touch_up selezione il livello

però quando finisco lo scrolling, una volta che alzo il dito parte anche il controllo con touch_up e quindi il livello parte però questo non è comodo/bello, tu hai una soluzione?

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:scrolling menu su open-gl
« Risposta #5 il: 06 Settembre 2012, 10:07:02 CEST »
0
Devi rendere il controllo più intelligente. Da quello che scrivi devi accorgerti del movimento e impedire di conseguenza la selezione.

Qui sono spiegate alcuni problemi del touch e come risolverli:

Android Developers Blog: Making Sense of Multitouch

il codice si complica ma è inevitabile.
adb logcat | tee /tmp/logcat | grep TAG