Autor Wątek: [c# + xna] ładowanie zasobów "w locie"  (Przeczytany 1950 razy)

Offline gooziec

  • Użytkownik

# Grudzień 23, 2009, 22:50:17
Dopiero zacząłem przygodę z c# oraz XNA i napotkałem na następujący problem. Wiem, że aby ładować zasoby musze je niejako "na sztywno" dodać do projektu w miejscu do tego przeznaczonym. A czy jest (na pewno jest, tylko pytanie jaki) sposób na to aby ładować zasoby (np. pliki graficzne, modele, itp) w trakcie wykonywania programu z dowolnie wybranego (ale nie z góry ustalonego) miejsca na dysku?

Offline Mr. Spam

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

Offline nilphilus

  • Użytkownik
    • wordpress

# Grudzień 23, 2009, 22:54:18
Da, jest możliwość, ale jest to trochę długie niestety.

http://creators.xna.com/en-US/sample/winforms_series2

tutaj masz coś takiego, jakbyś dogrzebał się w jaki sposób to przyspieszyć, to byłbym wdzięczny ;-)

Offline Charibo

  • Redaktor

# Grudzień 23, 2009, 23:38:50
Ogólnie nie powineneś mieć celu w robieniu takiej maniany. Masz gdzieś błąd projektowy / błąd w założeniach / błąd w myśleniu. :)

Offline nilphilus

  • Użytkownik
    • wordpress

# Grudzień 24, 2009, 00:04:55
Ogólnie nie powineneś mieć celu w robieniu takiej maniany. Masz gdzieś błąd projektowy / błąd w założeniach / błąd w myśleniu. :)

 W przypadku edytora 'świata' jakbyś to rozwiązał? [RPG, ale sam edytor nie do konkretnego tytułu]

Offline Charibo

  • Redaktor

# Grudzień 24, 2009, 00:14:52
Ogólnie nie powineneś mieć celu w robieniu takiej maniany. Masz gdzieś błąd projektowy / błąd w założeniach / błąd w myśleniu. :)

 W przypadku edytora 'świata' jakbyś to rozwiązał? [RPG, ale sam edytor nie do konkretnego tytułu]
Na takie zastosowanie nie wpadłem, mój błąd. Myślałem, że mowa o grze. :)

Offline nilphilus

  • Użytkownik
    • wordpress

# Grudzień 24, 2009, 00:21:39
A nie wiem do czego to autorowi wątku, ale mi akurat jest potrzebne do tego ;-) 

Ale jak ładowanie modelu, skalowanie i takie tam bajery zajmują +- 10s to niestety... kiepsko to widzę, a jak tych modeli ma być 100 (100 * 10s = 1000/60 ~= 15) - daje to w przybliżeniu 15minut ładowania programu, kaplica...

Offline Charibo

  • Redaktor

# Grudzień 24, 2009, 00:25:13
Hm. A gdyby na pałę ominąć cały content processor? Znaczy - co tyle zajmuje, to zapewne kompilacja zasobów. Gdybyś NIE kompilował tych siatek, tylko wczytywał je jak normalne pliki w danym formacie, wrzucał sobie do VB/IB, renderował, a potem mapę zapisujesz jako jakiegoś .xml-ka, gotowego do skompilowania content processorem w grze? :)

Offline nilphilus

  • Użytkownik
    • wordpress

# Grudzień 24, 2009, 00:48:27
VB/IB?

Coś czuje że ma to sens, ale szczerze powiedziawszy, na razie nie rozumiem w pełni, a jedynie w jakimś tam drobnym ułamku.

Offline Asmodeusz

  • Użytkownik
    • Bogumił Wiatrowski: Blog

# Styczeń 12, 2010, 11:27:44
Jeśli i edytor, i gra są robione w XNA, kto zabrania użyć z kodu edytora contentprocessora dla wczytania i zbuforowania poszczególnych elementów? Później (gdy plik się zmieni) generujemy jego content na nowo, natomiast przy zapisie planszy kopiujemy skompilowane pliki w docelowe miejsce. I voila, działa ;-)