public void Dispose()
        {
            semaphores?.Dispose();
            submitPipelineStages?.Dispose();
            threadCommandPools?.Dispose();
            EnabledExtensions?.Dispose();
            depthStencil?.Dispose();
            startOfFrameRenderPass.Dispose();
            renderPass.Dispose();
            presentRenderPass.Dispose();
            singlePass.Dispose();

            for (uint i = 0; i < frameBuffers.Length; i++)
            {
                frameBuffers[i].Dispose();
            }

            memoryAllocator?.Dispose();
        }
 public void EnableExtension(JsonApiExtension extension)
 => EnabledExtensions.Add(extension);