Tutorial: ~Rimless~ Ispirated – FX en LUA

jueves, marzo 12, 2009

Bueno…¿lo prometí verdad?..Pues como ando en la onda loca de hacer karaokes de la forma difícil (?), pues en este blog tierra de nadie daré un aporte a los perrys necesitados, que como yo, quieren hacer efectos para karaokes, pero nunca hay la suficiente información…

Hay que agradecer al maestro Zheo, por darme la iluminación en todo esto, afortunadamente hay gente como el que todavía cree que en aquello de “comparte tu conocimiento con los demás” (no como los “grosi-cheveres” que hacen karaokes en AE que comen callados o te mandan a google [o directamente a la mier…])...el que come solo, muere solo..sabedlo!)..en fin..a lo que vinimos…

Primero que todo, les recomiendo echarse una pasadita por el blog de Zheo si no tienen ni idea de que va este asunto, el subió muy buenos tutoriales para que los principiantes hagamos FX en LUA usando el modulo automation 4 del aegisub

El FX está inspirado en el primer ED de “To Aru Majutsu no Index”, no es algo complicado de hacer, solo requiere un minimo de logica y de lectura, les explicare la parte “fuerte” del FX que son las figuras del fondo, lo demás debería entrar por ley xD

El código:



color={"&HC23C03&","&HCA680B&","&HF9FF20&","&H6B3405&"}
l = table.copy(line)
for r=0,20 do
fs=math.random(50,90)
alpha=ass_alpha(math.random(100,255))
local pcolor=color[math.random(1,4)]


l.start_time=line.start_time+syl.start_time+math.random(0,syl.duration)
l.end_time=l.start_time+math.random(300,700)


l.text = string.format("{\\p1\\pos(%d,%d)\\fad(50,70)\\1c%s\\alpha%s\\an8\\be5\\bord0\\fscx%d\\fscy%d}m 0 0 l 0 0 l 5 7 l 15 9 l 23 4 l 25 -5 l 22 -13 l 11 -17 l 1 -11 l 0 -1{\\p0}", x+math.random(-50,50),y+math.random(-15,15),pcolor,alpha,fs,fs)
l.layer=1
subs.append(l)
end



Listo..acabe!!...nahh mentiras…

Lo primero que he hecho es crear un arreglo con los colores que voy a usar en las figuras


color={"&HC23C03&","&HCA680B&","&HF9FF20&","&H6B3405&"}


y hare que se asigne a cada pasada del bucle un color aleatorio a la variable “pcolor”


local pcolor=color[math.random(1,4)]


(si no han entendido esto es porque no leyeron los tutoriales de zheo xD)

El bucle for nos permitirá generar 21 formas por silaba del karaoke (recuerden que estos LUA el bucle recorre silaba a silaba)…

Bueno…ahora les hablare un poco sobre esta línea

alpha=ass_alpha(math.random(100,255))


esto es magia xD….ass_alpha es una función que pertenece al paquete utils del automation 4, son funciones que crean para facilitarnos la vida pero como la gente no lee….bueno..esta función recibe como parámetro un entero, y nos devolverá un valor alpha de la forma “&HAA&”…esta función es muy útil, teniendo en cuenta que la etiqueta alpha acepta únicamente valores hexadecimales, con esta función, podemos usar un valor en decimal (recuerden, entre 0 y 255, es lo que maneja alpha en decimal), y no solo obtendremos automáticamente el valor en hexadecimal, obtendremos la estructura completa lista para ser asignada al apha..

para que entiendan mejor esta función les pondré un ejemplo:

a=ass_alpha(150)

el valor que tendrá la variable a en este caso será “&H96&” que es el que nos sirve para asignar a un alpha de esta forma:

({...\\alpha%s\\...},a) -> alpha&H96&

Recuerden!!!, debe ser asignada como un string (%s) y no como un numero (%d) o les va a dar error..

Volviendo a mi script, hice aleatori el alpha entre 100 y 255 (fue nub ponerlo hasta 255, ya que algunas figuras no se verán..pero bueno xD) , lo que me entregara figuras con diferente grado de transparencia, en mi script use la variable alpha para este cometido, en el string la verán implementada como ya les dije antes :P

Los tiempos de inicio y tiempos de salida

l.start_time=line.start_time+syl.start_time+math.random(0,syl.duration)
l.end_time=l.start_time+math.random(300,700)


hay que aleatorizar tanto el tiempo de entrada como el tiempo de salida, si no se hace, se obtendrá un montón de figuras que aparecerán y desaparecerán al mismo tiempo, que no es la idea, estas 2 lineas son las que hacen la real magia de este efecto…”sin-salabin” como decía el profesor de colas :P

De la cadena de efecto poco hay que decir…Simplemente randomize posiciones y tamaños y asigne las variables a donde correspondía…

Y bueno…no es más…el resultado:

(Me arte de intentar subir el swf a esta mier…bah…me arte de blogger..xD )

Bastante grosso, pero mi intención no era hacer algo bonito, sino practicar…..se pueden mejorar muchas cosas, pero esto es de enseñanza…tampoco lo voy a hacer todo perfecto xD

Les dejo el script ya preparado, justo con el ass con el efecto aplicado




Nota:

Para el encode use el filtro textsub del virtualdubmod, por alguna razón usando avs el VSfilter no me servían las etiquetas \be y \blur, lo que daba un aspecto bastante feo a los efectos (y bueno, este efecto usa un valor “be” alto)

Y posdatas:

-Este blogger es una mierda!, tras de que tiene opciones grosas, destroza el html que me mato escribiendo…me aburrí , voy a cambiar de plataforma próximamente, disculpas por la forma grosa del post

-Por favor, liberen su conocimiento, pongamos de moda el término “comunidad” no se queden con las cosas para ustedes, si hay algo que puedas aportar al mundo, pues apórtalo, pero no te quedes con lo que sabes por miedo al RIP, una cosa es lo gratis y otra lo libre, sabedlo!

9 comentarios:

Zheo dijo...

el link pa bajar el video no funca xD

saludos

nickle dijo...

Bueno..en vista de que este condenado blogger me saca un error por una etiqueta HTML cuando quiero editar el post (y no me voy a poner a revisarlas 1 por 1 xD), pongo el link acá:

http://www.mediafire.com/?mqgdyz5no4y

Naharina dijo...

Hola, interesante post, pero alguien me podria enseñar como hacer más efectos con lua o crumja es que estopy haciendo mi propio fansub pero no se mucho sobre efectos y si gustan tmb puedo compartir lo que ya se, les dejo mi correo luzluzo@hotmail.com y visiten tmb mis blogs chao

nickle dijo...

http://my.opera.com/nicklechama/blog/ casualmente hace poco se indexo el contenido de los blog de la comunidad en opera, la dirección la encuentras en el segundo post del blog..ahí encontraras lo que necesitas

ASEDARK dijo...

que cosa tan rara es este blog, quien será su desgraciao creador??...jajajjaa ke onda nickles chamas

Knivesgb dijo...

Tio :S yo no entiendo de que vas, te digo estoy por el el blog de Zheo, no abre =/,

Unknown dijo...

hola amigo soy un novata en eso la verda no entiendo nada pero el templnte qe pusiste esta super chevere una pregunta ¿como ago esos efecto osea como u scrip en lua con para un video sd 704x396?

Anónimo dijo...

Salu2 ¡ y super las aportaciones sin duda soy un principiante en esto de los karaokes pero sin duda m encanto hacer y realmente lo k mas m gusta es crear nuevos efectos pero tengo 1 problema k eh¡ buscado donde los puedo descargar gratuitamente el LUA y nada k m aparece espero k m puedas ayudar y decirme algun sito d descarga gracias escribeme a [kaedestepmania@hotmail.com]

Anónimo dijo...

Resube todo pero optimizado y actualizado para que funcione con el Aegisub 3.0.2, si no es mucho pedir o al menos que se zeo