vulkan学习(二)——开发环境搭建

举报
lutianfei 发表于 2022/04/02 17:01:47 2022/04/02
【摘要】 一、 Vulkan Windows开发环境搭建vulkan sdk下载安装CMake工具下载安装CMake安装使用说明CMake常见命令指南GLFW图形库下载安装使用CMake工具安装编译使用make命令生成lib包mingw32-makemingw32-make installGLM数学库下载安装安装过程与GLFW一致下载: git clone https://gitee.com/mir...

一、 Vulkan Windows开发环境搭建

  1. vulkan sdk下载安装

  2. CMake工具下载安装

  1. GLFW图形库下载安装

使用CMake工具安装编译
image.png

使用make命令生成lib包

mingw32-make
mingw32-make install

  1. GLM数学库下载安装
    安装过程与GLFW一致

下载: git clone https://gitee.com/mirrors/glm.git

二、ValidationLayer说明

Vulkan是一个最小驱动上层API,所以像Debug信息的输出及调用,就需要ValidationLayer来实现。

2.1 ValidationLayer启用流程

  1. 在Instance当中增加对ValidationLayer的开启
const std::vector<const char *> validationLayers = {
        "VK_LAYER_KHRONOS_validation"
};
  1. 在Instance当中增加对ValidationLayer的扩展开启
std::vector<const char *> Instance::getRequiredExtensions() {
    uint32_t glfwExtensionCount = 0;
    const char **glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);// **如何理解, char* * 字符串数组 指针?

    std::vector<const char *> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);

    extensions.push_back(VK_EXT_DEBUG_UTILS_EXTENSION_NAME);

    return extensions;
}
  1. 创建回调函数
static VKAPI_ATTR VkBool32 VKAPI_CALL debugCallBack(
        VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, //消息级别
        VkDebugUtilsMessageTypeFlagsEXT messageType, //消息类型
        const VkDebugUtilsMessengerCallbackDataEXT *pMessageData, //消息体
        void *pUserData) {
    std::cout << "ValidationLayer: " << pMessageData->pMessage << std::endl;

    return VK_FALSE;
}

  1. 创建管理句柄
VkDebugUtilsMessengerEXT mDebugger{VK_NULL_HANDLE};

2.2 信息级别

image.png

2.3 信息分类

image.png

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。