Lopez Opublikowano 3 Czerwca 2010 Opublikowano 3 Czerwca 2010 Witam ponownie. Napotkawszy problem, zwracam się z do Was z prośbą o pomoc. Potrzebuję zamieścić wszystkie zasoby aplikacji w jednym pliku o dowolnym rozszerzeniu, np. dat. Czego użyć by w jednym pliku zamieścić wszystkie pliki graficzne? Z tego co się orientuję, to takie rozwiązanie jest zastosowane w Almorze. Pozdrawiam.
Muuuuczek567 Opublikowano 3 Czerwca 2010 Opublikowano 3 Czerwca 2010 Wtedy chyba uzyto DLLa, nie jestem pewien. A jesli chcesz zapisac obrazki do jednego pliku, to mozna zrobic w ten sposob: - narysowac wszystkie na surface - zapisac surface - zaszyfrowac - zmienic rozszerzenie - wynalezc sposob odczytania wszystkich sprite'ow. WARNING: strasznie powolne. Jezeli natomiast uzywasz GM8 Pro, to wystarczy eksportowac zasoby do .gmres (czy tam .gmspr). Tylko ze wtedy zapisuja sie wszystkie zasoby.
DobryZiom Opublikowano 3 Czerwca 2010 Opublikowano 3 Czerwca 2010 ja bym polecił jakiś dll :) do czytania z rar czy coś :)
Lopez Opublikowano 3 Czerwca 2010 Autor Opublikowano 3 Czerwca 2010 Niestety obydwa rozwiązania odpadają. Dlaczego? Po pierwsze priorytetem w moim projekcie jest optymalizacja i szybkość działania. Po drugie zasoby zamieszczony w zewnętrznym pliku mają być jak najbardziej chronione od ich edycji i rozpowszechniania. Ale dzięki za odpowiedź.
Muuuuczek567 Opublikowano 3 Czerwca 2010 Opublikowano 3 Czerwca 2010 Pierwsze rozwiazanie wcale nie musi odpasc. Dlaczego? Sprite'y wystarczy zapisac raz, a potem kod zapisywania wyrzucic z gry. Sprite'y wystarczy tez wczytywac tylko podczas uruchomienia gry (np. daj ladna plansze 'Loading').
waxx Opublikowano 3 Czerwca 2010 Opublikowano 3 Czerwca 2010 http://gmc.yoyogames.com/index.php?showtopic=248287&st=0
Administratorzy gnysek Opublikowano 3 Czerwca 2010 Administratorzy Opublikowano 3 Czerwca 2010 W skrócie (ale w bardzo dużym) w Almorze jest tak: [ilosć grafik] [nazwazasobu][offset][rozmiar][ nazwazasobu][offset][rozmiar] [nazwazasobu][offset][rozmiar] [dane] [dane] [dane] I na początku tworzy się strukturę danych z offsetem pliku (pozycją) gdzie zaczynają się dane jakiegoś zasobu i ile bajtów nalezy wczytać. Te dane o zasobach znajdują się w pierwszych kilkunastu bajtach i są odczytywane w pętli for, a ponieważ pierwsza informacja to ilość grafik to wiadomo ile razy ta pętla for odczytuje kombinacją [nazwazasobu][offset][rozmiar] i pętla kończy się przed danymi.
DobryZiom Opublikowano 3 Czerwca 2010 Opublikowano 3 Czerwca 2010 A wiesz chłopie że natchnąłeś mnie do napisania silniczka? :D Chyba zrobię taki paker/unpaker dla GM'a :) Pomyślę nad tym ;D
Lopez Opublikowano 4 Czerwca 2010 Autor Opublikowano 4 Czerwca 2010 W skrócie (ale w bardzo dużym) w Almorze jest tak: [ilosć grafik] [nazwazasobu][offset][rozmiar][ nazwazasobu][offset][rozmiar] [nazwazasobu][offset][rozmiar] [dane] [dane] [dane] I na początku tworzy się strukturę danych z offsetem pliku (pozycją) gdzie zaczynają się dane jakiegoś zasobu i ile bajtów nalezy wczytać. Te dane o zasobach znajdują się w pierwszych kilkunastu bajtach i są odczytywane w pętli for, a ponieważ pierwsza informacja to ilość grafik to wiadomo ile razy ta pętla for odczytuje kombinacją [nazwazasobu][offset][rozmiar] i pętla kończy się przed danymi. Dzięki wielkie. O to mi chodziło.
Rekomendowane odpowiedzi