Comunidad de diseño web y desarrollo en internet online

mascara con flash

Citar            
MensajeEscrito el 13 Jul 2011 02:49 am
Que tal, necesitaria ayuda con respesto a una mascara especial en flash.
Lo ideal seria poder usar un png debido a los cortes complicados que tiene la mascara que necesito, pero con el png me es imposible ya que el flash me lo toma como un cuadrado.
Intente exportando el psd completo pero obteniendo el mismo resultado.

Alguien conoce una alternativa? Muchas GRacias

Por LaMuela

71 de clabLevel



 

firefox
Citar            
MensajeEscrito el 13 Jul 2011 04:35 pm
Lo recomendado es crear una capa vectorial. Habria que ver la complejidad de la imagen.
Te aconsejo que si es demasiado trabajo para vectorizar utiliza una funcion de COREL DRAW que se llama "Vectorizacion Rápida" ubicada en la barra superior "Mapas de bits" tiene varias opciones para controlar el nivel de detalle. Luego lo exportas en EPS e importas al flash.

Saludos.
Anigrama.-
Venezueka

Por Anigrama

44 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 14 Jul 2011 01:43 am
el problema es que no puedo importar archivos EPS, por lo tanto intente exportando desde corel con archivos AI el cual funciona muy bien pero no me resulta al llamarlo con un loadMovie:
cargador1.loadMovie("archivo.ai");

Por lo tanto intente exportando desde corel como swf teniendo exito tanto en respetar el grafico a la hora de hacer la mascara como con la carga loadMovie, es decir:
cargador1.loadMovie("archivo.swf");

Ahora bien, lo carga pero a la hora de hacer la mascara no funciona:

La principal idea es hace una mascara.
Capa 1 :objeto (objeto.swf)
Capa 2 :textura (textura.png)

tanto el objeto como la textura se encuentran cargados previamente en la libreria
A la capa 1 la pongo en modo "mascara" y todo funciona de maravillas.

Ahora bien, quiero hacer una carga externa tanto del objeto como de la textura osea lo mismo mencionado anteriormente pero que los archivos los tome desde fuera de la pelicula.
Para conseguir esto intento lo siguiente:

en la primer capa, primer fotograma escribo el sigueinte codigo:
cargador1.loadMovie("objeto.swf");
cargador1._xscale = 100;
cargador1._yscale = 100;
cargador2.loadMovie("textura.png");
cargador2._xscale = 100;
cargador2._yscale = 100;

en donde cargador1 y cargador2 son los nombres de instancia de 2 MC vacios, los cuales el cargador 1 (que carga el objeto.swf) se encuentra en la capa 2 con la opcion mascara tildada y el cargador 2 en una capa mas abajo pendiente de la mascara del cargador 1


osea, lo mismo que explico al principio solo que en vez de tener los objetos en la libreria los cargo externamente.

El problema es que no funciona!!! Alguna idea? Muchas Gracias




( lo posteo aparte porque por ahi se va del tema) igual si alguein tiene alguna idea por favor denme una mano que no se para donde arrancar... si alguien quiere le puedo subir el .fla para fijarse. Gracias!!!

Por LaMuela

71 de clabLevel



 

msie8
Citar            
MensajeEscrito el 14 Jul 2011 03:17 pm
Amigo prepare un tutorial al respecto chequealo aquí:

http://foros.cristalab.com/mascara-de-archivos-externos-moviecliploader-setmask-t99197/#611350

Anigrama.-
Venezuela

Por Anigrama

44 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 14 Jul 2011 04:55 pm
Terrible tutorial!! Muy bueno y muchisimas gracias!!!

Por LaMuela

71 de clabLevel



 

msie8
Citar            
MensajeEscrito el 14 Jul 2011 07:37 pm
una ultima consulta, tenes idea como puedo hacer para bajarle el alpha a las texturas desde la pelicula principal ?
esto es debido a que queda mas realista bajandole el alpha a las texturas y poniendo la imagen de fondo. Saludos

Por LaMuela

71 de clabLevel



 

msie8
Citar            
MensajeEscrito el 14 Jul 2011 07:42 pm
En el codigo de el boton Agrega:

Código ActionScript :

on (release) {
   var sURL:String = "textura2.swf";
   _root.mcLoader.loadClip(_root.sURL,_root.mcImage);
   _root.mcImage._alpha=50
}


Colocas el numero que quieras del 1 al 100

Por Anigrama

44 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 15 Jul 2011 10:49 am
buenisimo. Muchisimas gracias por tu ayuda!

Por LaMuela

71 de clabLevel



 

msie8
Citar            
MensajeEscrito el 15 Jul 2011 12:49 pm
Anigrama estuve mirando tu tutorial. Lo unico que cambie es que no cargue desde el principio la mascara sino la imagen sola para que parezca que cuando apretas uno de los botones se pinta sola....

Ahora te hago una consulta... la idea es enmascar un zapato pero por diferentes secciones, osea darle una textura al interior, una al lateral, etc... por lo tanto lo que hice con tu codigo fue lo sigueinte:


cargador_costado.loadMovie("modelo.swf");

//---------
this.createEmptyMovieClip("mc_lateral", this.getNextHighestDepth());
mc_lateral.loadMovie("lateral.swf")
//coordenadas de las mascaras
mc_lateral._x =32;
mc_lateral._y =32;
//-----------------------------------
var mcLoader_lateral:MovieClipLoader = new MovieClipLoader();
mcLoader_lateral.addListener(this);
onLoadComplete = function () { mcImage_lateral.setMask(mc_lateral); }; mcLoader_lateral.loadClip(sURL, mcImage_lateral); stop();
//Crear Fotograma Vacío
this.createEmptyMovieClip("mcImage_lateral", this.getNextHighestDepth());
//Crear segundo Clip vacio
this.createEmptyMovieClip("mc_lateral", this.getNextHighestDepth());
//carga el clip de mascara
mc_lateral.loadMovie("lateral.swf")
//crear el Moviecliploader
var mcLoader_lateral:MovieClipLoader = new MovieClipLoader(); mcLoader_lateral.addListener(this); onLoadComplete = function () {
mcImage_lateral.setMask(mc_lateral); }; mcLoader_lateral.loadClip(sURL, mcImage_lateral); stop();

// INTERIOR

this.createEmptyMovieClip("mc_interior", this.getNextHighestDepth());
mc_interior.loadMovie("interior.swf")
//coordenadas de las mascaras
mc_interior._x =132;
mc_interior._y =132;
//-----------------------------------
var mcLoader_interior:MovieClipLoader = new MovieClipLoader();
mcLoader_interior.addListener(this);
onLoadComplete = function () { mcImage_interior.setMask(mc_interior); }; mcLoader_interior.loadClip(sURL, mcImage_interior); stop();
//Crear Fotograma Vacío
this.createEmptyMovieClip("mcImage_interior", this.getNextHighestDepth());
//Crear segundo Clip vacio
this.createEmptyMovieClip("mc_interior", this.getNextHighestDepth());
//carga el clip de mascara
mc_interior.loadMovie("interior.swf")
//crear el Moviecliploader
var mcLoader_interior:MovieClipLoader = new MovieClipLoader(); mcLoader_interior.addListener(this); onLoadComplete = function () {
mcImage_interior.setMask(mc_interior); }; mcLoader_interior.loadClip(sURL, mcImage_interior); stop();




y con los botones hice lo siguiente:

los dos del lateral(uno con textura2.swf y otro con textura3.swf):
on (release) {
var sURL:String = "textura2.swf";
_root.mcLoader_lateral.loadClip(_root.sURL, _root.mcImage_lateral);
}

los dos del interior(uno con textura2.swf y otro con textura3.swf):
on (release) {
var sURL:String = "textura3.swf";
_root.mcLoader_interior.loadClip(_root.sURL, _root.mcImage_interior);
}



osea lo que intente hacer es duplicar el codigo pero no me funciona...
Podes ver algun error en lo que hice? porque la unica modificacion que realice son los nombres de los mc... Por favor ayudame!!

Por huron

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Jul 2011 01:25 pm
Explica mejor el problema, ahi solo veos duplicaciones.

PD: Al postear codigo utiliza la etiqueta de actionscript.

Por Anigrama

44 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 15 Jul 2011 07:39 pm
Gracias por responderme... lo que quiero hacer es siguiendo tu tutorial es hacer lo mismo pero con cinco o seis mascaras diferentes.
La mascara mia es un zapato, pero en realidad son varias mascaras que conforman el zapato. osea
mascara es la plantilla, otra mascara es la lengueta, otra mascara es el lateral, etc, etc...
y quiero poner texturas para ir "pintando " las diferentes partes del zapato.

Yo lo que logre hacer con tu tutorial es pintar el zapato entero, es por eso que intente copiar todo el codigo otra vez para pintar una parte diferente tomando una mascara diferente pero dentro de la misma pelicula principal.

en el ejemplo que te transcribi arriba, "lateral.swf" es una de las mascaras y "interior.swf" es otra.
cada una con sus dos respectivos botones ya que la idea es copiar "x" cantidad de veces el mismo codigo como "x" cantidad de diferentes capas tenga en la pelicula principal.

Código ActionScript :


cargador_costado.loadMovie("modelo.swf"); 

//--------- 
this.createEmptyMovieClip("mc_lateral", this.getNextHighestDepth()); 
mc_lateral.loadMovie("lateral.swf") 
//coordenadas de las mascaras 
mc_lateral._x =32; 
mc_lateral._y =32; 
//----------------------------------- 
var mcLoader_lateral:MovieClipLoader = new MovieClipLoader(); 
mcLoader_lateral.addListener(this); 
onLoadComplete = function () { mcImage_lateral.setMask(mc_lateral); }; mcLoader_lateral.loadClip(sURL, mcImage_lateral); stop(); 
//Crear Fotograma Vacío 
this.createEmptyMovieClip("mcImage_lateral", this.getNextHighestDepth()); 
//Crear segundo Clip vacio 
this.createEmptyMovieClip("mc_lateral", this.getNextHighestDepth()); 
//carga el clip de mascara 
mc_lateral.loadMovie("lateral.swf") 
//crear el Moviecliploader 
var mcLoader_lateral:MovieClipLoader = new MovieClipLoader(); mcLoader_lateral.addListener(this); onLoadComplete = function () { 
mcImage_lateral.setMask(mc_lateral); }; mcLoader_lateral.loadClip(sURL, mcImage_lateral); stop(); 

// INTERIOR 

this.createEmptyMovieClip("mc_interior", this.getNextHighestDepth()); 
mc_interior.loadMovie("interior.swf") 
//coordenadas de las mascaras 
mc_interior._x =132; 
mc_interior._y =132; 
//----------------------------------- 
var mcLoader_interior:MovieClipLoader = new MovieClipLoader(); 
mcLoader_interior.addListener(this); 
onLoadComplete = function () { mcImage_interior.setMask(mc_interior); }; mcLoader_interior.loadClip(sURL, mcImage_interior); stop(); 
//Crear Fotograma Vacío 
this.createEmptyMovieClip("mcImage_interior", this.getNextHighestDepth()); 
//Crear segundo Clip vacio 
this.createEmptyMovieClip("mc_interior", this.getNextHighestDepth()); 
//carga el clip de mascara 
mc_interior.loadMovie("interior.swf") 
//crear el Moviecliploader 
var mcLoader_interior:MovieClipLoader = new MovieClipLoader(); mcLoader_interior.addListener(this); onLoadComplete = function () { 
mcImage_interior.setMask(mc_interior); }; mcLoader_interior.loadClip(sURL, mcImage_interior); stop(); 




y con los botones hice lo siguiente:

los dos del lateral(uno con textura2.swf y otro con textura3.swf):

Código ActionScript :

on (release) { 
var sURL:String = "textura2.swf"; 
_root.mcLoader_lateral.loadClip(_root.sURL, _root.mcImage_lateral); 
} 

Código ActionScript :

on (release) { 
var sURL:String = "textura2.swf"; 
_root.mcLoader_interior.loadClip(_root.sURL, _root.mcImage_interior); 
} 


Por mas que intente tocar tu codigo me fue imposible.
Te pido disculpas por ser tan poco explicativo anteriormete y por no haber escrito el codigo en forma debida(no sabia como hacerlo). Espero por favor que puedas ayudarme aunque sea con estas dos mascaras. Saludos

Por huron

2 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.