TypeConverter 3D (AS 3.0 + Papervision 2.0)
Posted by Administrador | Filed under Actionscript 3.0, Arte, Diseño, Eventos, Filosofia, Publicidad

Hola a todos!
Espero que estéis todos bien! ya tenía ganas de volver por aquí :p
La verdad es que debido al aumento de trabajo y a cambios importantes en mi vida, mi frecuencia por aquí fue reduciéndose a cenizas…y después de tantos meses sin postear nada, ahora que tenia un poco de tiempo, he realizado un mini ejercicio con AS3 y papervision que me gustaria compartir con vosotros para que os lo podáis descargar para testear, estudiarlo o lo que queráis. Se llama TypeConverter 3D, y es un motor para escribir letras pixel en 3D, puedes borrarlas, ampliarlas con el zoom, activar la cámara para que se mueva respecto al ratón, crear una esfera, etc…
El motor está programado con AS3 y la versión 2.0 de Papervision. El zip consta de un archivo fla, las clases de caurina para las transiciones, el paquete de papervision,
y dentro de la carpeta com, hay una carpeta kaax que es donde encontraréis las 3 clases que he desarrollado para esta mini experiencia.
Esto es un ejemplo de lo que podéis hacer:
Si queréis retocar la tipografia, tenéis que abrir el archivo Abecedario.as y en los arrays correspondientes de cada letra, podéis cambiar el 1 por 0 y viceversa.
Incluso puede que os salgan abecedarios para marcianos
Le tecla “DEL” borra las letras que hayas escrito pixel3D por pixel3D.
Aquí os dejo parte de la clase Abecedario.
/*
* TYPECONVERTER 3D
*
* @author Isaac León (KAAX)
* @version 1.0.0
* @code AS 3.0
* @email hola@isaacleon.com
* @url www.isaacleon.com
* @blog www.isaacleon.com/blog
*/
package com.kaax.clases {
public class Abecedario
{
private var a_,b_,c_,d_,e_,f_,g_,h_,i_,j_,k_,l_,m_,
n_,o_,p_,q_,r_,s_,t_,y_,v_,u_,w_,x_,y__,z_,
arrays:Array;
public function Abecedario()
{
init();
}
private function init():void{
a_=new Array(1,1,1,1,1,
1,0,0,0,1,
1,0,0,0,1,
1,1,1,1,1,
1,0,0,0,1);
a_.name = "a";
b_=new Array(1,1,1,1,0,
1,0,0,0,1,
1,1,1,1,0,
1,0,0,0,1,
1,1,1,1,0);
b_.name = "b";
c_=new Array(1,1,1,1,1,
1,0,0,0,0,
1,0,0,0,0,
1,0,0,0,0,
1,1,1,1,1);
c_.name = "c";
d_=new Array(1,1,1,1,0,
1,0,0,0,1,
1,0,0,0,1,
1,0,0,0,1,
1,1,1,1,0);
d_.name = "d";
e_=new Array(1,1,1,1,1,
1,0,0,0,0,
1,1,1,1,0,
1,0,0,0,0,
1,1,1,1,1);
e_.name = "e";
f_=new Array(1,1,1,1,1,
1,0,0,0,0,
1,1,1,1,0,
1,0,0,0,0,
1,0,0,0,0);
f_.name = "f";
g_=new Array(1,1,1,1,1,
1,0,0,0,0,
1,0,1,1,1,
1,0,0,0,1,
1,1,1,1,1);
g_.name = "g";
h_=new Array(1,0,0,0,1,
1,0,0,0,1,
1,0,0,0,1,
1,1,1,1,1,
1,0,0,0,1);
h_.name = "h";
i_=new Array(1,1,1,1,1,
0,0,1,0,0,
0,0,1,0,0,
0,0,1,0,0,
1,1,1,1,1);
i_.name = "i";
j_=new Array(0,0,0,0,1,
0,0,0,0,1,
1,1,1,0,1,
0,1,0,0,1,
0,1,1,1,1);
j_.name = "j";
k_=new Array(1,0,0,0,1,
1,0,0,1,0,
1,1,1,0,0,
1,0,0,1,0,
1,0,0,0,1);
k_.name = "k";
l_=new Array(1,0,0,0,0,
1,0,0,0,0,
1,0,0,0,0,
1,0,0,0,0,
1,1,1,1,1);
l_.name = "l";
m_=new Array(1,1,1,1,1,
1,0,1,0,1,
1,0,1,0,1,
1,0,0,0,1,
1,0,0,0,1);
m_.name = "m";
n_=new Array(1,1,1,1,0,
1,0,0,0,1,
1,0,0,0,1,
1,0,0,0,1,
1,0,0,0,1);
n_.name = "n";
o_=new Array(0,1,1,1,0,
1,0,0,0,1,
1,0,0,0,1,
1,0,0,0,1,
0,1,1,1,0);
o_.name = "o";
p_=new Array(1,1,1,1,0,
1,0,0,0,1,
1,0,0,0,1,
1,1,1,1,0,
1,0,0,0,0);
p_.name = "p";
q_=new Array(0,1,1,1,0,
1,0,0,0,1,
1,0,0,0,1,
1,0,1,0,1,
0,1,1,1,0);
q_.name = "q";
r_=new Array(1,1,1,1,0,
1,0,0,0,1,
1,0,0,0,1,
1,1,1,1,0,
1,0,0,0,1);
r_.name = "r";
s_=new Array(0,1,1,1,1,
1,0,0,0,0,
0,1,1,1,0,
0,0,0,0,1,
1,1,1,1,0);
s_.name = "s";
t_=new Array(1,1,1,1,1,
0,0,1,0,0,
0,0,1,0,0,
0,0,1,0,0,
0,0,1,0,0);
t_.name = "t";
u_=new Array(1,0,0,0,1,
1,0,0,0,1,
1,0,0,0,1,
1,0,0,0,1,
0,1,1,1,0);
u_.name = "u";
v_=new Array(1,0,0,0,1,
1,0,0,0,1,
1,0,0,0,1,
0,1,0,1,0,
0,0,1,0,0);
v_.name = "v";
w_=new Array(1,0,0,0,1,
1,0,0,0,1,
1,0,1,0,1,
1,0,1,0,1,
0,1,0,1,0);
w_.name = "w";
x_=new Array(1,0,0,0,1,
0,1,0,1,0,
0,0,1,0,0,
0,1,0,1,0,
1,0,0,0,1);
x_.name = "x";
y__=new Array(1,0,0,0,1,
0,1,0,1,0,
0,0,1,0,0,
0,0,1,0,0,
0,0,1,0,0);
y__.name = "y";
z_=new Array(1,1,1,1,0,
0,0,0,0,1,
0,1,1,1,0,
1,0,0,0,0,
0,1,1,1,1);
z_.name = "z";
arrays=new Array(a_,b_,c_,d_,e_,f_,g_,h_,i_,j_,k_,l_,m_,
n_,o_,p_,q_,r_,s_,t_,u_,v_,x_,w_,y__,z_);
}
// FUNCION QUE DEVUELVE EL ARRAY CORRESPONDIENTE DE COORDENADAS
EN RELACION A LA TECLA PULSADA POR EL USUARIO
public function returnArray(tecla:String):Array{
var encontrado:Boolean=false;
for(var i:uint=0;i<this .arrays.length;i++){
trace(arrays[i].name);
if(arrays[i].name==tecla){
encontrado=true;
return arrays[i];
}
}
return null;
}
}
}
Soy consciente de que se podrian hacer mil cosas más para mejorarlo, pero tanto, tanto tiempo ya no tengo jejeje. Así que espero que lo disfrutéis y si os ayuda en algo, mejor que mejor.
Aquí os dejo los enlaces.
Un saludo a todos!
Ver TypeConverter3D
Descargar TypeConverter3D
Junio 28th, 2008 at 1:46 pm
Me gustó mucho el ejercicio y esta super para aprender un poco de papervision
Junio 28th, 2008 at 2:57 pm
Hey tio! wasuppp
COJONUDO! muy bueno tio! todo un currito los arrays de cada caracter! hehehee Genial tio.
Junio 28th, 2008 at 4:05 pm
Que chulo kaax!! es una pasada! muchas gracias por compartirlo!
Junio 28th, 2008 at 5:17 pm
Me alegro de que os guste
Hardface, lo de los arrays era como imaginar que juegas a hundir la flota jeje,
en realidad era como tener un grid imaginario de 5×5 e ir poniendo números”uno” en el lugar correspondiente al pixel. Más o menos me ocupó media hora para traducir las coordenadas, me hice una plantilla desde el photoshop y al final muchas letras tenian como base la de otras, por lo que agilizaba el proceso y además te lo pasabas bien creando tu tipografia.
Un saludo a los tres!
Junio 29th, 2008 at 6:20 pm
sí tio, eso me recuerda a cuando se hacian gráficos con el ZX Spectrum con DATA en binario…. 0 y 1 hahahahaa
un saludo !
Junio 30th, 2008 at 12:26 pm
Que bueno el ejemplo, pero mejor volver a verte escribir.
Un saludo
Julio 2nd, 2008 at 9:52 am
Muy buen ejercicio, no se de donde sacas tiempo, me dejas impresionado.