Jason. Cała informatyka w jednym miejscu!

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ą.

Logo języka C

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:

  1. SDL
  2. Allegro
  3. Orx
  4. raylib (polecam :D!)
  5. Tilengine

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++!

PODOBNE ARTYKUŁY