How saschawillems/vulkan works
This repository is a collection of C++ Vulkan graphics and compute examples, backed by a reusable runtime framework and platform entry points. The main workflow is to launch a sample, initialize Vulkan and its presentation target, run a rendering or compute demonstration, and show the result. The README documents broad sample families; the supplied tree does not include the examples directory, so those capabilities are represented through the existing Apple example selector. Runtime links are limited to relationships supported by the sampled source or README; most implementation wiring was not sampled.
Main entry points: vulkanexamplebase.cpp Example framework · DemoViewController.h Platform apps · examples.h Example selector · Entrypoints.h Runtime entry points
Components 18
Platform entry points
- Platform apps
apple/ios/DemoViewController.h - Example selector
apple/examples.h
Vulkan runtime
- Runtime entry points
base/Entrypoints.h - Example framework
base/vulkanexamplebase.cpp - Vulkan device
base/VulkanDevice.cpp - Presentation
base/VulkanSwapChain.cpp - Validation tools
base/VulkanDebug.cpp - Launch options
base/CommandLineParser.hpp
Example capabilities
- Basic graphics
apple/examples.h - Advanced rendering
apple/examples.h - Compute shaders
apple/examples.h - Ray tracing
apple/examples.h - glTF and PBR
apple/examples.h
Rendering resources
- Buffers and textures
base/VulkanBuffer.cpp - glTF assets
base/VulkanglTFModel.cpp - UI overlay
base/VulkanUIOverlay.cpp
Other components
- Example user
- Vulkan API
Connections 19
- Example user → Platform apps: launches
- Platform apps → Example selector: selects sample
- Example selector → Runtime entry points: starts runtime
- Example user → Launch options: sets options
- Runtime entry points → Example framework: enters
- Example framework → Vulkan device: initializes
- Example framework → Presentation: presents through
- Example framework → Validation tools: configures
- Example framework → Basic graphics: hosts
- Example framework → Advanced rendering: hosts
- Example framework → Compute shaders: hosts
- Example framework → Ray tracing: hosts
- Example framework → glTF and PBR: hosts
- Basic graphics → Buffers and textures: uses
- Advanced rendering → Buffers and textures: uses
- glTF and PBR → glTF assets: loads models
- Example framework → UI overlay: provides UI
- Vulkan device → Vulkan API: calls
- Presentation → Vulkan API: calls