Vulkan API Wszystko, co musisz wiedzieć

  • Vovich Antonovich
  • 0
  • 2192
  • 207

Jeśli lubisz być na bieżąco z najnowszymi technologiami, na pewno słyszałeś o Vulkan. Vulkan API to najnowsze i największe z graficznych API, ogłoszone przez Khronos Group, czyli ludzi stojących za obecnym standardem branżowym OpenGL. Nazwa projektu Vulkan została oficjalnie ogłoszona na konferencji Game Developers w 2015 roku, a pierwsza wersja API została uruchomiona w lutym 2016. Nowe API ma na celu przeniesienie grafiki gry na wyższy poziom, więc jeśli jesteś zainteresowany szczegóły, jesteśmy tutaj, aby Ci to dać.

Omawiamy, czym jest Vulkan API, czym różni się od swojego poprzednika OpenGL oraz jak Vulkan API może zmienić sposób, w jaki gry i inne aplikacje wymagające intensywnej grafiki są rozwijane w najbliższej przyszłości. Czytaj dalej, aby poznać ten ekscytujący rozwój w świecie renderowania i grafiki.

Co to jest Vulkan API?

Kilka lat temu AMD pokazało Mantle, rozwijające się API, które było przeznaczone dla gier 3D i chociaż okazało się obiecującym rozwiązaniem do renderowania grafiki, AMD zabiło projekt. Następnie AMD przekazało Khronos Group komponenty Mantle API w celu opracowania standardowego API do renderowania. Rezultatem jest nowy interfejs API Vulcan.

Vulkan API to API renderujące o niskim narzutie, które może lepiej wykorzystywać wielordzeniowe procesory, które są obecnie wszechobecne, a także zapewni programom bardziej bezpośredni dostęp do procesora i GPU systemu. Jest również agnostykiem systemu operacyjnego. Oznacza to, że aplikacje korzystające z Vulkan API będą łatwo przenośne. 

Będąc zapalonymi graczami i entuzjastami gier, postanowiliśmy przyjrzeć się przyszłości, w jaki sposób gry będą wkrótce opracowywane i jak (jeśli w ogóle) poprawią one nasze wrażenia z gry..

cechy

Vulkan API ma całkiem sporo funkcji, które sprawiają, że jest inny i lepszy niż jego poprzednik OpenGL:

1. API Vulkan próbuje zrównoważyć obciążenia przetwarzania w każdym rdzeniu w środowisku wielordzeniowym. Oznacza to, że każdy rdzeń procesora jest używany maksymalizacja wydajności.

  • Spowoduje to bardzo zauważalną różnicę w renderowaniu grafiki, która wymaga wielu wywołań rysowania.
  • W przypadku starszych interfejsów API często procesor jest wąskim gardłem. Jednak Vulkan tak dobrze wykorzystuje wielordzeniowe procesory, że jest bardziej prawdopodobne, że zamiast tego w GPU zostanie znalezione wąskie gardło.

2. Vulcan API będzie oferować bezpośredni dostęp do GPU, co pozwoli uniknąć niepotrzebnych kosztów związanych z dostępem do GPU w celu pobrania wywołań i innych funkcji GPU.

  • Oznacza to, że cięższe gry nie będą teraz wymagały tak dużego obciążenia procesora, jak obecnie. Również sterowniki będą odgrywać mniejszą rolę w zapewnianiu dostępu do GPU, dzięki czemu przesyłanie informacji będzie znacznie szybsze.

3. Interfejs API jest również zaprojektowany całkowicie między platformami.

  • Koniec z rozgałęziającymi się interfejsami API dla telefonów komórkowych, komputerów stacjonarnych i konsol. Vulkan API będzie taki sam na każdym urządzeniu z kompatybilnym GPU.

4. Podczas gdy OpenGL ukrywał użycie pamięci i synchronizację GPU, Vulkan ujawnia to i daje programistom jeszcze lepsze kontrolę nad GPU i jak jest używany.

  • Vulkan pozwala programistom kontrolować, w jaki sposób GPU formatuje tekstury, zarządza pamięcią i przeprowadza synchronizację.
  • Jednak nadal ukrywa wystarczająco dużo informacji, aby je zachować kompatybilność między platformami.

5. Vulkan używa Język pośredni SPIR-V do obliczeń równoległych i grafiki. SPIR-V, podobnie jak jego poprzednicy, SPIR1.2 i SPIR2.0, został opracowany przez grupę Khronos, z tą różnicą, że SPIR-V nie wykorzystuje LLVM. SPIR-V pozwala Vulkan mieć wspólny kompilator front-end na każdej platformie. Programiści nie muszą również dostarczać jądra, kodu modułu cieniującego, a implementacja sterownika jest uproszczona.

Jak Vulkan może pomóc nam jako użytkownikom końcowym

Vulkan API, gdy zostanie wdrożony w pełni przez programistów, może drastycznie poprawić wrażenia z gry użytkownika końcowego (to ty i ja!). Myśleć grafika na poziomie konsoli na urządzeniach mobilnych, może nawet grafika komputerowa dla flagowych flagowców z najwyższej półki z kompetentnymi procesorami!

1. Ponieważ większość mobilnych SoC w dzisiejszych czasach jest również wielordzeniowych, Vulkan to zrobi maksymalnie wykorzystać procesory możliwe, dzięki czemu gry są płynniejsze (wyższy FPS).

2. Ponadto, ponieważ Vulkan zapewnia niski koszt dostępu do GPU urządzenia, oznacza to, że gry będą teraz mogły znacznie skrócić czas potrzebny na uzyskanie dostępu do zasobów GPU. Po raz kolejny przekłada się to na lepszą grafikę przy wyższych klatkach na sekundę maksymalne wykorzystanie możliwości GPU.

3. Chociaż możliwości wieloplatformowe, ułatwiające przenoszenie gier, mogą nie mieć bezpośredniego wpływu na Ciebie jako użytkownika końcowego, oznacza to, że Twoja ulubiona gry i aplikacje intensywnie korzystające z grafiki mogą być dostępne na prawie każdej platformie tam. Możliwości są nieograniczone i ograniczone tylko naszą wyobraźnią.

4. Gry też będą w stanie zapewnić płynniejsza wydajność upewniając się, że GPU zwraca większą uwagę (czytaj: przydziela więcej pamięci i daje pierwszeństwo) rzeczom, które są natychmiast widoczne dla użytkownika, dzięki czemu gra jest bardziej odporna na opóźnienia i spadki klatek.

Opcje dla programistów

Chociaż niskopoziomowe API dla grafiki o niskim nakładzie pracy jest niewątpliwie dobrym pomysłem, nie jest oczywistą atrakcją dla każdego programisty, zwłaszcza dla nowych. Programowanie na niższym, bliższym poziomie sprzętowym wymaga nieco większej sprawności niż programowanie na wyższym poziomie, który jest bardziej abstrakcyjny. Nie jest to w żaden sposób szokujące. Jest to dość oczywiste i właśnie dlatego programiści będą mieli trzy różne opcje korzystania z Vulkan w swoich projektach programistycznych.

1. Użyj bezpośrednio API Vulkan

  • Zapewni to najniższy poziom dostępu do sprzętu i oczywiście nie będzie dla każdego. Jednak poziom ten można wykorzystać do tworzenia narzędzi benchmarkingowych dla innych aplikacji opracowanych przy użyciu Vulkan.

2. Użyj bibliotek

  • Prawdopodobnie najbardziej opłacalna opcja dla programistów, którzy przechodzą z OpenGL na Vulkan.
  • Większość bibliotek będzie typu open source, więc programiści, którzy mają doświadczenie w programowaniu przy użyciu OpenGL, mogą stosunkowo łatwo próbować przenosić swoje aplikacje OpenGL do API Vulkan, zamiast przeprowadzać całkowity przegląd lub zaczynać od zera.

3. Użyj silników gier zoptymalizowanych za pomocą Vulkan

  • Jesteśmy pewni, że to właśnie w tym miejscu znajdzie się większość deweloperów. Silniki gier są projektowane i rozwijane przez uznanych, doświadczonych zawodowców w branży i mogą być z łatwością używane przez deweloperów (zarówno doświadczonych, jak i początkujących) do tworzenia gier wykorzystujących te zalety. oferowane przez Vulkan API.
  • Deweloperzy tacy jak Epic Games (Unreal Engine) i Unity (Unity Engine) już ogłosili wsparcie dla Vulkan w swoich nadchodzących silnikach, a wielu innych ogłosiło plany, które będą śledzić.

ZOBACZ TEŻ: Zrozumieć APFS: nowy system plików firmy Apple

Podekscytować się!

Na wypadek, gdyby artykuł Cię nie przekonał… podekscytuj się! Teraz! Vulkan zapowiada się na przełomowy rozwój w graficznych interfejsach API, który poprawi nasze życie w grach. Istnieją już filmy porównujące wydajność Vulkan i OpenGL, a wyniki są - po prostu - niesamowite. Jeśli te filmy są wskazówką, przygotuj się, aby doświadczyć niesamowitej jakości grafiki wszędzie, w tym na telefonach komórkowych, a wszystko to dzięki pojawieniu się Vulcan API!

Więc co myślisz o Vulkan? Czy myślisz, że będzie to duża poprawa w stosunku do obecnego standardu OpenGL? Daj nam znać w sekcji komentarzy poniżej.




Jeszcze bez komentarzy

Poradniki dotyczące kupowania gadżetów, technologie, które mają znaczenie
Publikujemy szczegółowe poradniki dotyczące zakupu sprzętu, tworzymy ciekawe listy najlepszych produktów na rynku, opisujemy aktualności ze świata technologii