OpenGL mouse e oggetti.

clessidra

Utente Attivo
766
272
CPU
VIA C3
GPU
Ati Rage
OS
linux - Red Hat 1.1
Da qualche giorno come passatempo mi sto interessando a python+opengl.
Dopo aver visto un po' di cose iniziali mi è rimasto questo problema:
dopo aver disegnato un paio di quadrati, come faccio a sapere se il mouse si trova su un quadrato anzichè sull'altro?
Mi è venuto subito in mente di cercare l'intersezione delle coordinate del mouse con quelle dei quadrati presi singolarmente (dopo averne memorizzato a parte le loro coordinate e le loro dimensioni). C'è una funzione o procedura specifica per questo problema in opengl (invece di procedere con la ricerca dell'intersezione manualmente)?
Dimenticavo, solo 2D, no 3D.
 
Ultima modifica:

BrutPitt

Utente Attivo
1,166
1,262
Il tuo ragionamento e' corretto: devi calcolare l'intersezione delle coordinate del mouse nella Viewport con quella dei quadrati presenti... e no, non esiste nessuna funzione specifica a riguardo.

Se stai cercando qualcosa in proposito, cerca "Ray Picking"... oltre a "mouse picking"
 

clessidra

Utente Attivo
766
272
CPU
VIA C3
GPU
Ati Rage
OS
linux - Red Hat 1.1
Il tuo ragionamento e' corretto: devi calcolare l'intersezione delle coordinate del mouse nella Viewport con quella dei quadrati presenti... e no, non esiste nessuna funzione specifica a riguardo.

Se stai cercando qualcosa in proposito, cerca "Ray Picking"... oltre a "mouse picking"
Grazie per la risposta.
Ho dato uno sguardo in giro, anche alle due tecniche che mi hai suggerito, e sinceramenteper quello che devo fare (nessun programma specifico ma solo dei test) il semplice metodo che mi è venuto in mente mi va anche bene, dato che ci saranno anche più oggetti sovrapposti. Così effettuerò una ricerca solo tra gli oggetti che metterò in lista, tralasciando tutti gli altri.
 
Ultima modifica:

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!