Files
face_sdk/vulkan/FaceApp.cpp
T

38 lines
1.1 KiB
C++

#include "FaceApp.h"
#include "common/helpers.h"
FaceApp::FaceApp(/* args */)
{
}
FaceApp::~FaceApp()
{
}
void FaceApp::initVulkan()
{
Application::initVulkan();
}
void FaceApp::generate_quad()
{
std::vector<TextureLoadingVertexStructure>& vertices = obj_vertices;
std::vector<uint32_t> indices = obj_indices;
index_count = static_cast<uint32_t>(indices.size());
auto vertex_buffer_size = vkb::to_u32(vertices.size() * sizeof(TextureLoadingVertexStructure));
auto index_buffer_size = vkb::to_u32(indices.size() * sizeof(uint32_t));
vkb::core::DeviceC& cDevice = reinterpret_cast<vkb::core::DeviceC&>(*v_device);
auto vertex_buffer = std::make_unique<vkb::core::BufferC>(cDevice, vertex_buffer_size,VK_BUFFER_USAGE_TRANSFER_DST_BIT | VK_BUFFER_USAGE_VERTEX_BUFFER_BIT,VMA_MEMORY_USAGE_CPU_TO_GPU);
vertex_buffer->update(vertices.data(), vertex_buffer_size);
index_buffer = std::make_unique<vkb::core::BufferC>(cDevice,index_buffer_size,VK_BUFFER_USAGE_TRANSFER_DST_BIT | VK_BUFFER_USAGE_INDEX_BUFFER_BIT,VMA_MEMORY_USAGE_CPU_TO_GPU);
index_buffer->update(indices.data(), index_buffer_size);
}