Vidéo: Special FX Applications! - ShenaniVlogs #3 2024
Les effets spéciaux dans JavaFX peuvent vous permettre d'embellir l'apparence des nœuds de votre graphe en ajoutant des effets spéciaux tels que flous, ombres, déplacements de couleur, lumières, etc.. Vous pouvez même ajouter une perspective pour donner à votre application un aspect tridimensionnel sans avoir à effectuer de programmation 3D réelle.
Les effets spéciaux dans JavaFX dérivent de la classe Effect, une classe abstraite qui possède une grande variété de sous-classes que vous pouvez utiliser pour créer un effet spécial. Il y a un total de 17 sous-classes de la classe Effet, mais vous n'aurez peut-être pas besoin d'apprendre toutes les 17. Commencez par vous concentrer sur les effets qui vous permettent de rendre vos formes plus réalistes en ajoutant du flou, des ombres, des reflets.
Tous les effets fonctionnent de la même manière. D'abord, vous créez une instance de la classe de l'effet en appelant son constructeur par défaut. Vous pouvez ensuite définir les propriétés de l'effet en appelant une ou plusieurs méthodes set. (Dans de nombreux cas, les valeurs de propriété par défaut sont appropriées, vous pouvez donc souvent ignorer cette étape.) Enfin, vous appliquez l'effet à un nœud en appelant la méthode setEffect du nœud.
Par exemple, voici un peu de code qui crée un rectangle, le remplit, puis ajoute une ombre portée:
Rectangle r1 = nouveau Rectangle (50, 50, 100, 100); r1. setFill (Couleur: LIGHTGRAY); r1. setStroke (Couleur BLACK); r1. setStrokeWidth (2); DropShadow shadow1 = nouvelle DropShadow (); r1. setEffect (ombre1);
Cette figure montre le résultat de cet effet. Comme vous pouvez le voir, le rectangle est entouré d'une ombre subtile.
La méthode setEffect est définie par la classe Node, ce qui signifie que vous pouvez appliquer un effet à n'importe quel noeud de votre graphe de scène. L'effet est appliqué non seulement au noeud dont vous appelez la méthode setEffect, mais également aux enfants de ce noeud. En fait, si vous appelez setEffect sur le noeud racine d'une scène, l'effet sera appliqué à toute la scène.