Autor Wątek: Serializacja - tworzenie gry na PC i uruchomienie jej na Androidzie  (Przeczytany 8747 razy)

Offline St4rKiller070

  • Użytkownik

# Luty 22, 2013, 13:26:01
Witam,
wpadł mi do głowy pewien pomysł:
napisałem sobie silnik do gier na Androida i chciałbym teraz zrobić do niego graficzny interfejs - tak żeby można było grę "wyklikać".
Postanowiłem że edytor będzie apletem dostępnym w przeglądarce. Tam będzie można stworzyć grę. Wszystkie dane będą zapisywane w odpowiednich klasach.
Gdy skończyłbym grę, za pomocą serializacji zapisałbym wszystkie potrzebne klasy do plików. Te pliki natomiast wczytałbym z powrotem w aplikacji na Androidzie.
Czy to mogłoby wypalić?

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline ΨΧΞ

  • Użytkownik
    • PsichiX Website

# Luty 22, 2013, 13:31:45
nad tym samym siedze i ja mam taki pomysl, by w edytorze finalny build zapisywac do assetow definicji i w grze tworzyc odpowiednie obiekty klas wedle assetow i aplikowac zapisane parametry do tych obiektow. gra moglaby sie neico wolneij ladowac, ale stawiam na potencjalna przenosnosc, gdzie silnik na innych platformach, opierajac sie o ten sam mechanizm, dzialalby tworzylby gre tak samo. oczywiscie moznaby tez pakowac te assety w jedna paczke typu "big resource", jak to robia duze firmy

Offline St4rKiller070

  • Użytkownik

# Luty 22, 2013, 13:34:16
a mój sposób? dałoby się tak zrobić?

Offline Kos

  • Użytkownik
    • kos.gd

# Luty 22, 2013, 13:50:59
Tzn chcesz serializować na JVM i deserializować na Dalviku?

Dziwne, ale szybki google mówi, że to podobno działa.

http://stackoverflow.com/questions/4784619/dalvik-to-java-se-communications

Offline St4rKiller070

  • Użytkownik

# Luty 22, 2013, 13:52:19
Skoro to jest dziwne, to jaki sposób uważasz za normalny? ^^

Offline Kos

  • Użytkownik
    • kos.gd

  • +2
# Luty 22, 2013, 14:01:36
Zapisywać obiekty do "ludzkiego" formatu, np. json, protobuf czy (tfu tfu) XML. Powinno się to dać zrobić z automatu podobnie jak "zwykłą" serializację.

Offline Xion

  • Moderator
    • xion.log

  • +1
# Luty 22, 2013, 14:22:04
@Kos: Jeśli wszyscy klienci są w Javie, to serializowanie nie jest aż takim głupim pomysłem. (Niektórzy, np. Joshua Blosch w Effective Java narzeka, że trudno je zrobić żeby działało dobrze z OOPem, dziedziczeniem i całym tym enterprise ustrojstwem, ale takimi narzekaniami raczej nie ma co się przejmować ;))

Natomiast jakiś językowo niezależny format jest wskazany jeśli istnieje chociaż niewielka szansa, że konsumenci będą też pisani w czymś innym.

Offline St4rKiller070

  • Użytkownik

# Luty 22, 2013, 14:27:30
Zapisywać obiekty do "ludzkiego" formatu, np. json, protobuf czy (tfu tfu) XML.
Hmm, niestety nigdy nie interesowałem się robieniem czegoś takiego, jeśli już to zawsze serializacja ^^
Który z tych wymienionych przez Kos'a formatów jest najbardziej odpowiedni? Który z nich jest w miarę najprostszy i pozwoli mi bez problemu odtworzyć grę na innych urządzeniach?

Offline ΨΧΞ

  • Użytkownik
    • PsichiX Website

# Luty 22, 2013, 14:34:37
ja stosuje XMLe, ale powoli mysle nad przepisaniem czesci na JSON, gdyz xmle duzych plikow sie dlugo parsuje

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Luty 22, 2013, 14:39:33
Cytuj
Który z nich jest w miarę najprostszy i pozwoli mi bez problemu odtworzyć grę na innych urządzeniach?
Zwykły plik tekstowy.

Offline Xion

  • Moderator
    • xion.log

  • +3
# Luty 22, 2013, 15:19:18
Zwykły plik tekstowy.

Każdy z wymienionych formatów to "zwykły plik tekstowy", więc nie widzę, w jaki sposób to cokolwiek wyjaśnia.

Z tych wymienionych prawdopodobnie wciąż XML jest najszerzej wspierany pod względem liczby bibliotek do parsowania, ale JSON wiele mu nie ustępuje. Jeśli mówimy o platformach PC i Android, to tym bardziej możemy liczyć na istniejące parsery.

Osobiście zdecydowanie preferuje JSON-a, bo pliki w tym formacie są nie tylko machine-readable, ale i human-readable :)

Offline Veldrin

  • Użytkownik

# Luty 22, 2013, 15:43:13
Ja również polecam jsona.

Sam w projektach na Androida stosuję ten format do takich rzeczy jak opisy scen, akcji, zarządzania zasobami itp.

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Luty 22, 2013, 16:00:17
Cytuj
Każdy z wymienionych formatów to "zwykły plik tekstowy", więc nie widzę, w jaki sposób to cokolwiek wyjaśnia.
Nieprawda. Każdy z tych formatów to plik tekstowy + masa dodatkowych reguł. Ja sugeruję, żeby te reguły wymyśleć samemu jak najprościej.

Offline Kos

  • Użytkownik
    • kos.gd

  • +3
# Luty 22, 2013, 16:42:26
Czyli sugerujesz, by robić od nowa coś, co już od dawna jest (i jest wszędzie zaimplementowane). A takiego jsona od "jak najprościej" dzieli para klamerek.

Offline koirat

  • Użytkownik

# Luty 22, 2013, 17:28:25
Ktoś wymyślił i ustandaryzował te formaty nie bez przyczyny. Też bym obstawiał za XML albo JSON, sam pewnie wybrał bym XML.