• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Silnik graficzny... Jak się do tego zabrać (jakie biblioteki itp.) ?

Object Storage Arubacloud
0 głosów
291 wizyt
pytanie zadane 13 grudnia 2015 w C i C++ przez Michał Gibas Pasjonat (19,610 p.)
Witam!

Od dłuższego czasu uczę się wielu bibliotek graficznych 3D i 2D... Planuję obecnie z moją ekipą złożoną z kilku kolegów programistów stworzenie silnika graficznego pod gry (2D lub 3D). Jakie biblioteki graficzne mi polecacie? Obecnie znam SDL, OpenGL i trochę SFML'a.

2 odpowiedzi

+2 głosów
odpowiedź 13 grudnia 2015 przez adrian17 Ekspert (344,860 p.)
wybrane 13 grudnia 2015 przez Michał Gibas
 
Najlepsza
Jeśli chcecie robić 3D to za bardzo nie ma innej opcji niż użycie samego OpenGLa.

SDL lub SFML wciąż się przydzadzą, ale nie jako biblioteki graficzne, a jako narzędzie do tworzenia i zarządzania oknem (co w zasadzie jest ich podstawowym zastosowaniem).
0 głosów
odpowiedź 13 grudnia 2015 przez MetGang Nałogowiec (34,360 p.)
Póki co lepiej by było 2D ogarnąć. Sam SFML w sobie jest niejako kombajnem różnych bibliotek/modułów. Jeśli znasz/znacie OpenGL na dobrym poziomie możecie go wykorzystać do renderu, a SFMLa np. do obsługi wydarzeń. Osobiście proponuję zrobić coś co znacznie ułatwi i przyśpieszy pracę.

Przykład z mojej bibliotek: Zamiast używać jakiejś tam metody Keyboard::isKeyPressed(sf::Keyboard::A) (czy jakoś tak) z dodatkowym boolem blokującym ciągłe trzymanie (żeby po przytrzymaniu klawisza if wykonał się tylko raz) mam własną, prostą funkcję IOS.Check(Key::A(Pressed));.

Grunt żeby skupić się na kwiestiach I/O (coś w stylu jak wyżej pokazałem), uproszczona obsługa wydarzeń, render wielowarstwowy z shaderami (OpenGL Shading Language - GLSL, daje ogromne możliwości), jakaś lepsza konsola debugerska (nie ta cmd, tylko wbudowana w okno gry), manager zasobów (np. spr.setTexture(RES.GetTexture("id_tekstury");), ogromna ilość funkcji pomocniczych (rand, length(point1,point2), ToString, ToInt, parsery itp). I ważna kwiestia: Jeśli już coś robicie, to róbcie to porządnie i przemyślanie, bo refaktorycja (pisanie od nowa) może być pracochłonne i obniżające morale.

Podobne pytania

0 głosów
1 odpowiedź 428 wizyt
pytanie zadane 17 listopada 2015 w C i C++ przez Izzz Nowicjusz (170 p.)
0 głosów
1 odpowiedź 233 wizyt
pytanie zadane 4 kwietnia 2018 w Sprzęt komputerowy przez niezalogowany
0 głosów
1 odpowiedź 270 wizyt
pytanie zadane 1 czerwca 2016 w Urządzenia mobilne przez DragonCoder Nałogowiec (36,500 p.)

92,555 zapytań

141,402 odpowiedzi

319,544 komentarzy

61,939 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...