Jak wybrać najlepszy zestaw OpenGL® SDK?
Dostępnych jest wiele zestawów programistycznych (SDK) Open Graphics Library® (OpenGL®), choć wiele z nich jest specjalnie dostosowanych do określonego zastosowania. Twórcy kart graficznych i sprzętu zwykle dostarczają pakiet OpenGL® SDK, który jest dość kompletny w odniesieniu do próbek kodu i dokumentacji, ale który może również zawierać funkcje specyficzne dla sprzętu produkowanego przez firmę. Niektóre zestawy SDK koncentrują się na zapewnieniu łatwego dostępu do interfejsu programowania abstrakcyjnego OpenGL® (API), zwykle koncentrując się na określonym zastosowaniu, takim jak wizualizacja molekularna, fizyka lub sztuka interaktywna. Bardziej kompletny zestaw OpenGL® SDK może zawierać w pełni funkcjonalną platformę lub scenograf, który rozszerza funkcjonalność podstawowego interfejsu API, chociaż może również mieć bardziej stromą krzywą uczenia się niż prostszy zestaw SDK. Wiele zestawów OpenGL® SDK koncentruje się na zapewnieniu wysokiej wydajności grafiki i algorytmów, które najlepiej nadają się do animacji w czasie rzeczywistym, interaktywnych środowisk trójwymiarowych (3D) lub gier wideo.
Jednym ważnym rozróżnieniem jest to, że OpenGL® SDK różni się od OpenGL® API. Interfejs API to podstawowy interfejs wymagany do pisania i kompilowania aplikacji OpenGL®. OpenGL® SDK może być zbiorem narzędzi, kodu źródłowego, dokumentów i bibliotek, które mogą rozszerzyć funkcjonalność API, zawierać ulepszone sterowniki OpenGL® lub dostarczyć narzędzia ułatwiające korzystanie z API. Twórcy OpenGL® nie utrzymują żadnych oficjalnych zestawów SDK OpenGL®, więc wszystkie zestawy są pisane i opracowywane przez poszczególne społeczności, programistów lub firmy, niezależnie od Rady Przeglądu Architektury OpenGL® (ARB).
Najlepszy zestaw OpenGL® SDK będzie dostosowany do wiedzy programisty i nie będzie zbyt skomplikowany dla projektu. W przypadku prostych projektów, takich jak wyświetlanie wyników funkcji lub algorytmu, podstawowy zestaw matematyki SDK ogólnie byłby znacznie bardziej odpowiedni niż zestaw dostarczony przez producenta karty graficznej, aby skupić się na specjalnych funkcjach, takich jak renderowanie półprzezroczystych włosów. Podobnie w niektórych przypadkach najlepszym zestawem SDK może nie być zestaw SDK, ponieważ podstawowe możliwości rysunkowe OpenGL® są dostępne tylko z interfejsem API.
W przypadku dużych lub interaktywnych programów, które mogą wymagać dużej ilości ładowania modelu i manipulacji obrazem, może być wymagany pełniejszy pakiet OpenGL® SDK. Zarówno komercyjne, jak i open source SDK są dostępne na różnych poziomach złożoności, dzięki czemu wiele często używanych funkcji - takich jak konstruowanie obiektów bufora wierzchołków lub animacja synchronizacji - jest bardzo łatwo dostępna. Jedną z komplikacji związanych z zestawem SDK, który implementuje coś tak dużego jak kompletny scenariusz, jest jednak to, że będzie wymagał stromej krzywej uczenia się, ponieważ kod zestawu SDK może być bardzo daleki od podstawowych technik OpenGL®.
Narzędzia dostarczane z pakietem OpenGL® SDK mogą czasem być ważne dla usprawnienia rozwoju. Obejmują one programy do przeglądania, aby zobaczyć, jak będzie wyglądać scena lub model po renderowaniu za pomocą SDK lub wtyczek do często używanych programów do modelowania, co umożliwi eksportowanie plików bezpośrednio do formatów używanych przez SDK. Oprócz narzędzi, jedną z cech dobrego zestawu SDK będzie odpowiednia dokumentacja, a także społeczność, która jest dostępna, aby odpowiedzieć na pytania, jeśli się pojawią.