Skip to content

Commit 19759ca

Browse files
authored
Merge branch 'main' into patch-1
2 parents 1818263 + 7cdb57b commit 19759ca

232 files changed

Lines changed: 58406 additions & 36871 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/simple_engine_ci.yml

Lines changed: 476 additions & 0 deletions
Large diffs are not rendered by default.

antora-ci-playbook.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,6 @@ content:
1212
ui:
1313
bundle:
1414
url: ui-bundle.zip
15+
runtime:
16+
log:
17+
failure_level: warn

antora/modules/ROOT/nav.adoc

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,3 +63,89 @@
6363
** xref:courses/18_Ray_tracing/07_Conclusion.adoc[Conclusion]
6464
* xref:90_FAQ.adoc[FAQ]
6565
* link:https://github.com/KhronosGroup/Vulkan-Tutorial[GitHub Repository, window=_blank]
66+
67+
* Building a Simple Engine
68+
** xref:Building_a_Simple_Engine/introduction.adoc[Introduction]
69+
** Engine Architecture
70+
*** xref:Building_a_Simple_Engine/Engine_Architecture/01_introduction.adoc[Introduction]
71+
*** xref:Building_a_Simple_Engine/Engine_Architecture/02_architectural_patterns.adoc[Architectural patterns]
72+
*** xref:Building_a_Simple_Engine/Engine_Architecture/03_component_systems.adoc[Component systems]
73+
*** xref:Building_a_Simple_Engine/Engine_Architecture/04_resource_management.adoc[Resource management]
74+
*** xref:Building_a_Simple_Engine/Engine_Architecture/05_rendering_pipeline.adoc[Rendering pipeline]
75+
*** xref:Building_a_Simple_Engine/Engine_Architecture/06_event_systems.adoc[Event systems]
76+
*** xref:Building_a_Simple_Engine/Engine_Architecture/conclusion.adoc[Conclusion]
77+
** Camera Transformations
78+
*** xref:Building_a_Simple_Engine/Camera_Transformations/01_introduction.adoc[Introduction]
79+
*** xref:Building_a_Simple_Engine/Camera_Transformations/02_math_foundations.adoc[Math foundations]
80+
*** xref:Building_a_Simple_Engine/Camera_Transformations/03_transformation_matrices.adoc[Transformation matrices]
81+
*** xref:Building_a_Simple_Engine/Camera_Transformations/04_camera_implementation.adoc[Camera implementation]
82+
*** xref:Building_a_Simple_Engine/Camera_Transformations/05_vulkan_integration.adoc[Vulkan integration]
83+
*** xref:Building_a_Simple_Engine/Camera_Transformations/06_conclusion.adoc[Conclusion]
84+
** Lighting & Materials
85+
*** xref:Building_a_Simple_Engine/Lighting_Materials/01_introduction.adoc[Introduction]
86+
*** xref:Building_a_Simple_Engine/Lighting_Materials/02_lighting_models.adoc[Lighting models]
87+
*** xref:Building_a_Simple_Engine/Lighting_Materials/03_push_constants.adoc[Push constants]
88+
*** xref:Building_a_Simple_Engine/Lighting_Materials/04_lighting_implementation.adoc[Lighting implementation]
89+
*** xref:Building_a_Simple_Engine/Lighting_Materials/05_vulkan_integration.adoc[Vulkan integration]
90+
*** xref:Building_a_Simple_Engine/Lighting_Materials/07_shadows.adoc[Shadows]
91+
*** xref:Building_a_Simple_Engine/Lighting_Materials/06_conclusion.adoc[Conclusion]
92+
** GUI
93+
*** xref:Building_a_Simple_Engine/GUI/01_introduction.adoc[Introduction]
94+
*** xref:Building_a_Simple_Engine/GUI/02_imgui_setup.adoc[ImGui setup]
95+
*** xref:Building_a_Simple_Engine/GUI/03_input_handling.adoc[Input handling]
96+
*** xref:Building_a_Simple_Engine/GUI/04_ui_elements.adoc[UI elements]
97+
*** xref:Building_a_Simple_Engine/GUI/05_vulkan_integration.adoc[Vulkan integration]
98+
*** xref:Building_a_Simple_Engine/GUI/06_conclusion.adoc[Conclusion]
99+
** Loading Models
100+
*** xref:Building_a_Simple_Engine/Loading_Models/01_introduction.adoc[Introduction]
101+
*** xref:Building_a_Simple_Engine/Loading_Models/02_project_setup.adoc[Project setup]
102+
*** xref:Building_a_Simple_Engine/Loading_Models/03_model_system.adoc[Model system]
103+
*** xref:Building_a_Simple_Engine/Loading_Models/04_loading_gltf.adoc[Loading glTF]
104+
*** xref:Building_a_Simple_Engine/Loading_Models/05_pbr_rendering.adoc[PBR rendering]
105+
*** xref:Building_a_Simple_Engine/Loading_Models/06_multiple_objects.adoc[Multiple objects]
106+
*** xref:Building_a_Simple_Engine/Loading_Models/07_scene_rendering.adoc[Scene rendering]
107+
*** xref:Building_a_Simple_Engine/Loading_Models/08_animations.adoc[Animations]
108+
*** xref:Building_a_Simple_Engine/Loading_Models/09_conclusion.adoc[Conclusion]
109+
** Subsystems
110+
*** xref:Building_a_Simple_Engine/Subsystems/01_introduction.adoc[Introduction]
111+
*** xref:Building_a_Simple_Engine/Subsystems/02_audio_basics.adoc[Audio basics]
112+
*** xref:Building_a_Simple_Engine/Subsystems/03_vulkan_audio.adoc[Vulkan audio]
113+
*** xref:Building_a_Simple_Engine/Subsystems/04_physics_basics.adoc[Physics basics]
114+
*** xref:Building_a_Simple_Engine/Subsystems/05_vulkan_physics.adoc[Vulkan physics]
115+
*** xref:Building_a_Simple_Engine/Subsystems/06_conclusion.adoc[Conclusion]
116+
** Tooling
117+
*** xref:Building_a_Simple_Engine/Tooling/01_introduction.adoc[Introduction]
118+
*** xref:Building_a_Simple_Engine/Tooling/02_cicd.adoc[CI/CD]
119+
*** xref:Building_a_Simple_Engine/Tooling/03_debugging_and_renderdoc.adoc[Debugging & RenderDoc]
120+
*** xref:Building_a_Simple_Engine/Tooling/04_crash_minidump.adoc[Crash minidumps]
121+
*** xref:Building_a_Simple_Engine/Tooling/05_extensions.adoc[Extensions]
122+
*** xref:Building_a_Simple_Engine/Tooling/06_packaging_and_distribution.adoc[Packaging & distribution]
123+
*** xref:Building_a_Simple_Engine/Tooling/07_conclusion.adoc[Conclusion]
124+
** Mobile Development
125+
*** xref:Building_a_Simple_Engine/Mobile_Development/01_introduction.adoc[Introduction]
126+
*** xref:Building_a_Simple_Engine/Mobile_Development/02_platform_considerations.adoc[Platform considerations]
127+
*** xref:Building_a_Simple_Engine/Mobile_Development/03_performance_optimizations.adoc[Performance optimizations]
128+
*** xref:Building_a_Simple_Engine/Mobile_Development/04_rendering_approaches.adoc[Rendering approaches]
129+
*** xref:Building_a_Simple_Engine/Mobile_Development/05_vulkan_extensions.adoc[Vulkan extensions]
130+
*** xref:Building_a_Simple_Engine/Mobile_Development/06_conclusion.adoc[Conclusion]
131+
** Advanced Topics
132+
*** xref:Building_a_Simple_Engine/Advanced_Topics/01_introduction.adoc[Introduction]
133+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Rendering_Pipeline_Overview.adoc[Rendering pipeline overview]
134+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Forward_ForwardPlus_Deferred.adoc[Forward vs Forward+ vs Deferred]
135+
*** xref:Building_a_Simple_Engine/Advanced_Topics/ForwardPlus_Rendering.adoc[Forward+ rendering]
136+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Culling.adoc[Culling]
137+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Mipmaps_and_LOD.adoc[Mipmaps & LOD]
138+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Push_Constants_Per_Object.adoc[Push constants per object]
139+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Synchronization_and_Streaming.adoc[Synchronization & streaming]
140+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Synchronization_2_Frame_Pacing.adoc[Synchronization2 & frame pacing]
141+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Descriptor_Indexing_UpdateAfterBind.adoc[Descriptor indexing (UpdateAfterBind)]
142+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Separate_Image_Sampler_Descriptors.adoc[Separate image/sampler descriptors]
143+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Shader_Tile_Image.adoc[Shader tile image]
144+
*** xref:Building_a_Simple_Engine/Advanced_Topics/GLTF_Animation.adoc[glTF animation]
145+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Planar_Reflections.adoc[Planar reflections]
146+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Ray_Query_Rendering.adoc[Ray query rendering]
147+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Ray_Query_Reflections_and_Transparency.adoc[Ray query: reflections & transparency]
148+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Dynamic_Rendering_Local_Read.adoc[Dynamic rendering local read]
149+
*** xref:Building_a_Simple_Engine/Advanced_Topics/Robustness2.adoc[Robustness2]
150+
** Appendix
151+
*** xref:Building_a_Simple_Engine/Appendix/appendix.adoc[Appendix]

attachments/03_physical_device_selection.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,7 @@ class HelloTriangleApplication
4848
vk::raii::PhysicalDevice physicalDevice = nullptr;
4949

5050
std::vector<const char *> requiredDeviceExtension = {
51-
vk::KHRSwapchainExtensionName,
52-
vk::KHRSpirv14ExtensionName,
53-
vk::KHRSynchronization2ExtensionName,
54-
vk::KHRCreateRenderpass2ExtensionName};
51+
vk::KHRSwapchainExtensionName};
5552

5653
void initWindow()
5754
{

attachments/04_logical_device.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,7 @@ class HelloTriangleApplication
5252
vk::raii::Queue graphicsQueue = nullptr;
5353

5454
std::vector<const char *> requiredDeviceExtension = {
55-
vk::KHRSwapchainExtensionName,
56-
vk::KHRSpirv14ExtensionName,
57-
vk::KHRSynchronization2ExtensionName,
58-
vk::KHRCreateRenderpass2ExtensionName};
55+
vk::KHRSwapchainExtensionName};
5956

6057
void initWindow()
6158
{

attachments/05_window_surface.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,7 @@ class HelloTriangleApplication
4949
vk::raii::Queue queue = nullptr;
5050

5151
std::vector<const char *> requiredDeviceExtension = {
52-
vk::KHRSwapchainExtensionName,
53-
vk::KHRSpirv14ExtensionName,
54-
vk::KHRSynchronization2ExtensionName,
55-
vk::KHRCreateRenderpass2ExtensionName};
52+
vk::KHRSwapchainExtensionName};
5653

5754
void initWindow()
5855
{

attachments/06_swap_chain_creation.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,7 @@ class HelloTriangleApplication
5656
std::vector<vk::raii::ImageView> swapChainImageViews;
5757

5858
std::vector<const char *> requiredDeviceExtension = {
59-
vk::KHRSwapchainExtensionName,
60-
vk::KHRSpirv14ExtensionName,
61-
vk::KHRSynchronization2ExtensionName,
62-
vk::KHRCreateRenderpass2ExtensionName};
59+
vk::KHRSwapchainExtensionName};
6360

6461
void initWindow()
6562
{

attachments/07_image_views.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,7 @@ class HelloTriangleApplication
5656
std::vector<vk::raii::ImageView> swapChainImageViews;
5757

5858
std::vector<const char *> requiredDeviceExtension = {
59-
vk::KHRSwapchainExtensionName,
60-
vk::KHRSpirv14ExtensionName,
61-
vk::KHRSynchronization2ExtensionName,
62-
vk::KHRCreateRenderpass2ExtensionName};
59+
vk::KHRSwapchainExtensionName};
6360

6461
void initWindow()
6562
{

attachments/08_graphics_pipeline.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,7 @@ class HelloTriangleApplication
5656
std::vector<vk::raii::ImageView> swapChainImageViews;
5757

5858
std::vector<const char *> requiredDeviceExtension = {
59-
vk::KHRSwapchainExtensionName,
60-
vk::KHRSpirv14ExtensionName,
61-
vk::KHRSynchronization2ExtensionName,
62-
vk::KHRCreateRenderpass2ExtensionName};
59+
vk::KHRSwapchainExtensionName};
6360

6461
void initWindow()
6562
{

attachments/09_shader_modules.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,7 @@ class HelloTriangleApplication
5757
std::vector<vk::raii::ImageView> swapChainImageViews;
5858

5959
std::vector<const char *> requiredDeviceExtension = {
60-
vk::KHRSwapchainExtensionName,
61-
vk::KHRSpirv14ExtensionName,
62-
vk::KHRSynchronization2ExtensionName,
63-
vk::KHRCreateRenderpass2ExtensionName};
60+
vk::KHRSwapchainExtensionName};
6461

6562
void initWindow()
6663
{

0 commit comments

Comments
 (0)