To určitě ne. Ta složitost totiž není v jazyce. V jiných jazycích vypadá GPU programování +- stejně hnusně, protože je to furt variace na téma "Vyplním 250 parametrů, strčím příkaz do fronty".
A jeden zásadní rozdíl oproti programování v ASM je ten, že tady už naprosto není možné udržovat iluzi toho, že se nějaké instrukce vykonávají jedna po druhé. :)
Naprosto souhlasím s uetoyo a Jiřím Havlem!
A ještě doplním k celé diskuzi: Být blízko železa má své nevýhody, tedy mnoho kódu, jak již zmíněno. Ale má to i své výhody: máte perfektní kontrolu nad věcmi. Máte je doslova ve svých rukou. Dokonce si můžete i spočítat kdy se začíná rendrovat nový snímek na obrazovku. Když víte, že váš snímek se rendruje 6.6ms a snímky se přepínají po 16.6ms, můžete začít rendrovat 10ms po přepnutí předchozího snímku, nebo raději 8 a dát si dvě milisekundy rezervu. Budete tak mít nejnižší možnou latenci. Těsně před rendrováním pak můžete naposledy přečíst pohyb myši a případně ještě pootočit kamerou, takže budete mít nejrychlejší možnou odezvu kamery. Nejsem si vůbec jist, jak by se podobná věc dala implementovat v OpenGL. Nějaký guru by možná nějaký přístup našel (?), ale ve Vulkan to máme tak trochu v ceně zájezdu a "snadno" si to naprogramujeme dle vlastní potřeby.
Co se týká glfw zmíněné v této diskuzi a SDL2 zmíněné ve kterési dřívější diskuzi, bude-li zájem, mohu zvážit doplnit i tyto platformy. Sám potřebuji integrovat Vulkan rendering do Qt, takže můžeme zvážit i tuto platformu. Filozofie tohoto tutoriálu je neomezit člověka na konkrétní knihovnu (glfw, SDL2,...), ale dát mu svobodu použít, co se mu zlíbí, co potřebuje nebo co mu nejvíce vyhovuje. Beru tyto díly mimo jiné také jako "zásobárnu" kódu pro všechny, kteří pracují na různých platformách, takže si vezmou právě ten kód, který potřebují.