3. Réaction aux stimuli de l'utilisateur
Bien évidemment, une scène Qt 3D peut réagir à des stimuli de la part de l'utilisateur,
comme toute application Qt Quick. Par contre, les mécanismes habituels (à base de
MouseArea pour la souris, par exemple) ne fonctionnent pas. Avec Qt 3D, il faut
ajouter un composant à l'entité racine pour indiquer les paramètres concernant les
entrées de la part de l'utilisateur :
components: [
RenderSettings {
// …
},
InputSettings {
eventSource: window
}
]
Ensuite, l'entité à la racine de la scène Qt 3D doit posséder au moins un périphérique
(comme KeyboardDevice pour le clavier) pour récupérer une série d'événements de la
part de l'utilisateur. Chaque entité de la scène peut alors faire référence à ces
périphériques pour en récupérer les événements, grâce à de nouveaux composants
(pour le clavier, KeyboardHandler) — cette référence correspond à la propriété
sourceDevice.
Note > Jusqu'à présent, les composants utilisés appartenaient aux modules
Qt3D.Core, Qt3D.Render et Qt3D.Extras. Pour l'interaction avec l'utilisateur, il
faudra aussi utiliser le module Qt3D.Input.
3.1. Clavier
La première étape pour récupérer des informations du clavier est de définir le
périphérique à la racine :
Entity {
components: [
RenderSettings { … },
InputSettings { … }
]
KeyboardDevice {
463
Précédent

- 464/494

Suivant