Poddajemy analizie następny język. Wczoraj opisywałem tworzenie gier w Pythonie, a teraz stwierdzam jak wygląda tworzenie gier w C! Czystym C, nie C++.
TWORZENIE GIER W C. INFORMACJE OGÓLNE
Język C powstały we wczesnych latach .70 przez Dennisa Ritchiego do dziś jest wykorzystywany w aplikacjach, analizach i jak najbardziej, w grach. Takie hity jak "Quake" (1996) czy "Return to Castle Wolfenstein" (2001) zostały napisane w języku C :D. Łatwa przenośność kodu, dostęp do niskopoziomowych operacji, najszersze wsparcie ze strony społeczności. Czego chcieć więcej? Co prawda, współcześnie częściej wybierany jest C++ do pisania programów i gier, jak również dużo częściej spotykany w oprogramowaniach przeznaczonych do tworzenia gier (np. "Unreal Engine"), natomiast język C również jest pomysłem doskonałym. Jeżeli stawiamy na pierwszym miejscu kompilację na wiele platform oraz błyskawiczne działanie procesora poprzez operacje na wskaźnikach, patrzymy w tej chwili na język idealny do takich zadań. Tworzenie gier w C sprawi, że nie będziemy się musieli martwić wydajnością.
![]() |
Język C powstały w latach .70 jest niezastąpionym kandydatem do tworzenia zarówno prostych, jak i bardzo zaawansowanych gier.
Źródło: Wikimedia
LISTA PROGRAMÓW
Sam język C pozbawiony obiektowego paradygmatu nie posiada tak wiele programów czy framework'ów jak jego "bliźniak" z dwoma plusami na końcu, aczkolwiek obecnie można znaleźć trochę narzędzi, które wspierają ten język. Trzeba sobie uzmysłowić, że na język C znajdziemy więcej bibliotek niż "pełnych" programów. Pamiętaj również, że tworzenie gier w C jest dużym wyzwaniem dla człowieka z powodu manualnego zarządzania pamięcią. Oto krótka lista darmowych narzędzi do tworzenia gier:
GARŚĆ PORAD
Jeśli decydujemy się na tworzenie gier w C, to znowu mam kilka porad na początek:
- Język C (jak również C++) nie jest przeznaczony dla amatorów. Aby umiejętnie się nim posługiwać, wymagana jest znajomość manualnego zarządzania pamięcią. Każda biblioteka / framework korzysta ze wskaźników w większym lub mniejszym zakresie.
- Kompilator nie uchroni przed wszystkimi błędami w kodzie. Program może zostać uruchomiony, ale może posiadać błędy podczas funkcjonowania programu najczęściej związane z niepoprawnym alokowaniem pamięci. Mało tego, język C nie posiada zdolności "identyfikowania" długości tablicy czy listy. Musimy o to zadbać samodzielnie. Właśnie dlatego tworzenie gier w C jest dużym wyzwaniem dla człowieka.
- Każda biblioteka jest zdolna do wieloplatformowego eksportu, natomiast konieczne jest zaopatrzenie się w odpowiednie narzędzia. Android na przykład będzie potrzebował pakietu "Android NDK", a kompilacja do HTML będzie dostępna tylko poprzez "Emscripten" albo "WebAssembly". Należy zajrzeć do dokumentacji wykorzystywanej biblioteki i kierować się podawanymi wskazówkami co trzeba wykonać.
- Wybór architektury systemowej (32 lub 64 bity) w tym języku MA znaczenie! Nie tylko powoduje to dylemat niekompatybilności dla systemów z powodu niewłaściwej architektury, ale także może zmienić zakresy niektórych typów danych, przez co na jednej wersji będzie chodzić perfekcyjnie, a na drugiej może dojść do przekroczenia zakresu liczb całkowitych!
Tak się sprawy mają. Narzędzi za dużo nie ma, natomiast tworzenie gier w C jest rewelacyjnym pomysłem do pisania gier wszelakiego rodzaju. Klikając tutaj, możecie zobaczyć jak opisuję ten sam język rozbudowany o paradygmat obiektowy, C++!