Les controllers
Salut, dans ce tutoriel vous allez apprendre à manipuler les controllers dans Game blender. La lecture préalable du tuto sur les sensors est conseillée.
Un controller autorise ou non un actuator à s'effectuer, il sera le cerveau dans les briques logiques (comme le sensor était le capteur).
Il sert aussi à insérer les scripts python dans un jeu, très pratique pour aller plus loin.
And est le controller par défaut dans Blender. "AND" signifiant ET en anglais, on comprend rapidement comment celui-ci fonctionne. Il vous faudra donc que votre ou TOUS vos sensors renvoient une valeur positive comme quoi l'ordre doit être effectué pour qu'il le soit. Si un seul des sensors ne renvoie pas une valeur positive l'ordre n'est pas effectué.
"OR" signifie OU en anglais. L'ordre sera effectué si un seul de vos sensors renvoie une valeur positive.
Ce controller permet d'ajouter une ligne de code dans vos briques logique ; il est donc très pratique mais aussi moins facile que les précédents...
Voilà les différents types d'expressions :
-Les nombres (45, 1.2345, etc.).
-Les valeurs Booléennes (TRUE, FALSE).
-Les chaines de caractères ou property "string", ("votre chaine de caractères" ) Attention, les chaines de caractères doivent être entre guillemets, sinon Blender pensera que vous lui indiquez le nom d'un sensor ou d'une property.
-Les properties (nomPropriété) nomPropriété doit donc exister dans le panneau des properties.
-Les sensors (nomSensor) là aussi nomSensor doit exister dans les briques logiques.
Les expressions sont utilisables dans un sensor Property, un Controller Expression, un actuator Property.
Vous pouvez faire agir des expressions entre elles grâce à ces différents symboles :
-Les symboles mathématiques (+, -, *, /) ces symboles modifient une expression mais ne peuvent pas servir dans un controller Expression étant donné qu'ils ne vérifient rien...
-Les outils de comparaison (<, >, =) "Expression1 > Expression2" comprendre : SI Expression1 est PLUS grande que Expression2.
Rajoutez un égal après </> donne : "Expression1 >= Expression2" SI Expression1 est PLUS grande OU EGALE à Expression2.
-Les mots suivants de la même manière que le controller portant le même nom : OR, AND, == (nomSensor1 OR nomSensor2) ceci reviendrait à connecter les deux sensors à un controller OR.
Voilà pour le controller Expression, il permet de faire un minimum de programmation sans vraiment "rentrer" dans la programmation...
Le controller python est certainement le plus puissant, il vous suffit de rentrer le nom du fichier et Blender l'exécutera (le fichier doit donc être chargé dans Blender et doit être de type texte et codé en langage python...).
Grâce à cette intégration, on pourra multiplier les possibilités proposées par le GameBlender (utilisation des GLSL shaders, normal mapping en temps réel, amélioration du Gameplay etc.).
Ce tutoriel étant très théorique, je vous invite à tester un peu tout ces paramètres...
© jonaga - Les controllers
1) A quoi sert un controller ?
Un controller autorise ou non un actuator à s'effectuer, il sera le cerveau dans les briques logiques (comme le sensor était le capteur).
Il sert aussi à insérer les scripts python dans un jeu, très pratique pour aller plus loin.
2) Le controller AND.
And est le controller par défaut dans Blender. "AND" signifiant ET en anglais, on comprend rapidement comment celui-ci fonctionne. Il vous faudra donc que votre ou TOUS vos sensors renvoient une valeur positive comme quoi l'ordre doit être effectué pour qu'il le soit. Si un seul des sensors ne renvoie pas une valeur positive l'ordre n'est pas effectué.
3) Le controller OR.
"OR" signifie OU en anglais. L'ordre sera effectué si un seul de vos sensors renvoie une valeur positive.
4) Le controller "Expression".
Ce controller permet d'ajouter une ligne de code dans vos briques logique ; il est donc très pratique mais aussi moins facile que les précédents...
Voilà les différents types d'expressions :
-Les nombres (45, 1.2345, etc.).
-Les valeurs Booléennes (TRUE, FALSE).
-Les chaines de caractères ou property "string", ("votre chaine de caractères" ) Attention, les chaines de caractères doivent être entre guillemets, sinon Blender pensera que vous lui indiquez le nom d'un sensor ou d'une property.
-Les properties (nomPropriété) nomPropriété doit donc exister dans le panneau des properties.
-Les sensors (nomSensor) là aussi nomSensor doit exister dans les briques logiques.
Les expressions sont utilisables dans un sensor Property, un Controller Expression, un actuator Property.
Vous pouvez faire agir des expressions entre elles grâce à ces différents symboles :
-Les symboles mathématiques (+, -, *, /) ces symboles modifient une expression mais ne peuvent pas servir dans un controller Expression étant donné qu'ils ne vérifient rien...
-Les outils de comparaison (<, >, =) "Expression1 > Expression2" comprendre : SI Expression1 est PLUS grande que Expression2.
Rajoutez un égal après </> donne : "Expression1 >= Expression2" SI Expression1 est PLUS grande OU EGALE à Expression2.
-Les mots suivants de la même manière que le controller portant le même nom : OR, AND, == (nomSensor1 OR nomSensor2) ceci reviendrait à connecter les deux sensors à un controller OR.
Voilà pour le controller Expression, il permet de faire un minimum de programmation sans vraiment "rentrer" dans la programmation...
5) Le controller python.
Le controller python est certainement le plus puissant, il vous suffit de rentrer le nom du fichier et Blender l'exécutera (le fichier doit donc être chargé dans Blender et doit être de type texte et codé en langage python...).
6) Conclusion.
Grâce à cette intégration, on pourra multiplier les possibilités proposées par le GameBlender (utilisation des GLSL shaders, normal mapping en temps réel, amélioration du Gameplay etc.).
Ce tutoriel étant très théorique, je vous invite à tester un peu tout ces paramètres...
© jonaga - Les controllers