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

../../_images/animation_drivers_introduction_fcurve.png

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ó.