Mal rollo con la precarga
Buenas!
Se que este es un problema muy comun en todas las pelis swf . De hecho he estado unas 10h buscando la respuesta por internet y solo he deducido unas cosas que no me han servido para mucho. Tambien he buscando en el buscador del mmug pero no encontre nada.
EL PROBLEMA: mi preloader empieza en 20% o más y no se como solucionarlo para que empieze desde cero.
Segun he leido en internet me he asegurado de que:
1. No tenga ninguna vinculacion moviclip actionscript de exportar al primer fotograma. Es decir, esa casilla no esta marcada. NO hay ningun elemento en la biblioteca que este vinculado al primer frame.
2. Para el porcentaje utilizo un campo de texto dinamico y embebo algunas fuentes. La pregunta es, si creo una nueva fuente en la biblioteca, es necesario que incluya o embeba esa fuente el campo de texto dinamico?
3. Segun el Size report me dice que mi primer fotograma tiene un tamaño de 19284bytes (19,3kb)por lo que podria explicar que empieze en 20%. Pero no lo creo ya que cualquier preloader bien hecho empieza desde cero.
4. El preloader que utilizo es:
<code>function cargando() {
var total, cargados, porcentaje;
total = getBytesTotal();
cargados = getBytesLoaded();
porcentaje = Math.floor((cargados*100)/total);
porcentaje_txt.text = porcentaje+"";
barra_mc.gotoAndStop(porcentaje);
if (cargados == total) {
clearInterval(hiloPrecarga);
play();
}
}
var hiloPrecarga = setInterval(cargando, 1);
stop();</code>
Tal vez haya algo mal en la programacion.
Para mas informacion el primer frame pesa 25kb y la peli 70kb
Bueno, pues ahi queda eso, no sera porque no lo habre buscado!!! pero sigo sin entender porque pasa.
ambn
no hay ni componente ni tipografia. lo habia tenido en cuenta :)
mendi Plus
Los componentes se cargan siempre en el primer fotograma de la peli, así como las tipografías. Si has creado una tipografía en la biblioteca o tienes un componente por ahí, ahí tienes la respuesta.
ambn
pues parece ser que no.
te paso el codigo exacto por si te sirve para algo
<code>function cargando() {
var total, cargados, porcentaje;
total = getBytesTotal();
cargados = getBytesLoaded();
porcentaje = Math.floor((cargados*100)/total);
porcentaje_txt.text = porcentaje+"";
barra_mc.gotoAndStop(porcentaje);
if (cargados == total) {
clearInterval(hiloPrecarga);
play();
}
}
var hiloPrecarga = setInterval(cargando, 1);
stop();</code>
joanmmk
¿puede ser que estés usando la clase lmc_tween? más o menos pesa unos 17kb y se carga en frame 1
ambn
hola!
pues que yo sepa no utilizo clases y el preloader esta programado en el mismo frame, el 1.
gracias!
joanmmk
ambn
con lo cual es mejor que no, porque tardaria mas en aparecer la precarga...
gracias!
Incluye la precarga con un script simple (sin clases) directamente programando sobre el fotograma 1 por ejemplo. Y exporta las clases de AS2 en el fotograma 5 (por ejemplo). Solucionarás el problema.
ambn
hola elsurikato
a mi lo que me preocupa es que la pantalla deje de verse durante el tiempo que tarde en cargar ese 20 o 15%.
si la conexion del usuario falla o va mal pensara que no carga la pagina y habrar cerrado mi pagina antes de verla.
gracias!
ambn
hola makisho, he mirado simbolo por simbolo y ninguno esta exportado al primer frame.
y si, lo de los _root, parent y actionscript en general es malo, malo malo. :)
makisho
Evidentemente el frame 1 está incluyendo los items exportados en la biblioteca al inicio de todo, por mi experiencia si les dices que los exporte en un frame que no sea el primero en muchas ocasiones el componente exportado deja de funcionar.
Te sugiero que crees un nuevo fla, que cargue el swf que ya tienes creado y muevas el preloader a ese nuevo fla. Ahora bien, piensa que si has utilizado _root. en tu swf para llamar al nivel superior te dejará de funcionar ya que la nueva ruta será "_root.contenedor", pero te cargará de 0 a 100 correctamente.
_root es malo, muy malo :)
elsuricatorojo
Yo ante esa situación falseo la precarga. Si el dato real es que empieza en al 20% yo lo fuerzo a que empiece en el 0% y le marco un limite en la velocidad de progreso.. por ejemplo que en cada reevaluación no pueda subir mas del 5, 10 o 20%.
Soy de la opinión que de que las precargas mas que comunicar el dato exacto de carga deben transmitir que se está cargando algo. Una precarga que en pasa de 0 a 100 en 3 frames para mi crea mas confusión que utilidad porque se va a percibir como un parpadeo.
ambn
con lo cual es mejor que no, porque tardaria mas en aparecer la precarga...
gracias!
joanmmk
Si trabajas con AS2 varia el frame de exportación de las clases. Por defecto es el 1.
ambn
ya, yo es lo que pienso, pero tambien pienso en las webs que necesitan "un entorno grafico" `para la precarga...sabes lo que quiero decir?
sobre la cuestion de las fuentes embebidas que opinas?
sole
Diria que el preloader empieza a funcionar cuando se haya cargado el primer fotograma, asi que en ese punto ya tiene chicha cargada. Por eso no empieza en 0.