Primeros pasos con Reaktor - 3ª parte
Después de una temporadita de descanso, he aprovechado que he estado de baja con la pata chunga (esguince de tobillo), y aquí me tenéis de nuevo con la tercera parte de este tutorial.
En esta parte vamos a ver unos cuantos conceptos matemáticos, no son integrales temporales pero sí requieren una base mínima de mates, sobre todo en cuanto a entender, no a saberse mil fórmulas de memoria sino a entender ciertos conceptos que, aunque en la parte matemática estricta son relativamente simples, hay que entenderlos.
No os sorprendáis demasiado por esto, ya que en estos entornos si quieres hacer algo más allá de lo más simple, tienes que tener claros muchos conceptos matemáticos (y si quieres hacer locuras y romper esquemas, por supuesto necesitarás un buen montón de conocimientos matemáticos). Las fórmulas son lo de menos, para eso están internet y los libros, pero insisto en que hay que entender estos conceptos.
Como ejemplo, tenéis que tener clarísima la diferencia entre una curva logarítmica, una exponencial y una recta o lineal, además en Reaktor nunca viene mal saber una forma rápida de escalar: aquí tenéis algo interesante por donde empezar si estais oxidados.
Como siempre, os animo a investigar y experimentar por vuestra cuenta con reaktor, y os recuerdo que las dudas son bienvenidas (si son de mates también ;) ), sobre todo en el hilo oficial de Reaktor que tenemos en el subforo de Programación y Entornos, por que es un hilo ya existente sobre reaktor donde os puede ayudar mucha gente además de un servidor, y por que las dudas que tengáis también pueden ayudar a más gente si se quedan respondidas ahí ;)
Lista la intro, empezamos.
3. EMPEZANDO CON LA GUI
3.1 MAS SOBRE LOS KNOBS
Creo que recordarás que desde la primera entrada, te debía explicar las propiedades de los knobs, allá por el capítulo 1.4, y como lo prometido es deuda, comenzaré esta entrada explicándolo.
En el mencionado capítulo habíamos visto que en la pestaña Function de las propiedades de todo knob, aparecen las siguientes propiedades, que os dejo aquí de nuevo a modo de recordatorio:
- Max: Valor máximo del knob.
- Min: Valor mínimo del knob.
- Stepsize: Cantidad en que varía el knob cada vez que aumenta o disminuye un paso.
- Num Steps: Número de pasos que tiene el knob.
- Mouse Reso: Resolución del ratón, es decir, cuantos pasos se mueve el knob cuando tu mueves el ratón. Si es muy alta moverá montón de pasos, si es muy baja tendrás que mover el ratón mucho para que de un sólo paso.
Vamos a ver todo esto con un ejemplo concreto, que será el knob que añadimos para controlar la amplitud de nuestro oscilador, módulo Ampl en la macro OSC1, así que ya sabes, doble click y a la izquierda propiedades.
Tal como están las propiedades en la imagen de arriba (asegúrate que las tienes con los mismos valores), si mueves el knob un paso con el ratón, el valor que toma el knob cambia en una centésima (es decir, el segundo décimal a partir de la coma): total, que si tienes el knob en 1 y disminuyes un pasito, el valor que tomará el knob será de 0,99. Sin embargo, es algo difícil alcanzar esta precisión con el ratón: para que el knob solo disminuya un paso requiere que hagamos un movimiento muy pequeñito con el ratón, y es algo que a mí particularmente me resulta muy incómodo de controlar. De hecho, es demasiado incómodo, y este tipo de cosas le restan facilidad de uso al ensemble.
Todo este comportamiento del knob viene determinado por las propiedades que acabamos de listar; así, cada paso del knob es de una centésima por que dando el valor 100 a la propiedad Num Steps, le hemos dicho a reaktor que divida la distancia entre 0 y 1 (los valores de Min y Max respectivamente) en 100 pasos. La cuestión es que en Reaktor, un knob divide un espacio determinado por sus valores mínimo y máximo, en una serie de pasos de una longitud igual a Stepsize = (Max-Min) / Num Steps, donde Num Steps es el número de pasos total.
----------------------------------------------------------------
Si no estás acostumbrado a estos cálculos o directamente no te llevas bien con las mates (si no es el caso pasa de este tocho de teoría, por que voy a repetirte algo que ya sabes), debes haberte quedado un poco flipado con todo esto :P , coje la calculadora y haz la fórmula que puse antes: (1 – 0) / 100 = 0,01... osea, una centésima. Para verlo "en cristiano", cambia el valor de Stepsize a 0.5 (recuerda que para los decimales los anglosajones usan el punto en vez de la coma, en Reaktor siempre se usa el punto), verás que el valor de Num Steps cambia automáticamente a 2, y en esta gráfica vas a ver porqué pasa esto:
Lo lógico en primera instancia, sería que el knob aumentara su valor siguiendo la linea roja desde 0 hasta 1, pero esto no es posible por que como ya deberías saber ;) , los ordenadores no entienden el concepto de continuidad, no entienden que entre 0 y 0,1 hay infinitos números decimales, por eso hay que usar valores discretos, es decir, a pasos, estableciendo cuánto aumenta el número a cada paso. De esta forma, cuando le das a Stepsize un valor de 0,5 , estás diciéndole a Reaktor que cada paso entre el 0 y el 1, cambia 0,5 de golpe: en vez de seguir la linea roja, Reaktor sigue los puntos azules.
De la misma forma, tal y como estaba puesto al principio con Num Steps a 100, Reaktor entendía que de 0 a 1 habían 100 pasos, de un tamaño de 0,01 cada uno de ellos.
Lógicamente, Num Steps y Stepsize tienen una relación descrita por la función matemática que escribí antes, así que puedes escribir cualquiera de ellos que el otro se corregirá automáticamente. Usa siempre el que te resulte más cómodo en cada ocasión.
----------------------------------------------------------------
Si te estás preguntando para qué sirve todo esto, es que no te has parado a pensar después de leer. Hay veces que te interesa que un valor sea fácilmente modulable vía MIDI (por ejemplo, la frecuencia de corte para un filtro rompe sonidos), por lo tanto pondrás el knob de 0 a 126 con 127 pasos, para que cada paso se corresponda con cada valor MIDI que reciba; otras veces necesitas la mayor precisión posible (por ejemplo, frecuencia a la que un efecto granular envía granos), así que puedes ponerle 500, 1.000 o 10.000 pasos para tener decimales por un tubo.
¿Qué relación tiene con todo esto la propiedad Mouse Reso? Además de lo que acabas de leer, hay que tener en cuenta que lo que estás moviendo no es un knob real, lo mueves con el ratón, con un controlador MIDI o modulando. Esta propiedad está ahí para las ocasiones en que mueves el knob con el ratón, y define cuánto tienes que mover el ratón para que el knob se mueva un paso, ya sea aumentando o disminuyendo.
Esto se convierte fácilmente en una cuestión de gustos, mi consejo es que te pongas a meter valores diferentes a las tres propiedades para que veas cómo funcionan en conjunto, pero bueno, hay ciertas cosas que son válidas casi siempre: si tienes un Num Steps grande, Mouse Reso debería ser grande (y ojo por que la resolución del ratón es logarítmica, cuando te pasas de cierto valor los cambios son poco apreciables: a ojo, yo diría que ese valor se encuentra sobre 500) para poder controlar bien cuándo saltas al siguiente paso, y viceversa; si necesitas precisión, Mouse Reso debería ser grande también para aumentar el control, y viceversa si necesitas facilidad de manejo con el ratón, ya sea para testear o para jugar con un valor de un efecto, debería ser pequeño para no tener que mover mucho el ratón; para los knob "de relleno", es decir, de un parámetro que tiene que estar pero que tampoco es tan importante, personalmente a mí me gusta dejarlo en 200, por que es un valor medio que me resulta bastante cómodo, y es como voy a dejar nuestro knob Ampl.
Lo que tienes que tener claro, es que si Mouse Reso es muy grande tienes que mover mucho el ratón (más precisión, más tiempo), y si es muy pequeño con un ligero movimiento ya cambias el valor del knob (menos precisión, menos tiempo). Además ten en cuenta, que en el momento en que un knob se mueve un paso, envía un evento (tocho de teoría del capítulo 1.4).
A partir de ahí, usalo según te convenga, que para eso está, para adecuar tus knobs a las necesidades de tu ensemble.
3.2. OTROS TIPOS DE KNOBS
Ya que estoy con los knobs, vamos a ver más cosas de esto y así también vamos viendo más cosas del panel.
En el título yo he usado la palabra knobs, refiriéndome a faders, o sliders si lo prefieres, que es lo que vamos a ver ahora, y lo he hecho a posta, por que lo único que diferencia a unos de otros en Reaktor es el valor de una propiedad, por lo demás son el mismo módulo.
Vamos a aprovechar y añadiremos a nuestro sinte un volumen general, así cuando estéis experimentando no os quedaréis sin oídos si hacéis alguna cosa rara ;)
Bien, situate en el nivel del instrumento (recuerda: debe aparecerte el nombre del instrumento, Sinte, en la esquina superior izquierda de la ventana de estructura), y añade una macro que se llamará Mix, por el nombre ya habrás imaginado de qué se trata. Dentro de esta macro añade una salida y una entrada, selecciona ambas y dale a Ctrl+d o botón derecho sobre uno de los módulos y menú Duplicate Selection. Lo hago así esta vez para aprovechar y enseñarte otro truquito para agilizar las cosas, que es duplicar: si presionas Ctrl+d teniendo seleccionado un módulo, o pinchas botón derecho en un módulo y menú Duplicate Selection, se duplica el módulo en cuestión, que hereda todas las propiedades del primero; esto sirve para todo tipo de módulos, desde entradas hasta macros o instrumentos, y en este último caso se duplica TODO lo que está dentro de la macro o instrumento.
Después de duplicar la entrada y la salida, deberías tener dos de cada, nombralas para que tengas 2 entradas L y R, y 2 salidas también L y R.
Teniendo en cuenta que solo tenemos un oscilador y que la señal que envía este oscilador no es estereo, podría haber puesto a esta macro una sola entrada y dentro de la macro dividir la señal. He puesto dos entradas en vez de una por dos motivos: primero, todavía no sabemos cómo va a quedar el sinte al final, y lo más probable es que acabe con un control de pan o balance para los osciladores, filtros y demás que vayamos añadiendo, por tanto es lógico que esa señal que ahora no es estereo, acabe siéndolo, así que mejor tenerlo todo preparado; segundo, me convenía para enseñarte lo de duplicar varios módulos a la vez :P .
Seguimos, añade a la macro un módulo Built-In Module->Signal Path->Stereo Amp/Mixer, y un módulo de suma (recuerda Built-In Module->Math->Add), y duplica los dos módulos. Ahora conecta las salidas L de cada uno de los módulos Stereo Amp/Mixer a UN SOLO módulo de suma, y las salidas R al otro módulo Add de la misma manera. La salida del módulo de suma donde conectaste las L, conectala a la salida L de la macro, y la salida del otro módulo de suma a la otra salida de la macro, R. Para terminar, conecta la entrada L de la macro a la entrada In del módulo Stereo Amp/Mixer superior, y la entrada R a la del inferior. Debería quedarte esto:
Si no te sale a la primera, lee el tocho de teoría que sigue para que entiendas mejor lo que está pasando, y si te sale, así todo leelo igual por que vamos a añadir un par de knobs.
----------------------------------------------------------------
El módulo Stereo Amp/Mixer coje una señal no estereo (no uso la palabra mono, y es intencionado por que en Reaktor se usa para la polifonía, que veremos en siguientes entradas) que entra al módulo por la entrada In, y la divide en 2 señales según los valores de las entradas Pan y Lvl.
Aquí hay varias cosas interesantes que señalar. Primero fíjate que Reaktor usa en prácticamente todos los módulos una nomenclatura estandar: las entradas que se llaman In siempre son para la señal que va a modificarse, ya sea audio o event; las que se llaman Pan está claro, las que se llaman Lvl también está bastante claro, son el volumen, pero además significa que el módulo espera que por ESA entrada, tú le mandes una señal en decibelios, y cuidado con esto por que como ya dije en el capítulo 1.1, lo normal es que las señales en Reaktor NO ESTEN EN DECIBELIOS, sino que están normalizadas, es decir, en los intervalos [0,1] o [-1,1], y con respecto a esta medida, la medida de decibelios es, en realidad, logarítmica... si mi profe de mates de la universidad me coje expresando esto así, me mata, pero bueno, creo que se entiende que es lo que importa aquí.
Todo esto es fácilmente salvable mediante un knob, ya que un knob manda los valores que le especificas en las propiedades que vimos en el capítulo anterior, y para que lo veas in situ, añade un knob para controlar el volumen con el método de Add Control sobre la entrada Lvl, y otro de la misma manera para la entrada Pan.
Si entendiste el capítulo anterior, ya deberías saber lo que significan estos valores ;) , además son unos valores muy típicos: de -50 a +12 decibelios, y de -1 (izquierda) a +1 (derecha) para el pan. Lo que me interesa a mí es que te fijes en que si conectas un knob de 0 a 1 en la entrada Lvl, el módulo Stereo Amp/Mixer se comportará como si le dijeras al mezclador de cualquier DAW que quieres la señal amplificada de 0 a +1 decibelios, que es totalmente diferente a lo que vimos en el capítulo 2.2 de multiplicar una señal por un valor normalizado a [0,1], que resulta en un cambio proporcional, NO medido en decibelios sino proporcional a como venía ya la señal... y sin embargo el resultado también es que cambia el volumen.
En realidad, es tan fácil como cambiar la escala de la señal de entrada: podríamos poner el mismo knob que tenemos ahora, de -50 a +12, escalar su señal a [0,1], plantarle una exponencial (recuerda que los decibelios son una medida logarítmica, mientras que de la otra forma es lineal), y todo eso multiplicarlo por la señal entrante: el resultado sería el mismo, quizás requeriría algún ajuste más, pero esa es la idea. De hecho Reaktor viene con unos módulos ya preparados para este tipo de cambio de medida, se encuentran todos en Built-In Module->Math, y son: Expon. (A) para pasar de decibelios (logarítmico de -50 a +12) a amplitud (lineal de 0 a 1), Expon. (F) para pasar de tono (logarítmico pitch MIDI) a frecuencia, y viceversa Log. (A) para pasar de amplitud a decibelios, y Log. (F) para pasar de frecuencia a tono.
Esto puede servir para muchas cosas, la más obvia, entre otras, es hacer modulaciones extrañas entre parámetros que no tienen la misma medida.
----------------------------------------------------------------
Solo falta conectar el knob Level a la entrada Lvl del módulo Stereo Amp/Mixer inferior, y lo mismo para el knob Pan a la entrada Pan correspondiente. Así manejas el pan y el level de las dos señales entrantes con los mismos knobs, de forma que hagamos lo que hagamos con la señal antes de llegar a esta macro, siempre tendremos con estos dos knobs, control total sobre el pan y el volumen final antes de que el sonido salga del sinte.
Ahora vamos al tema principal por el que hice este capítulo: cambiar de knob a fader y viceversa.
Para ello primero vamos a dejar el panel en mejores condiciones, por que otra vez los knobs que has añadido están uno encima de otro, pon Level encima de Pan como vimos en el capítulo 2.3.
Me dirás que el control para el nivel no es un knob, sino un fader, y yo te diré que normalmente tendrías razón, pero en Reaktor es lo mismo una cosa que la otra, lo único que cambia es la imagen que se muestra en el panel.
Selecciona el fader, ya sea en el panel o en la ventana de estructura (que por cierto, por si no te habías fijado he tenido que hacerla más pequeña, ya que no veía completamente el fader, capítulo 2.4), y en las propiedades ve a la pestaña View.
No voy a detenerme a explicar cada una de las propiedades de esta pestaña, por que están perfectamente explicadas en el manual de Reaktor (además, los nombres son muy intuitivos, yo diría que literales), pero para este capítulo me interesa resaltar que según selecciones la opción Knob, Horizontal Fader o Vertical Fader, un control que ya tienes en el panel cambiará su apariencia sin cambiar ninguna otra propiedad de dicho control. Todo se quedará igual, pero tendrás un knob, un fader horizontal o un fader vertical... por eso llevo todo este tiempo diciéndote, que en Reaktor un knob es un knob, después tú le pones la apariencia que te de la gana ;)
Además hay otra propiedad visual que me parece importante, que es la opción llamada Show Picture. Si la desactivas solo aparecerá el recuadro donde aparece el valor elegido, pero ese recuadro actuará como un fader vertical: si pinchas en el recuadro y arrastras, el valor cambia con las mismas propiedades que el knob, ya sabes, Stepsize, Mouse Reso, etc., todas estas propiedades se mantienen, solo que no verás la animación del knob moviéndose; además, este recuadro, por si no lo sabías, siempre tiene la característica de que si haces doble click encima, puedes ingresar un valor exacto con el teclado numérico, esto es SUPER util para knobs con recorridos muy grandes como podría ser una frecuencia de corte muy precisa, pero la mayor ventaja de esto viene a la hora de colocar un montón de knobs en el panel, por que fácilmente llegas a un punto en que, o no te caben todos, o aunque quepan son tantos que dificultan el manejo del sinte, así que cojes los menos importantes o los más adecuados (como el ejemplo de la frecuencia), los dejas solo con el recuadro, y así te ocupan menos sitio que puedes aprovechar para colocar mejor el resto de knobs.
Por cierto, antes de hacer nada más, recuerda, VUELVE A BLOQUEAR EL PANEL ;)
3.3. MODULO XY. KNOBS QUE NO SON KNOBS
Te habrás quedado un poco flipado con el título, pero es el que mejor describe lo que vamos a ver: formas de hacer knobs sin usar los knobs estandar del Reaktor.
Reaktor tiene más de un módulo con el que hacer knobs y sliders, que no son knobs per se, alguno yo mismo no tengo muy claro como usarlos correctamente y más de uno solo a medias... básicamente las GUIs no son lo mío :P , y estos módulos tienen un funcionamiento bastante complejo.
De entre ellos, me siento casi moralmente obligado a incluir el módulo XY en este tutorial, ya que combina facilidad de uso con una gran versatilidad tanto en funcionamiento como en estética, vamos, que vale para todo, "pa' un roto y pa' un descosío". Además en la próxima versión supuestamente se podrá poner en transparente, con lo que ganará todavía más versatilidad de uso (¿Un XY transparente encima de un sampler?... Jur, destroza samples instantaneo).
Dicho lo cual, vamos a usar este módulo para el pan y el level de nuestra macro Mix, y para seguir teniéndolo todo bien ordenado, crea dos nuevas macros dentro de la propia macro Mix, ahora ya sabes que puedes crear una y duplicar ;) . Ponles nombre sobre la marcha: una pan y otra lvl.
Fijate que en el panel también se ven estas macros como dos recuadros (te los señalo en amarrillo en la imagen de arriba), cosa que no queremos que suceda, por que los dos controles ya están en su recuadro titulado Mix y rodearlos por otro más quitaría espacio y confundiría más que ayudaría. Desde luego esto es una decisión subjetiva que hay que adaptar a cada instrumento, pero en este caso creo que es obvio que no interesa. Para quitarlo, en las propiedades de las macros, en la pestaña View, tienes tres opciones bajo el título STYLE:
-
3D Frame que crea un recuadro en "tres dimensiones" (y lo entrecomillo por que bueno, en vez de ser una linea pasa a ser un título más parecido a una ventana de windows, esas son las "tres dimensiones" xD ).
-
Line Frame es la opción por defecto, con un recuadro lineal.
-
No Frame como habrás podido imaginar ya, deja la macro sin recuadro visible en el panel.
Elige la opción No Frame para cada una de nuestras nuevas macros: pan y lvl; los recuadros de estas macros desaparecerán del panel.
Empezaremos por el pan, así que entra en la macro correspondiente, añade una salida como ya sabes hacer, y añade también un módulo XY en el menú Built-In Module->Panel->XY.
Te pongo la imagen para que vayas localizando en el super menú de reaktor (¬¬ lo sé, joder con los menús de Reaktor) dónde queda el módulo.
En un primer vistazo seguramente pensarás que es el típico pad XY que traen un montón de controladores y vsts, y también puede funcionar de esta manera, de hecho viene preparado para usarlo así por defecto, pero tiene muchas más posibilidades.
----------------------------------------------------------------
Lo que hace el módulo XY en términos matemáticos, es definir un eje de coordenadas (vamos, un eje cartesiano de dos dimensiones de toda la vida) independiente del general que maneja el panel de Reaktor. Este eje está definido visualmente por el espacio negro que aparece en el panel, y tiene unos límites vertical y horizontal, y una escala, establecidos en las propiedades del módulo, de modo que si pinchas DENTRO de este espacio el módulo te da la las coordenadas RELATIVAS del punto donde has pinchado.
Es decir, si estableces los límites en [0,1] para los dos ejes, y pinchas justo en el medio del espacio negro, el resultado será el punto (0.5,0.5), en el extremo superior derecho será (1,1), y así con cualquier punto en el que pinches.
Total, que el módulo envía eventos cuando haces click izquierdo con el ratón dentro de él. Por la salida MX envía la coordenada X (horizontal) relativa, del punto donde hiciste click, por la MY lo mismo para la coordenada Y (vertical) relativa, y la salida MB envía 1 cuando presionas el botón izquierdo y 0 cuando lo sueltas.
Ojo con esto por que aquí tenemos el problema de siempre con los eventos, que ya comenté en el tocho de teoría del capítulo 1.4: que solo se envían en un momento determinado.
En nuestro caso no nos afecta, pero para que lo sepas ya, todas estas salidas envían sus correspondientes eventos SOLO en las siguientes ocasiones:
-
Si presionas el botón izquierdo del ratón en el espacio negro que hay dentro del módulo, en el panel.
-
Si, una vez presionado el botón dentro del espacio negro, arrastras el ratón dentro del espacio definido por este. Esto funciona igual que los knobs: a cada paso que aumentas o disminuyes, se envía un evento.
-
Si, teniendo presionado el botón izquierdo, lo sueltas.
Por otro lado, el módulo también tiene entradas, lo cual podría parecer una tontería dado que el módulo es muy visual y se maneja con el ratón, pero estas entradas sirven para obligar al módulo a situarse en ciertos puntos del eje, lo cual es super útil en montón de ocasiones, por ejemplo para modular y para dibujar en el eje. Lo veremos más adelante en este mismo capítulo.
Es posible que a estas alturas te esté entrando un pequeño dolor de coco con tanto rollo xD, pero tranqui, ahora verás cómo manejarte con todo esto y para qué sirve.
----------------------------------------------------------------
Bien, estábamos en la macro pan, añadidos ya el módulo XY y una salida. En el tocho de teoría acabo de explicarte que el módulo XY define un eje de coordenadas, pero no solo se pueden dibujar puntos o rectas, también se pueden dibujar rectángulos.
Hay tres opciones en la pestaña View de las propiedades del módulo, en las que tienes que fijarte con detenimiento: Object Type, Curser Type (obvio error tipográfico de NI, debería ser CursOr Type, pero bueno, prefiero ponerlo tal cual está en el Reaktor para evitar confusiones), y Fade Time.
Object Type define qué objeto dibuja el módulo, nosotros lo vamos a dejar en Bar, que es el que vamos a usar.
Curser Type define el tipo de cursor que dibuja el módulo cuando pinchas encima, y lo vamos a dejar en None, ya que no nos va a hacer falta un cursor.
Fade Time define cuánto tiempo tarda en desaparecer lo que dibujes, y lo vamos a dejar en 0, por que queremos que el módulo refleje los movimientos del ratón con la mayor rápidez posible.
Ya que estás en esta pestaña, desactiva la opción Show Value, renombra el módulo a Pan, y ponle una altura (Height) de 13 pixels.
La pestaña debería quedarte así:
Esto en cuanto a lo visual, ahora vamos a la estructura. Si lees la info del módulo, verás que las entradas funcionan de una manera distinta según el objeto que elijas. El objeto Bar, el que vas a usar aquí, es lo mismo que un rectángulo, de hecho ES un rectángulo, solo que si eliges Rectangle Reaktor te dibuja solo los bordes del rectángulo; con Bar se colorea también el interior.
Para Bar las entradas X1 e Y1 definen el punto en el eje que será una de las esquinas del rectángulo, y las entradas X2 e Y2 el punto de la esquina contraria: si uno es (0,0) el otro sería (1,1).
Como queremos usarlo para el pan, de -1 (izquierda) a 1 (derecha), una de las esquinas será siempre (0,0); el punto que define la otra esquina será siempre 1 para la coordenada Y, y el definido por el ratón para la coordenada X, así que para esta coordenada tenemos que recoger la salida MX del módulo y devolverla a la entrada X2 del módulo. Si intentas hacerlo directamente verás que no se puede: Reaktor no permite conectar la salida de un módulo a una entrada del mismo módulo, para evitar bucles.
Esto forma parte de otra de las desventajas de este programa, su pésima forma de resolver bucles, y el que sepa algo de programación sabrá solo con leerlo que esto es una buena putada. No es que no se puedan hacer bucles, se pueden hacer, pero hacerlos tiene un nivel de complicación que en mi opinión no está a la altura de un software como este en el que, aunque sea de forma gráfica, lo que se hace precisamente es programar, y tener que programar sin bucles o deteniéndote a buscarte la vida para hacerlos sin que Reaktor se cuelgue, pues a estas alturas de la película es un atraso enorme.
Pero en fin, dejando de lado todo esto que debería ir dirigido a NI más que a ti :P , vamos a ver una forma de las muchas que hay para conseguir llevar la salida MX a la entrada X2.
Personalmente, a mí me gusta usar el módulo Audio Smoother en el menú Built-In Module->Auxiliary->Audio Smoother, ya que además de conseguir el bucle, consigues que el uso del módulo sea más suave, así que añade este módulo, pero ten en cuenta que se puede usar cualquier módulo que no varíe el valor de la señal, por ejemplo un módulo de suma (X+0=X). Ahora conecta la salida MX a la entrada del Audio Smoother y la salida de este a la entrada X2, y listo, tenemos nuestro bucle.
Para las otras entradas del XY vamos a usar constantes, que como su propio nombre indica son módulos que envían números constantes, siempre el mismo. Añádelas con el mismo método que añadías los knobs a una entrada: botón derecho en el nombre de la entrada, y esta vez elige el menú Create Constant. Ya te he comentado que las entradas X1 e Y1 son siempre 0, y la entrada Y2 es siempre 1, por tanto hay que añadir 2 constantes: añade una sobre la entrada X1 (también tienes que conectar esta constante a la entrada Y1), y la otra constante sobre la Y2. En Reaktor el nombre de las constantes es igual al valor que envían, si cambias el nombre también cambias este valor, así que cambia el nombre de la constante conectada a X1, a 0, y el de la otra, a 1.
Y pantallazo de rigor para que veas como debería quedarte:
Ahora mismo la cosa está un poco rara en el panel: el módulo no funciona. Esto pasa porque Reaktor, para ahorrar recursos, "apaga" los módulos que no están conectados a nada, es algo parecido a lo que nos pasaba con el switch en el capítulo 2.4. Esto se arregla marcando la opción Always Active (gracias NI por esta utilisima opción) de la pestaña Function de las propiedades del módulo. Así todo, cuando actives esta opción el módulo seguirá sin funcionar como debería, y es que no le has definido los límites del eje, es decir, los valores máximo y mínimo ;)
En la misma pestaña Function, verás unos valores que son exactamente los mismos que en los knobs, solo falta el Default que como te dije en su momento, no sirve para nada xD . Así que nada, como ya deberías saber para qué sirven :P , directamente te pongo un pantallazo para que los dejes como tienen que estar:
----------------------------------------------------------------
De esto solo señalarte un par de cosas, para que termines de redondear y entender cómo funciona el módulo.
Primero, que tienes dos grupos de propiedades, uno para el eje X y otro para el eje Y, esto es así por que cada eje funciona como un knob virtual: si pinchas y arrastras el ratón hacia arriba aumentas el valor de la coordenada Y, hacia abajo disminuyes el valor de la coordenada Y; por otro lado si pinchas y arrastras el ratón hacia la derecha aumentas el valor de la coordenada X, hacia la izquierda disminuyes el valor de la coordenada X. Lógicamente, todos estos movimientos son registrados al mismo tiempo, para poder hacer movimientos en diagonal, pero el módulo SIEMPRE tiene dos valores que aumentan o disminuyen según los movimientos del ratón, y por lo tanto necesita dos grupos de propiedades, uno para cada valor.
Segundo, el hecho de que tenga las mismas propiedades incluyendo las enfocadas a los pasos de los knobs, Stepsize, Num Steps, Mouse Reso, significa que el módulo TAMBIEN va a pasos igual que los knobs: aquí el ordenador tampoco entiende el concepto de continuidad, los movimientos tienen que ser discretos, a pasos, y estas propiedades funcionan exactamente igual que en los knobs, lo mismito que hemos visto al comienzo de esta entrada.
----------------------------------------------------------------
Ahora queda conectar algo a la salida de la macro, que irá conectada a su vez a la entrada Pan de los módulos Stereo Mixer de nuestra macro Mix, y que será lo que le diga a Reaktor por qué canal debe ir el sonido, derecha o izquierda. Teniendo en cuenta que el valor -1 es izquierda, el valor 0 es centro, 1 es derecha, y que este valor debería venir dado por dónde pinches con el ratón en el módulo XY, te dejo como deberes que averigües qué deberías conectar a la salida para que todo funcione correctamente, y en la próxima entrada te lo resuelvo ;)
Por cierto, también puedes intentar hacer el XY del nivel, es igual que el del pan pero... en vertical y de -50 a +12, a ver si te sale.
Con lo cual, queda terminado el tercer capítulo del tutorial, haz los deberes xD e investiga las posibilidades del módulo XY, que son muchas.
Saludos.