当前位置: 首页 > article >正文

Vulkan入门系列16 - 生成多级纹理贴图( Mipmaps)

一:概述

        我们的程序现在可以加载和渲染 3D 模型了。在本章中,我们将再添加一项功能-- Mipmaps 生成。Mipmaps 广泛应用于游戏和渲染软件中,Vulkan 让我们可以完全控制 Mpmaps 的生成方式。

        Mipmaps 是预先计算的、缩放的图像。每个新图像的宽度和高度都是前一个图像的一半。Mipmaps 是一种细节层次(Level of Detail)或 LOD 的形式。距离摄像机较远的物体将从较小的 mip 图像中获取纹理样本。使用较小的图像可以提高渲染速度,避免出现摩尔纹等人工痕迹。Mipmaps 示例如下图:

 二:创建图像

        在 Vulkan 中,每个 mip 图像都存储在 VkImage 的不同 mip 层中。mip 级别 0 是原始图像,级别 0 之后的 mip 级别通常称为 mip 链。

        mip 级别的数量在创建 VkImage 时指定。到目前为止,我们一直将该值设置为 1。我们需要根据图像的尺寸计算 mip 层数。首先,添加一个类成员来存储这个数字:

...
uint32_t mipLevels;

http://www.kler.cn/a/282510.html

相关文章:

  • JMeter与大模型融合应用之JMeter日志分析服务化实战应用
  • 【python】用 Scrapy 实现高效爬虫项目
  • 超好用shell脚本NuShell mac安装
  • 【征稿倒计时!华南理工大学主办 | IEEE出版 | EI检索稳定】2024智能机器人与自动控制国际学术会议 (IRAC 2024)
  • 一文学会docker中搭建kali
  • 图像处理技术椒盐噪声
  • Git之1.6版本重要特性及用法实例(五十四)
  • 请你学习:前端布局3 - flex
  • 实训day36(8.26)
  • 概率论与高等数学、线性代数的联系及应用
  • 虚幻5|技能栏优化(1)---优化技能UI,并添加多个技能
  • 问:JAVA接口和抽象类有哪些差异?
  • 四十五、【人工智能】【机器学习】- Robust Regression(稳健回归)
  • 骁龙CPU简介
  • 扩展——双向搜索
  • vagrant 创建虚拟机
  • 【PGCCC】内存表的并发魔法:探秘PostgreSQL的内存表并发控制原理与实现
  • 嵌入式知识点
  • 计算机毕业设计选题推荐-医院门诊预约-医院预约挂号微信小程序/安卓APP-项目实战
  • CTFHub SSRF靶场通关攻略(6-11)
  • LabVIEW如何适应航天系统的要求
  • Java 泛型与增强for
  • PMP–知识卡片--多标准决策分析
  • [000-01-001].第04节:Shell中的内置命令
  • 【软件测试】软件测试生命周期与Bug
  • MacOS通过Docker部署安装zookeeper、dubbo-admin,以及Docker Desktop进行管理