Introducció¶
Els controladors constitueixen una manera de controlar valors de propietats mitjançant una funció, o una expressió matemàtica.
Efectivament, els controladors consisteixen en:
Una configuració del controlador que especifica zero, un o més valors d’ingressió utilitzant altres propietats o canals de transformació d’objectes, i els combina mitjançant una funció matemàtica predefinida o una expressió de Python personalitzada.
Una animació Corba-F que mapeja l’egressió de la configuració del controlador al valor final que s’aplicarà a la propietat controlada.
Com a exemple, la rotació de l’Objecte 1 pot ser controlada per l’escala de l’Objecte 2. Es diu llavors que l’escala de l’Objecte 2 controla la rotació de l’Objecte 1.
Els controladors no només poden associat directament el valor d’una propietat al valor d’una altra, també poden combinar múltiples valors mitjançant una funció fixa o una expressió de Python i encara modular-la amb una corba definida manualment i/o una estiba de modificadors.
Els controladors són una eina extremadament potent per muntar aparells i solen fer-se servir per controlar transformacions d’ossos i la influències de morfofites, restriccions i modificacions d’accions , sovint utilitzant propietats personalitzades com a ingressions.
Visualització de gràfiques¶
Corba del controlador a l’Editor de controladors.¶
L’àrea principal del Editor de controladors mostra una Corba-F que representa la funció del controlador.
El eix X es mapeja sobre el valor d’egressió de la configuració del controlador. Les unitats depenen de la configuració.
El eix Y mostra el valor aplicat a la propietat del referent. Les unitats depenen de la propietat.
A la imatge d’exemple, si el valor del controlador és 2,0, el valor de la propietat serà 0,5.
La Corba-F per defecte és un mapa d’identitat, és a dir, el valor produït per la configuració del controlador s’aplica a la propietat controlada sense canvis. Si el valor d’egressió del controlador és 2,0, la propietat serà 2,0.
La funció de controlador es pot definir artísticament amb nanses de corba de Bézier o matemàticament amb funcions trigonomètriques o expressions polinòmiques com ara \(y = a + bx\). A més, la funció també es pot modular procedimentalment amb soroll o repeticions cícliques. Vegeu Modificadors per a més detalls.
Configuració del controlador¶
El :doc:`Plafó de controladors </animation/drivers/drivers_panel>`mostra la configuració d’un controlador.
Un controlador pot tenir zero, una o més variables. Les variables especifiquen quines propietats, canals de transformació d’objectes o distàncies relatives entre objectes, s’utilitzen com a ingressions per al controlador.
El tipus de controlador determina com s’utilitzen les variables. El tipus pot ser:
una funció integrada: per exemple, la suma dels valors de les variables, o bé
una expressió en forma de protocol: una expressió arbitrària de Python que fa referència a les variables pels seus noms.
Aquesta configuració del controlador genera un únic valor que canvia quan canvien les variables. Aquest valor s’avalua a través de la corba de funció del controlador per produir el resultat que s’aplicarà a la propietat controlada.
Notes sobre les expressions de protocols¶
Quan un controlador utilitza una Expressió de protocol, el Blender pot avaluar-lo sense utilitzar l’intèrpret de Python a plenes funcions si és prou senzilla. Això significa que els controladors són ràpids per avaluar amb divisions simples, sumes i altres expressions «simples». Les funcions integrades sempre s’avaluen de manera nativa.
Vegeu Expressions simples per a obtenir una llista completa d’expressions que es poden avaluar de manera nativa.
Quan l’expressió no sigui simple, s’avaluarà a través de Python. Com a conseqüència, el controlador serà més lent i hi ha un risc de seguretat si es desconeix l’autoria del codi de Python. És important de tenir això en compte en el cas d’escenes pesades i quan es compartieixin documents amb altres persones. Vegeu també: Autoexecució.