Skocz do zawartości

FPS-y.


Ghost

Rekomendowane odpowiedzi

nawwalałeś obiektów, tilesów, particli i innych dupereli i teraz się dziwisz.

 

1. GM krztusi się przy dużej liczbie obiektów - deaktywuj obiekty spoza viewów

2. ogranicz liczbę particli i tile'ów

3. zoptymalizuj kod w obiektach

 

możliwe też, że to wina twojej dupnej karty graficznej, ale najpierw zoptymalizuj grę.

Odnośnik do komentarza
Udostępnij na innych stronach

zastosować podstawowe metody optymalizacji gry. sama dezaktywacja daje dobre rezultaty

Odnośnik do komentarza
Udostępnij na innych stronach

Niezbyt się znam, jestem nieoptymalny ;p

 

Weź zrób coś a'la

GML
if distance_to_object(gracz)<700

{

instance_deactivate_object

}

else

{

instance_activate_object

}

 

PS. w opcjach ustaw Game Process Prioryty na High, podwyższy troszkę moc :) reszta się może ciąć, ale jak tworzysz to reszta w zasadzie cię nie interesuje

 

Fervi

Odnośnik do komentarza
Udostępnij na innych stronach

Niezbyt się znam, jestem nieoptymalny ;p

 

Weź zrób coś a'la

GML

if distance_to_object(gracz)<700

{

instance_deactivate_object

}

else

{

instance_activate_object

}

 

 

PS. w opcjach ustaw Game Process Prioryty na High, podwyższy troszkę moc reszta się może ciąć, ale jak tworzysz to reszta w zasadzie cię nie interesuje

 

Fervi

 

Tylko to twoje ala nie jest taki proste

 

po pierwsze kod jest całkowicie zły i nie ma prawa działać,dlatego że obiekt zdezaktywowany nie wykonuje kodu , czyli sam się nie może aktywować po dezaktywacji ,następna sprawa zapomniałeś dodać argumentu w nawiasach , a jeżeli byś się miał upierać co do tego kodu to nawet jakbym go wstawił do kontrolera gry (obiektu zajmującego się różnymi stałymi funkcjami),to też nie zadziała

 

najpierw sam przetestuj zanim zaczniesz wprowadzać ludzi w błąd

 

masz tu przykład kodu który prędzej zadziała (z GM'owego helpa)

w stepach np. gracza

GML
{

instance_activate_all();

instance_deactivate_region(view_xview[0],view_yview[0],

view_wview[0],view_hview[0],false,true);

}

 

edit: Hmm dwie nowe odpowiedzi w poście coś za długo mi zeszło to pisanie :P

Odnośnik do komentarza
Udostępnij na innych stronach

Tylko to twoje ala nie jest taki proste

 

po pierwsze kod jest całkowicie zły i nie ma prawa działać,dlatego że obiekt zdezaktywowany nie wykonuje kodu , czyli sam się nie może aktywować po dezaktywacji ,następna sprawa zapomniałeś dodać argumentu w nawiasach , a jeżeli byś się miał upierać co do tego kodu to nawet jakbym go wstawił do kontrolera gry (obiektu zajmującego się różnymi stałymi funkcjami),to też nie zadziała

 

najpierw sam przetestuj zanim zaczniesz wprowadzać ludzi w błąd

 

masz tu przykład kodu który prędzej zadziała (z GM'owego helpa)

w stepach np. gracza

GML
{

instance_activate_all();

instance_deactivate_region(view_xview[0],view_yview[0],

view_wview[0],view_hview[0],false,true);

}

 

edit: Hmm dwie nowe odpowiedzi w poście coś za długo mi zeszło to pisanie :P

Hm, no wiesz... Niby działa, ale np. spawny się nie spawnują, czat "zanika"... Na dodatek to jest multiplayer :P Więc zostanę tylko przy tamtym...

Odnośnik do komentarza
Udostępnij na innych stronach

instance_activate_object( spawn );

I tak do wszystkich obiektów, które ciągle mają być aktywne. Wrzucić po instance_deactivate_all();

 

GML
{

instance_deactivate_all( true );

instance_activate_region( view_xview[0], view_yview[0], view_xview[0] + view_wview[0], view_yview[0] + view_hview[0], true, true );

instance_activate_object( obiekt );

...

}

Odnośnik do komentarza
Udostępnij na innych stronach

instance_activate_object( spawn );

I tak do wszystkich obiektów, które ciągle mają być aktywne. Wrzucić po instance_deactivate_all();

Nie, to nie idzie, bo i tak instance_deactivate_all będzie wykonywane pierwsze. Próbowałem.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...