Многие структуры, используемые в Vulkan, имеют член sType, который определяет тип структуры, и член pNext для структур, специфичных для расширения. Этот ответ довольно хорошо объясняет, для чего нужен член sType и зачем он нужен. Он вкратце касается pNext, хотя я не уверен, что понимаю его смысл.
Если первым членом каждой структуры является sType, не могли бы расширения просто определять свои собственные типы структур, когда им нужны другие / дополнительные параметры?