Skip to content

Commit 368c1a3

Browse files
Merge pull request #106 from GPUOpen-LibrariesAndSDKs/update_wk38
Week38 update
2 parents c127dec + a516629 commit 368c1a3

78 files changed

Lines changed: 8330 additions & 3026 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.

examples/DynamicBuffers/include/app.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ class App
6666
uint32_t* out_opt_offset_data_offset_ptr = nullptr);
6767

6868
/* Private variables */
69-
Anvil::SGPUDeviceUniquePtr m_device_ptr;
69+
Anvil::BaseDeviceUniquePtr m_device_ptr;
7070
Anvil::InstanceUniquePtr m_instance_ptr;
7171
const Anvil::PhysicalDevice* m_physical_device_ptr;
7272
Anvil::Queue* m_present_queue_ptr;

examples/DynamicBuffers/src/app.cpp

Lines changed: 44 additions & 43 deletions
Large diffs are not rendered by default.

examples/MultiViewport/CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ endif()
2222

2323
target_include_directories(Anvil PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/anvil/include")
2424

25+
include_directories(${Anvil_SOURCE_DIR}/include
26+
${MultiViewport_SOURCE_DIR}/include)
27+
2528
if (WIN32)
2629
include_directories($ENV{VK_SDK_PATH}/Include
2730
$ENV{VULKAN_SDK}/Include)

examples/MultiViewport/include/app.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,14 @@ class App
5050
void init_window ();
5151
void init_vulkan ();
5252

53-
VkFormat get_mesh_color_data_format () const;
53+
Anvil::Format get_mesh_color_data_format () const;
5454
uint32_t get_mesh_color_data_n_components() const;
5555
uint32_t get_mesh_color_data_start_offset (uint32_t n_stream,
5656
uint32_t n_vertex = 0) const;
5757
std::unique_ptr<uint8_t[]> get_mesh_data () const;
5858
uint32_t get_mesh_data_size () const;
5959
uint32_t get_mesh_n_vertices () const;
60-
VkFormat get_mesh_vertex_data_format () const;
60+
Anvil::Format get_mesh_vertex_data_format () const;
6161
uint32_t get_mesh_vertex_data_n_components() const;
6262
uint32_t get_mesh_vertex_data_start_offset(uint32_t n_vertex = 0) const;
6363

@@ -71,7 +71,7 @@ class App
7171
const char* message);
7272

7373
/* Private variables */
74-
Anvil::SGPUDeviceUniquePtr m_device_ptr;
74+
Anvil::BaseDeviceUniquePtr m_device_ptr;
7575
Anvil::InstanceUniquePtr m_instance_ptr;
7676
const Anvil::PhysicalDevice* m_physical_device_ptr;
7777
Anvil::Queue* m_present_queue_ptr;

examples/MultiViewport/src/app.cpp

Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -272,9 +272,9 @@ void App::draw_frame()
272272
#endif
273273
}
274274

275-
VkFormat App::get_mesh_color_data_format() const
275+
Anvil::Format App::get_mesh_color_data_format() const
276276
{
277-
return VK_FORMAT_R32G32B32_SFLOAT;
277+
return Anvil::Format::R32G32B32_SFLOAT;
278278
}
279279

280280
uint32_t App::get_mesh_color_data_n_components() const
@@ -383,9 +383,9 @@ uint32_t App::get_mesh_n_vertices() const
383383
return (1 /* central vertex */ + N_SUBDIVISION_TRIANGLES);
384384
}
385385

386-
VkFormat App::get_mesh_vertex_data_format() const
386+
Anvil::Format App::get_mesh_vertex_data_format() const
387387
{
388-
return VK_FORMAT_R32G32_SFLOAT;
388+
return Anvil::Format::R32G32_SFLOAT;
389389
}
390390

391391
uint32_t App::get_mesh_vertex_data_n_components() const
@@ -477,8 +477,8 @@ void App::init_buffers()
477477
auto create_info_ptr = Anvil::BufferCreateInfo::create_nonsparse_alloc(m_device_ptr.get(),
478478
get_mesh_data_size(),
479479
Anvil::QUEUE_FAMILY_GRAPHICS_BIT,
480-
VK_SHARING_MODE_EXCLUSIVE,
481-
VK_BUFFER_USAGE_VERTEX_BUFFER_BIT,
480+
Anvil::SharingMode::EXCLUSIVE,
481+
Anvil::BUFFER_USAGE_FLAG_VERTEX_BUFFER_BIT,
482482
0); /* in_memory_features */
483483

484484
create_info_ptr->set_client_data(mesh_data_ptr.get() );
@@ -523,8 +523,8 @@ void App::init_command_buffers()
523523
Anvil::ImageBarrier image_barrier(0, /* source_access_mask */
524524
VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT,
525525
false,
526-
VK_IMAGE_LAYOUT_UNDEFINED,
527-
VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
526+
Anvil::ImageLayout::UNDEFINED,
527+
Anvil::ImageLayout::COLOR_ATTACHMENT_OPTIMAL,
528528
universal_queue_ptr->get_queue_family_index(),
529529
universal_queue_ptr->get_queue_family_index(),
530530
m_swapchain_ptr->get_image(n_current_swapchain_image),
@@ -604,11 +604,11 @@ void App::init_command_buffers()
604604
Anvil::ImageBarrier image_barrier(VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT, /* source_access_mask */
605605
VK_ACCESS_MEMORY_READ_BIT, /* destination_access_mask */
606606
false,
607-
VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, /* old_image_layout */
607+
Anvil::ImageLayout::COLOR_ATTACHMENT_OPTIMAL,/* old_image_layout */
608608
#ifdef ENABLE_OFFSCREEN_RENDERING
609-
VK_IMAGE_LAYOUT_GENERAL, /* new_image_layout */
609+
Anvil::ImageLayout::GENERAL, /* new_image_layout */
610610
#else
611-
VK_IMAGE_LAYOUT_PRESENT_SRC_KHR, /* new_image_layout */
611+
Anvil::ImageLayout::PRESENT_SRC_KHR, /* new_image_layout */
612612
#endif
613613
universal_queue_ptr->get_queue_family_index(),
614614
universal_queue_ptr->get_queue_family_index(),
@@ -662,11 +662,11 @@ void App::init_framebuffers()
662662

663663
void App::init_gfx_pipelines()
664664
{
665-
auto gfx_pipeline_manager_ptr(m_device_ptr->get_graphics_pipeline_manager() );
666-
const VkFormat mesh_color_data_format (get_mesh_color_data_format ());
667-
const VkFormat mesh_vertex_data_format (get_mesh_vertex_data_format ());
668-
const uint32_t n_mesh_color_components (get_mesh_color_data_n_components ());
669-
const uint32_t n_mesh_vertex_components(get_mesh_vertex_data_n_components ());
665+
auto gfx_pipeline_manager_ptr(m_device_ptr->get_graphics_pipeline_manager() );
666+
const Anvil::Format mesh_color_data_format (get_mesh_color_data_format ());
667+
const Anvil::Format mesh_vertex_data_format (get_mesh_vertex_data_format ());
668+
const uint32_t n_mesh_color_components (get_mesh_color_data_n_components ());
669+
const uint32_t n_mesh_vertex_components(get_mesh_vertex_data_n_components ());
670670

671671
/* Create a render pass for the pipeline */
672672
Anvil::GraphicsPipelineCreateInfoUniquePtr gfx_pipeline_create_info_ptr;
@@ -681,16 +681,16 @@ void App::init_gfx_pipelines()
681681
Anvil::RenderPassCreateInfoUniquePtr render_pass_create_info_ptr(new Anvil::RenderPassCreateInfo(m_device_ptr.get() ) );
682682

683683
render_pass_create_info_ptr->add_color_attachment (m_swapchain_ptr->get_create_info_ptr()->get_format(),
684-
VK_SAMPLE_COUNT_1_BIT,
684+
Anvil::SampleCountFlagBits::SAMPLE_COUNT_FLAG_1_BIT,
685685
VK_ATTACHMENT_LOAD_OP_CLEAR,
686686
VK_ATTACHMENT_STORE_OP_STORE,
687-
VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
688-
VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
687+
Anvil::ImageLayout::COLOR_ATTACHMENT_OPTIMAL,
688+
Anvil::ImageLayout::COLOR_ATTACHMENT_OPTIMAL,
689689
false, /* may_alias */
690690
&render_pass_color_attachment_id);
691691
render_pass_create_info_ptr->add_subpass (&render_pass_subpass_id);
692692
render_pass_create_info_ptr->add_subpass_color_attachment(render_pass_subpass_id,
693-
VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
693+
Anvil::ImageLayout::COLOR_ATTACHMENT_OPTIMAL,
694694
render_pass_color_attachment_id,
695695
0, /* in_location */
696696
nullptr); /* in_opt_attachment_resolve_id_ptr */
@@ -861,19 +861,20 @@ void App::init_swapchain()
861861
m_rendering_surface_ptr->set_name("Main rendering surface");
862862

863863

864-
m_swapchain_ptr = m_device_ptr->create_swapchain(m_rendering_surface_ptr.get(),
865-
m_window_ptr.get (),
866-
VK_FORMAT_B8G8R8A8_UNORM,
867-
VK_PRESENT_MODE_FIFO_KHR,
868-
VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT,
869-
m_n_swapchain_images);
864+
m_swapchain_ptr = dynamic_cast<Anvil::SGPUDevice*>(m_device_ptr.get() )->create_swapchain(m_rendering_surface_ptr.get(),
865+
m_window_ptr.get (),
866+
Anvil::Format::B8G8R8A8_UNORM,
867+
VK_PRESENT_MODE_FIFO_KHR,
868+
Anvil::IMAGE_USAGE_FLAG_COLOR_ATTACHMENT_BIT,
869+
m_n_swapchain_images);
870870

871871
m_swapchain_ptr->set_name("Main swapchain");
872872

873873
/* Cache the queue we are going to use for presentation */
874874
const std::vector<uint32_t>* present_queue_fams_ptr = nullptr;
875875

876-
if (!m_rendering_surface_ptr->get_queue_families_with_present_support(&present_queue_fams_ptr) )
876+
if (!m_rendering_surface_ptr->get_queue_families_with_present_support(dynamic_cast<Anvil::SGPUDevice*>(m_device_ptr.get() )->get_physical_device(),
877+
&present_queue_fams_ptr) )
877878
{
878879
anvil_assert_fail();
879880
}

examples/OcclusionQuery/CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ endif()
2222

2323
target_include_directories(Anvil PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/anvil/include")
2424

25+
include_directories(${Anvil_SOURCE_DIR}/include
26+
${OcclusionQuery_SOURCE_DIR}/include)
27+
2528
# Include the Vulkan header.
2629
if (WIN32)
2730
include_directories($ENV{VK_SDK_PATH}/Include

examples/OcclusionQuery/include/app.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class App
6161
const char* message);
6262

6363
/* Private variables */
64-
Anvil::SGPUDeviceUniquePtr m_device_ptr;
64+
Anvil::BaseDeviceUniquePtr m_device_ptr;
6565
Anvil::InstanceUniquePtr m_instance_ptr;
6666
const Anvil::PhysicalDevice* m_physical_device_ptr;
6767
Anvil::Queue* m_present_queue_ptr;

0 commit comments

Comments
 (0)