Vulkan Samples 阅读 -- Effects

Fullscreen Radial Blur

prepare

  • loadAssets: 加载模型和贴图
  • prepareOffscreen
    • 创建渲染模糊场景帧缓冲
    • Color attachment
      • vkCreateImage
      • vkGetImageMemoryRequirements
      • vkAllocateMemory
      • vkBindImageMemory
      • vkCreateImageView
      • vkCreateSampler
    • Depth stencil attachment
      • vkCreateImage
      • vkGetImageMemoryRequirements
      • vkAllocateMemory
      • vkBindImageMemory
      • vkCreateImageView
    • vkCreateRenderPass
    • vkCreateFramebuffer
  • prepareUniformBuffers
    • createBuffer
    • updateUniformBuffers
  • setupDescriptorSetLayout
    • Scene rendering
      • descriptorSetLayoutBinding
      • vkCreateDescriptorSetLayout
      • vkCreatePipelineLayout
    • Fullscreen radial blur
      • descriptorSetLayoutBinding
      • vkCreateDescriptorSetLayout
      • vkCreatePipelineLayout
  • preparePipelines
    • vkCreateGraphicsPipelines: Radial blur pipeline
    • vkCreateGraphicsPipelines: Phong pass
    • vkCreateGraphicsPipelines: Color pass
  • setupDescriptorPool
    • vkCreateDescriptorPool
  • setupDescriptorSet
    • Scene rendering
      • vkAllocateDescriptorSets
      • writeDescriptorSet
      • vkUpdateDescriptorSets
    • Fullscreen radial blur
      • vkAllocateDescriptorSets
      • writeDescriptorSet
      • vkUpdateDescriptorSets
  • buildCommandBuffers
    • loop
      • vkBeginCommandBuffer
      • First render pass: Offscreen rendering
        • vkCmdSetViewport
        • vkCmdSetScissor
        • vkCmdBeginRenderPass
        • vkCmdBindDescriptorSets
        • vkCmdBindPipeline
        • draw
        • vkCmdEndRenderPass
    • Second render pass: Scene rendering with applied radial blur
      • vkCmdBeginRenderPass
      • vkCmdSetViewport
      • vkCmdSetScissor
      • vkCmdBindDescriptorSets
      • vkCmdBindPipeline
      • draw
      • if blur
        • vkCmdBindDescriptorSets
        • vkCmdBindPipeline
        • vkCmdDraw
      • drawUI
      • vkCmdEndRenderPass
    • vkEndCommandBuffer

render

  • draw
    • prepareFrame
    • vkQueueSubmit
    • submitFrame
  • updateUniformBuffersScene

shader

  • radialblur: 滤波
  • phongpass: 获取渲染模型的效果
  • colorpass: 将blur和模型结果混合
  • FS: 正常渲染(使用texture获取字体)

小结

   本节vulkan没有特殊的设置. 效果都是基础, 可以忽略.

Bloom

   使用高斯模糊, 管线与上节大致相同, 可忽略.

Parallax mapping

   视差贴图也是基础, 可忽略.

Spherical Environment Mapping

   vulkan没有特殊的设置, 也是渲染基础. ( 但是可以研究一下Spherical Environment Mapping 新的使用场景)

总结

   Effects章节都是一些渲染效果的实现, vulkan管线没有特殊的设置. 而效果项都是渲染基础方法. 所以可以忽略该章节.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
realesrgan-ncnn-vulkan-20211212-windows是一个基于ncnn框架和Vulkan图形API开发的图像超分辨率增强模型。它是由GitHub用户realsrgan开发的最新版本,最新发布日期为2021年12月12日,专为Windows操作系统而设计。 该模型的主要应用是图像超分辨率增强,通过提高图像的分辨率和细节,使图像看起来更加清晰和真实。它采用深度学习和卷积神经网络等先进的技术,能够将低分辨率的图像转换成高分辨率的图像,从而提升图像的质量和视觉效果。 realesrgan-ncnn-vulkan-20211212-windows的开发使用了ncnn框架和Vulkan图形API,这使得它能够在Windows系统上实现快速且高效的图像处理。ncnn是一个轻量级的深度学习框架,专注于在移动平台和嵌入式设备上实现高性能和低延迟的推理。而Vulkan图形API是一种跨平台的图形渲染和计算API,可以充分利用计算设备的性能,提供高效的图像处理和渲染能力。 realesrgan-ncnn-vulkan-20211212-windows的使用可以通过命令行或者图形界面进行,用户可以根据自己的需求和偏好选择适合的方式。该模型提供了训练好的权重参数,用户可以直接加载这些参数并进行图像超分辨率增强。此外,该模型还支持批量处理和视频处理,方便用户对多个图像进行处理。 总之,realesrgan-ncnn-vulkan-20211212-windows是一个高效、快速且易于使用的图像超分辨率增强模型,适用于Windows系统,并利用了ncnn框架和Vulkan图形API的优势,为用户提供了出色的图像处理效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值