Po przyjrzeniu się trochę optymalizacji, odkryłem (dosłownie wszędzie), że zbyt wcześnie optymalizacja gry wydaje się być powszechnie uznanym grzechem. Naprawdę tego nie rozumiem, czy nie byłoby niewiarygodnie trudno zmienić niektóre podstawowe struktury gry na końcu, zamiast rozwijać je po raz pierwszy z myślą o wydajności? Dostaję to, że czekanie, aż …
W mojej najnowszej grze, którą tworzę, możesz dowolnie pokroić obiekt 2D, co pokazano na tym gifie: Możesz w sposób ciągły pokroić na setki lub tysiące kawałków. Nie powoduje to dużego opóźnienia, ponieważ są one zawsze w stanie spania, ale występuje problem, gdy je poruszasz. Nie jestem do końca pewien, jak …
Czy powinienem mieć osobne wątki do renderowania i logiki, a nawet więcej? Jestem świadomy ogromnego spadku wydajności spowodowanego synchronizacją danych (nie mówiąc już o jakichkolwiek blokadach mutex). Zastanawiałem się, czy nie podejść do tego ekstremalnie i zrobić nici dla każdego możliwego podsystemu. Ale martwię się, że to też może spowolnić. …
Natknąłem się na to pytanie, projektując grę wideo w języku C #. Jeśli weźmiemy pod uwagę gry takie jak Battlefield lub Call of Duty , setki, a nawet tysiące pocisków lecą w tym samym czasie. Zdarzenia są uruchamiane w sposób ciągły, a z tego, co wiem, pochłania to dużą moc …
Pochodzę ze środowiska programistycznego. Podczas cyklu tworzenia oprogramowania zwykle koncentrujemy się na funkcjonalnościach i działającym produkcie. Pod koniec programowania zaczynamy optymalizować kod i zwiększać wydajność. Teraz pytanie brzmi: czy musimy myśleć o wydajności w każdym wierszu kodu przy tworzeniu gier? W ten sposób czuję, że brakuje nam wzorów i czystego …
Zdaję sobie sprawę z wydajności osiągniętej podczas mieszania podpisanych int z floatami. Czy jest gorsze mieszanie nieoznaczonych int z pływakami? Czy jest jakieś trafienie podczas miksowania podpisanego / niepodpisanego bez pływaków? Czy różne rozmiary (u32, u16, u8, i32, i16, i8) mają jakikolwiek wpływ na wydajność? Na jakich platformach?
Na początku OpenGL i DirectX rozmiary tekstur musiały być potęgami dwóch. Oznaczało to, że interpolacja wartości zmiennoprzecinkowych może być wykonana bardzo szybko, przy użyciu przesunięcia i tym podobnych. Od czasu OpenGL 2.0 (i wcześniejszych, poprzez rozszerzenie) obsługiwane są nie-moc dwóch wymiarów tekstury. Czy potęga dwóch tekstur ma przewagę wydajności na …
Piszę własny klon Minecrafta (również napisany w Javie). Teraz działa świetnie. Dzięki odległości oglądania wynoszącej 40 metrów mogę z łatwością osiągnąć 60 FPS na moim MacBooku 8,1. (Intel i5 + Intel HD Graphics 3000). Ale jeśli ustawię odległość oglądania na 70 metrów, osiągnę tylko 15-25 FPS. W prawdziwym Minecrafcie mogę …
Tworzę prostą grę 2D opartą na kafelkach, która wykorzystuje algorytm wyszukiwania ścieżki A * („gwiazda”). Wszystko działa poprawnie, ale mam problem z wydajnością wyszukiwania. Mówiąc najprościej, kiedy klikam nieprzejezdną płytkę, algorytm najwyraźniej przechodzi przez całą mapę, aby znaleźć drogę do nieprzejezdnej płytki - nawet jeśli stoję obok niej. Jak mogę …
Zamknięte. To pytanie jest nie na temat . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było tematem dotyczącym wymiany stosów opracowywania gier. Zamknięte 4 lata temu . Przyszło mi do głowy, że podczas gdy, na przykład, silnik gry, pracuje jednocześnie przez wiele osób, jak można uniknąć …
Jak radzą sobie z nimi gry takie jak Minecraft, a właściwie każda gra MMO z przetwornikami? Powiedzmy, że teren odradza 3 krople „brudu” za każdym razem, gdy kopiesz wspomniany teren. Powiedzmy, że każdy element ma animację obrotu obliczoną dla każdej klatki. Jeśli liczba odbiorników na świecie będzie bardzo wysoka, byłby …
Rozumiem, że czasami potrzebujesz właściwości, takich jak: public int[] Transitions { get; set; } lub: [SerializeField] private int[] m_Transitions; public int[] Transitions { get { return m_Transitions; } set { m_Transitions = value; } } Ale mam wrażenie, że przy tworzeniu gier, chyba że masz powód, aby zrobić inaczej, wszystko …
Tworzę grę w stylu low poly. Mam teren z odrobiną wody i chcę dużo drzew; W tej chwili mam 10 000 drzew. Każde drzewo składa się z nie więcej niż 200 trójkątów, więc nie są zbyt obciążające. Głównym problemem jest to, że są jeziora, a jeziora są dość duże. Po …
Właśnie zaimplementowałem obsługę wielowątkowego wprowadzania danych w silniku gry, w którym kod odpytujący system operacyjny w celu zebrania danych wejściowych i znaczników czasu znajduje się w osobnym wątku, a każda ramka w głównym wątku zjadam zebrane dane wejściowe do logiczny czas gry. Wszystko działa, ale ta konfiguracja zużywa 100% mojego …
Opracowując dość prostą grę podobną do RTS, zauważyłem, że moje obliczenia odległości miały wpływ na wydajność. Przez cały czas sprawdzane są odległości, aby dowiedzieć się, czy jednostka znajduje się w zasięgu celu, czy pocisk osiągnął swój cel, czy gracz przejechał podbicie, kolizję itp. Lista jest długa i sprawdza często stosuje …
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.