Korzystam z biblioteki programowania gier, która wymaga OpenGL 2.0 i mam problemy z jego uruchomieniem. Mod na forum tej biblioteki zapytał, czy moja maszyna obsługuje OpenGL 2.0, i nie mam pojęcia, jak to rozgryźć. Jakieś pomysły?
Korzystam z biblioteki programowania gier, która wymaga OpenGL 2.0 i mam problemy z jego uruchomieniem. Mod na forum tej biblioteki zapytał, czy moja maszyna obsługuje OpenGL 2.0, i nie mam pojęcia, jak to rozgryźć. Jakieś pomysły?
Odpowiedzi:
Obawiam się, że będziesz musiał otworzyć linię poleceń pierwszego dnia Linuksa (nie martw się, mi się też przydarzyło). Aplikacje -> Akcesoria -> Terminal. Wpisz lspci
i naciśnij Enter. Lista zawiera wszystkie elementy podłączone przez PCI lub PCI express, w tym kartę graficzną. Czytaj listę, dopóki nie zobaczysz czegoś o ATI lub nVidii lub jednym z modeli Intela.
Następnie przejdź do tabel porównawczych Wikipedii dla kart graficznych, aby dowiedzieć się, jaką wersję OpenGL obsługuje Twoja karta.
Karty graficzne nVidia - tutaj musisz kliknąć stronę, aby uzyskać poprawną generację, np. seria GeForce 7, jeśli masz GeForce 7600 GS
Pamiętaj, że mówią one tylko, którą wersję obsługuje dany sprzęt. Aby móc uruchomić biblioteki OpenGL, potrzebujesz również sterownika, który je obsługuje. Istnieje wiele sterowników wideo dla każdej generacji układów dla Linuksa. Ubuntu jest dostarczane z wersjami open source, które nie są złe, ale ogólnie o krok za zastrzeżonymi sterownikami wydanymi przez producentów kart graficznych (często nazywanymi binary drivers
lub proprietary drivers
). Jeśli okaże się, że Twój sprzęt obsługuje OpenGL 2.0 (co większość robi), możesz wypróbować zastrzeżone sterowniki. Nazywa się je nvidia-current dla nvidia i fglrx dla ATI. W przypadku Intela dostępne są tylko sterowniki typu open source.
Pierwszym narzędziem, którego używasz, powinno być prawdopodobnie lspci, ale jeśli jesteś zainteresowany bardziej szczegółowymi informacjami, możesz użyć lshw .
Przykład z mojego laptopa:
prompt>lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02)
01:00.0 VGA compatible controller: nVidia Corporation Device 0df0 (rev a1)
prompt>
i odpowiedni wyciąg z lshw:
*-pci:0
description: PCI bridge
product: Core Processor PCI Express x16 Root Port
vendor: Intel Corporation
physical id: 1
bus info: pci@0000:00:01.0
version: 02
width: 32 bits
clock: 33MHz
capabilities: pci pm msi pciexpress normal_decode bus_master cap_list
configuration: driver=pcieport
resources: irq:42 ioport:2000(size=4096) memory:fb000000-fbffffff ioport:f0000000(size=167772160)
*-display
description: VGA compatible controller
product: nVidia Corporation
vendor: nVidia Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list
configuration: driver=nouveau latency=0
resources: irq:16 memory:fb000000-fbffffff memory:f0000000-f7ffffff memory:f8000000-f9ffffff ioport:2000(size=128)
*-display
description: VGA compatible controller
product: Core Processor Integrated Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 02
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:47 memory:fd000000-fd3fffff memory:d0000000-dfffffff ioport:1800(size=8)