SWiSH Forum
Forum użytkowników programów SWiSH

SWiSH Max - Problem z pojemną stroną i długim wczytywaniem.

gradzio - Nie 07 Cze, 2009 16:31
Temat postu: Problem z pojemną stroną i długim wczytywaniem.
Witam wszystkich.

Jestem nowym użytkownikiem Swisha i nie dawno wykonałem swoją pierwszą własną stronę www.imaginativerecords.info
Mam pewien problem ze stroną. Możliwe, że prozaiczny, ale przez dwa tygodnie przeszukiwania na necie nie znalazłem czegoś co by mogło mi pomóc w tej kwestii.
Problem polega na dużej pojemności samej strony, która waży 4,5 MB.
Schemat strony w swishu wygląda następująco:
Preloader (scena1) > Intro (scena2) > strona właściwa (scena3)

Jak mogę spowodować aby w preloaderze wgrane zostało samo intro, a podczas wyświetlania intra wczytywało stronę właściwą tak aby rozłożyć wczytywanie w czasie?

Proszę o radę w tej sprawie
Z góry dziękuję za wszelką pomoc.

hubaiitv - Pon 08 Cze, 2009 09:23

Spakuj tego flasha. To zmniejszy jego objętość.
I zmniejsz rozdzielczość.

shastaan - Pon 08 Cze, 2009 12:47

Kolegi, który pisał o pakowaniu flasha i zmniejszaniu rozdzielczości na Twoim miejscu bym nie posłuchał. Obie sugestie nie mają nic wspólnego z tematem i są chybione, chyba, że czegoś nie rozumiem (chętnie zrozumiem i zwrócę honor).

Strona jest bardzo fajna, z punktu widzenia projektu audiowizualnego (choć ja bym poprawił typografię) i jest się o co bić ale przemyśl sobie czy nie chcesz z czegoś zrezygnować na rzecz jej używalności (4,5MB to duuużo, troche za dużo, moim zdaniem, zniechęca).

Jeśli jednak chcesz pozostać przy tym co jest to odpowiedź na Twoje pytanie powinna moim zdaniem brzmieć tak:

Nie wiem na jakiej zasadzie zrobiłes preloader ale najprościej będzie tak:

Kod:
onFrame (X) {
    if (sceneFrameLoaded("Scene_2", Y)) {
        gotoSceneAndPlay("Scene_2", 1);
    }
}


X - jakaśtam klatka w preloaderze do intro
Scene_2 - scena z intro
Y - numer ostatniej klatki w scenie z intro

To sprawi, że po załadowaniu się intra (sceny 2) zacznie się ona odtwarzać.
W trakcie jej trwania robisz podobny skrypt, który ładuje scene 3cią, tą główną.

Oczywiście podałem Ci rozwiązanie najłatwiejsze, co wcale nie znaczy, że najlepsze. Przy takiej wielkości pliku wypadałoby albo ten plik podzielić na kilka swfów (ładować jeden do drugiego w sprite'y, gdy gość wywoła konkretną treść) w preloaderach dodać liczniki procentrowe itp.

Jak będziesz miał pytania to:
1. popatrz do helpa bo tam wszystko jest,
2. przeszukaj to forum bo tu wszystko jest,
3. upewnij się, że nadal masz pytanie (to są podstawy, chcesz to zrozumieć sam i zrobić korzystając z własnej wiedzy i będąc pewnym tego co robisz).
4. nie krępuj się pytać ;] chętnie odpowiemy.

hubaiitv - Pon 08 Cze, 2009 14:47
Temat postu: Re: Problem z pojemną stroną i długim wczytywaniem.
gradzio napisał/a:

Problem polega na dużej pojemności samej strony, która waży 4,5 MB.

Podsunąłem mu kilka możliwości zmniejszenia wagi flasha.

shastaan - Pon 08 Cze, 2009 16:28

Ale "spakuj"?
Jest jakaś możliwość kompresji pliku swf, którą player sam odwróci? Nie wydaje mi sie.
A jesli jest to niby czemu swish nie wykorzystuje jej automatycznie?

gradzio - Pon 08 Cze, 2009 17:03

Bardzo dziękuję za zainteresowanie się tym tematem.

Zrobiłem tak jak zasugerował mi "shastaan". Co prawda musiałem jeszcze pokombinować ponieważ musiałem dołożyć drugi preloader, ale to co napisałeś "shastaan" dało mi do myślenia i udało się rozłożyć ciężar ładowania strony w czasie trwania intra.
www.imaginativerecords.info

Dla tego Bardzo dziękuje "shastaan"

Jak będziesz miał problem z dźwiękiem czy akustyką to jestem do dyspozycji:)

Daniel Grad - Rudawski
iMAGiNATiVe Records

eden - Pon 08 Cze, 2009 19:18

a tak na off-topie to generalnie jest opcja kompresowania swf przy kompilacji. S-max1 -> opcje eksportu -> compress SWF file
mielu - Pon 08 Cze, 2009 19:44

eden napisał/a:
a tak na off-topie to generalnie jest opcja kompresowania swf przy kompilacji. S-max1 -> opcje eksportu -> compress SWF file


i w sm2 też jest

shastaan - Wto 09 Cze, 2009 04:03

Chlopacy, rozwińcie temat kompresji (najlepiej linkiem).

@gradzio, upomne sie :]

hubaiitv - Wto 09 Cze, 2009 09:07

# Włącz kompresję SWF: "Film" > "Opcje Eksportu" i zaznacz "Spakowany SWF". Plik powinien się zmniejszyć lecz jego utworzenie może zająć więcej czasu. Na czas testowania pliku można tę opcję odznaczyć.

# Użyj dla zdjęć formatu JPEG. Flash Designer potrafi eksportować JPEG w naturalnym formacie oszczędzając wiele miejsca. Aby sprawdzić czy obrazek jest w formacie JPEG, zaznacz go i odczytaj wiadomość w pasku statusu:

Importuj zdjęcia w formacie JPEG - nie GIF lub BMP. Jeśli wklejasz zdjęcia używając schowka systemowego zostaną one wyeksportowane w formacie bitmapy. Klikni dwukrotnie obraz i zaznacz opcję "Eksport w JPEG" aby skompresować zdjęcia.

# Używaj formatu dźwiękowego MP3 zamiast WAV. Jeśli używasz formatu WAV spróbuj zmniejszyć transmisję bitów na mniejszą częstotliwość używając programu "Rejestrator dźwięku" będącego standardowo w systemie Windows. Używaj dźwięku mono zamiast stereo jeśli to tylko możliwe. Wybierz polecenia z menu "Film" > "Dźwięki" i zrób przegląd wszystkich dźwięków użytych w projekcie. Skasuj niepotrzebne i nieużywane dźwięki

# Spróbuj zmniejszyć częstotliwość ramek. Wyższa częstotliwość ramek zwiększa objętość pliku. Domyślnie częstotliwość ramek to 20 FPS (ramek na sekundę - "frames per second"). Jeśli nie używasz dźwięku możesz zredukować częstotliwość ramek do 12 FPS. Aby zmienić częstotliwość wybierz "Film" > "Częstotliwość ramki".

# Wypróbuj narzędzie "Optymalizacja obrazu", które przekonwertuje obrazy nie będące w formacie JPEG na 8-bitowe obrazy i zredukuje liczbę kolorów do ustalonej wartości. Ażeby użyć optymalizacji obrazu wybierz "Film" > "Optymalizacja obrazu". Funkcja także wyświetli największe obiekty w pliku wynikowym.

# Używaj klonów gdzie tylko możesz. Jeśli chcesz powielić obrazek bitmapowy powinieneś użyć zamiast zwykłej kopii jego klon. Jeśli masz powielony obrazek bitmapowy, zamień go we wszystkich miejscach na klony (jedna bitmapa musi zostać jako oryginał). Aby przekonwertować obiekt na klon zaznacz go i wybierz "Edycja" > "Klon" > "Zamień na klon". Wybierz oryginalny obiekt z listy.

eden - Wto 09 Cze, 2009 09:27

Niestety linkiem nie poratuje. Generalnie opcja kompresji pliku swf zachowuje sie dokładnie jak opisałeś. Player sam ją odwraca gdy ściągnie plik na dysk klienta. Jest to kompresja bezstratna (prawdopodobnie typu zip), dlatego tez niema żadnych różnic graficznych/wydajnościowych w odtwarzaniu plików nieskompresowanych lub skompresowanych. Poza oczywiście mniejszym rozmiarem wynikowym tych drugich, co przekłada sie na szybszy download (w zależności od kontentu możesz mieć o 40% lżejszy plik - choć rożnie z tym bywa). Dekompresja odbywa się zbyt szybko by można było do czegoś się przyczepić. Opcja została wprowadzona pierwszy raz przez mflash MX i defoultowo była zawsze włączona, gdyż w zasadzie niema żadnych przeciw wskazań by było inaczej (dlaczego w swishu default jest off – nie wiem) Jedyną znaną mi sytuacją w której możesz zrezygnować z kompresji jest przypadek gdy piszesz jakiś program wykorzystujący binarną strukturę plików swf lub też pracujesz z podobym oprogramowaniem modyfikującym pliki swf. Wówczas przez kompresje mogą występować komplikacje. (np stary Dreamweaver v4 niepoprawnie rozpoznawał wersje swf czy jakieś podobne dane informacyjne)
shastaan - Sro 10 Cze, 2009 09:37

Nice.
@hubaiitv - zwracam honor :]

sl01k - Sro 10 Cze, 2009 15:17

ja bym przede wszytstkim zmienil strukture .. i rozbil to na conajmniej dwa flashe ...
scena1 i scena 2 razem tak jak obecnie i w scenie 3 zaczynasz ladowac osobny film ...

pozatym
mozesz to samo zastosowac do podstron ... kazda to osobny film ...
i po problemie

pozatym subiektywnie
ja wgrywam png do swisha a pnastepnie ustawiam ich jakosc na 90% przy czym mam fajna jakosc... przezroczystosc i sam obraz mniej wazy...


Powered by phpBB modified by Przemo © 2003 phpBB Group