Proces modyfikowania oprogramowania, aby jakaś jego część działała wydajniej lub zużywała mniej zasobów. Ogólnie oznacza to, że wykonuje się szybciej lub wymaga mniej zasobów.
Może to być łatwe w przypadku gier o ściśle określonym zakresie, ale pytanie dotyczy gier typu sandbox, w których gracz może tworzyć i budować wszystko . Możliwe techniki: Użyj pul pamięci z górnym limitem. Usuń obiekty, które nie są już potrzebne okresowo. Przydziel dodatkową pamięć na początku, aby można ją …
Dlaczego twórcy gier konsolowych używają dużych plików do przechowywania danych gry zamiast małych plików, takich jak na PC? Mniej strumieni w pamięci? Potrzebujesz dostępu do drzewa plików wiele razy? Inny powód?
Stworzyłem grę HTML5 Canvas i JS, która działa świetnie na komputerze stacjonarnym lub laptopie w Chrome (30 klatek na sekundę), ale na mobilnym Safari mam tylko około 8 klatek na sekundę. Czy są jakieś proste wskazówki lub sztuczki, aby zwiększyć szybkość klatek?
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 6 lat temu . Tworzę silnik gry przy użyciu OpenGL 3 i C ++ (i glfw do zarządzania oknami). …
Projektuję grę częściowo złożoną z eksploracji planet. Chcę dla nich użyć pseudolosowego generowania, regenerując się od określonego ziarna, gdy muszę je załadować, zamiast przechowywać każdy szczegół, który byłby zbyt ciężki. Tak więc po prostu zapiszę w pliku losowe ziarno i ewentualne modyfikacje wykonane przez gracza. Gracz musi widzieć planetę z …
Czy silnik fizyki jest w stanie zmniejszyć tę złożoność, na przykład grupując obiekty znajdujące się blisko siebie i sprawdzając kolizje w tej grupie zamiast ze wszystkimi obiektami? (na przykład odległe obiekty można usunąć z grupy, patrząc na jej prędkość i odległość od innych obiektów). Jeśli nie, to czy kolizja jest …
Jeśli po raz pierwszy zastanawiasz się nad tym pytaniem, sugeruję najpierw przeczytać część wstępnej aktualizacji poniżej, a następnie tę część. Oto synteza problemu: Zasadniczo mam silnik wykrywania i rozwiązywania kolizji z systemem podziału przestrzennego siatki, w którym ważna jest kolejność kolizji i grupy kolizji. Jedno ciało na raz musi się …
Czy można opisać „optymalny” (pod względem wydajności) układ dla pętli gier side-scroller 2D? W tym kontekście „pętla gry” pobiera dane od użytkowników, aktualizuje stany obiektów gry i rysuje obiekty gry. Na przykład posiadanie klasy podstawowej GameObject z hierarchią głębokiego dziedziczenia może być przydatne do konserwacji ... możesz zrobić coś takiego: …
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 2 lata temu . Istnieje wiele gier komputerowych, które mają (podobno) mniej więcej tę samą grafikę (z mapami wypukłymi, …
W „normalnym” etapie optymalizacji programowania biznesowego często pozostaje się do momentu, gdy naprawdę jest potrzebny. Oznacza to, że nie powinieneś optymalizować, dopóki nie jest naprawdę potrzebny. Pamiętaj, co powiedział Donald Knuth „Powinniśmy zapomnieć o małej wydajności, powiedzmy w około 97% przypadków: przedwczesna optymalizacja jest źródłem wszelkiego zła” Kiedy należy zoptymalizować, …
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 2 lata temu . Szukam dobrych zasobów edukacyjnych dla sprzętu graficznego (i powiązanego oprogramowania niskiego poziomu). Zasadniczo chcę dowiedzieć …
Kontekst Old Lucas Arts (era ScummVM) przygodowe gry graficzne typu „wskaż i kliknij” wykorzystywały obliczenia wstępne. Oto ogólny zarys techniki. Krok 1 Podłoga w każdym pokoju była podzielona na tak zwane „chodziki”, które były prawie równoważne węzłom w siatce nawigacyjnej, ale ograniczały się do kształtów trapezowych. Na przykład: ______ _____ …
Bawiąc się tworzeniem krajobrazów świata Minecraftish / Lego w Unity 3D (generowane proceduralnie krajobrazy wokselowe z kostkami), stwierdzam, że siatki stworzone dla tych krajobrazów zajmują dużo pamięci. Siatka składa się obecnie tylko z wierzchołków widocznych boków sześcianu. Zużycie pamięci w złożonym terenie może zająć 6 lub 7set megapikseli. Te siatki …
Czytałem na SO o natywnym renderowaniu flashowym vs budowaniu niestandardowego BitmapDatabufora ramek, a niektóre odpowiedzi były trochę sprzeczne, więc zastanawiałem się: Czy ogólnie najlepszą praktyką jest wybranie niestandardowej trasy bufora bitmapowego, czy też najlepiej pozostawić renderowanie w silniku flash? Jeśli używasz animacji wektorowych MovieClipw przeciwieństwie do duszków, czy to zmienia …
Część ze względu na optymalizację, część w celach edukacyjnych, odważę się zapytać: jak mogę najskuteczniej sprawdzić, czy punkt 2D Pznajduje się w obróconym prostokącie 2D XYZW, używając C # lub C ++? Obecnie używam algorytmu „punkt w trójkącie” znalezionego w książce Wykrywanie kolizji w czasie rzeczywistym i uruchamiam go dwukrotnie …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.