No podría ser que como no pones un updateAfterEvent() al redibujar, no es
que pierdas rendimiento, sino "resolución" en fotogramas para que no salte
la peli?


Un saludo,
David Bravo
Dimensión Multimedia, S.L.
-----Mensaje original-----
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] En nombre
de Javier Fernández
Enviado el: sábado, 03 de diciembre de 2005 22:14
Para: [email protected]
Asunto: Re: [ASNativos] Perdida de rendimiento moviendo mcs creados con
laAPI de dibujo

Bueno, estoy flipando, ahora pruebo a attachear el mc mascara en lugar de
pintarlo y sufre la misma pérdida de rendimiento. :(

----- Original Message ----- 
From: "Javier Fernández" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Saturday, December 03, 2005 10:03 PM
Subject: [ASNativos] Perdida de rendimiento moviendo mcs creados con la API
de dibujo


> Hola listeros, a ver si me pueden aclarar una cosa que acabo de descubrir
y
> me ha dejado anodado.
>
> Tengo una serie de pestañas que desplazan unas mascaras para mostrar
ocultar
> unos mcs (tipo el componente acordeon pero 'custom', porque el
> funcionamiento requerido no era el mismo).
>
> En un principio había 4 pestañas y cuatro mascaras para los cuatro mcs de
> contenido, ahora me pongo a pulirlo un poco y elimino las mascaras para
> crearlas con createEmptyMovieClip y la API de dibujo de flash (por dejarlo
> más limpito) y me encuentro que -con exactamente la misma programación
salvo
> el detalle de las mascaras- las mascaras creadas con este otro método
> acumulan un retardo que hace que al arrastrar no vayan parejas a las
> pestañas.
>
> Como no se si me explico muy bien he subido una comparativa para que
podais
> ver del efecto indeseable del que hablo
> (http://drusunlimited.com/labo/asnativos/miAcordeon/)
>
> Mi pregunta es ¿a que se debe esta perdida de rendimiento?
>
> La mascara es un cuadrado normal y corriente, la creo de este modo:
>
> [code]
>  var mask_mc:MovieClip = _root.createEmptyMovieClip("mask"+i+"_mc",
> _root.getNextHighestDepth());
>  mask_mc.beginFill(0x00FF00, 100);
>  mask_mc.lineStyle(0, 0x00FF00, 0);
>  mask_mc.moveTo(0, 0);
>  mask_mc.lineTo(915, 0);
>  mask_mc.lineTo(915, 660);
>  mask_mc.lineTo(0, 660);
>  mask_mc.endFill();
> [/code]
>
> El codigo del movimiento es algo más complejo dado que las solapas no se
> pinchan sino que se arrastran, y deben empujar las que tengan delante, o
> atrás, dependiendo a que lado estén apiladas, pero dudo que esté ahí el
> error porque si las mascaras las creo en tiempo de diseño este retardo no
se
> produce. Por si acaso os pego la función:
>
> [code]
> fStartDrag = function () {
>  var inc:Number = 15;
>  dragger_mc._x = this._x;
>  startDrag("dragger_mc", false, this.miXmin-15, 0, this.miXmax+15, 0);
>  for (var j = 0; j<=numsolapas; j++) {
>   var solapa:MovieClip = _root["solapa"+j+"_mc"];
>   var mask_mc:MovieClip = _root["mask"+j+"_mc"];
>   mask_mc.onEnterFrame = function() {
>    if (this.miID<numsolapas) {
>     this._x = _root["solapa"+this.miID+"_mc"]._x-915;
>    } else {
>     this._x = _root["solapa"+this.miID+"_mc"]._x+15;
>    }
>   };
>   //Si arrastro una que está a la izquierda
>   if (this.lado == "izquierda") {
>    //arrastro todas la que estén a su derecha pero situadas a la izquierda
>    if (solapa.miID>=this.miID && solapa.lado == "izquierda") {
>     solapa.inc = 15+(j-this.miID)*15;
>     solapa.onEnterFrame = function() {
>      this._x = dragger_mc._x+this.inc;
>     };
>    }
>   }
>   if (this.lado == "derecha") {
>    //arrastro todas la que estén a su izquierda pero situadas a la derecha
>    if (solapa.miID<=this.miID && solapa.lado == "derecha") {
>     solapa.inc = 15+(this.miID-j)*15;
>     solapa.onEnterFrame = function() {
>      this._x = dragger_mc._x-this.inc;
>     };
>    }
>   }
>  }
> };
> [/code]
>
> Muchas gracias de antemano y un saludo.
> Javier Fernández
> ------------------------------------------
> [ http://drusunlimited.com ]
>
> ----------------------------------
> Lista ASNativos:[email protected]
> http://www.5dms.com/listas
> ----------------------------------

----------------------------------
Lista ASNativos:[email protected]
http://www.5dms.com/listas
----------------------------------

----------------------------------
Lista ASNativos:[email protected]
http://www.5dms.com/listas
----------------------------------

Responder a