了解OpenGL ES 开发人员工具(2)

43 篇文章 6 订阅
24 篇文章 11 订阅

8.2 Adreno SDK

8.2.1 Adreno纹理压缩和可视化工具

图 8-5 Adreno纹理工具

在这里插入图片描述

Adreno纹理压缩和可视化工具可将纹理压缩为Adreno GPU支持的以下格式:

  • 3Dc (single-component)
  • 3Dc (two-component)
  • ASTC LDR
  • ASTC HDR
  • ATC RGBA (explicit)
  • ATC RGBA (interpolated)
  • EAC (single-component)
  • EAC (two-component)
  • ETC1 RGB8
  • ETC2 RGBA8
  • ETC2 RGB8
  • ETC2 RGB8 Punchthrough Alpha
  • S3TC (DXT1 RGBA)
  • S3TC (DXT3 RGBA)
  • S3TC (DXT5 RGBA)

该应用程序允许用户:

  • 在视觉上将压缩纹理的外观与原始非压缩版本进行比较
  • 放大纹理以获得详细视图
  • 根据纹理大小或质量进行最合适的压缩分析
  • 分别可视化每个颜色通道,包括alpha(如果可用)
  • 同时打开多个工作区
  • 保存可以在美工管线中处理的纹理工作区
  • 在纹理中生成Mipmap
  • 将文件保存为开放标准的.ktx和.dds格式
  • 设置用于批处理的项目,因此可以一次运行压缩多个纹理

还包括一个32位和64位Photoshop插件,可用于加载压缩的纹理格式。

8.2.2 Adreno 纹理转换器

压缩和可视化工具允许按需对压缩数据进行可视化检查。这对于决定特定图像应该使用哪种纹理压缩格式非常有用,但它在制作管道中的使用有限:

  • 未来可能会改变;使用GUI定期压缩数百个更新的纹理是很麻烦的
  • 可能需要被压缩成许多不同的内部格式,例如,由于可移植性的原因
  • 可能需要以低于原始资产精度的非压缩内部格式存储,例如,如果想要将RGB888纹理压缩为RGB565格式
  • 需要在运行时压缩,考虑到特定平台的功能;与OpenGL不同,OpenGL ES不支持运行时纹理压缩,如果需要,应用程序必须处理编码过程

Adreno纹理转换器是一个动态库提供解决这些问题。它允许一个名为Qonvert的函数,该函数接受两个参数来描述源图像和目标图像属性。此函数执行转换并使用压缩数据填充目标。

Adreno纹理转换器可以执行以下任务:

  • 如果目标图像必须小于原始图像,则将原图像缩小
  • 水平和垂直翻转源图像和目标图像
  • 混合源和目标图像组件
  • 对源和目标图像数据使用非默认的行步长
  • 将源数据转换为法线贴图
    以下过滤器可用于缩小源图像:
  • Bicubic
  • Bilinear
  • Kaiser window
  • Mean
  • Nearest-neighbor

可以使用以下算法从输入图像生成法线贴图:

  • Prewitt operator
  • Roberts cross operator
  • Sobel operator
表8-1 列出可以为源图像和目标图像指定的格式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二进制库文件,头文件和详细文档可在Adreno SDK中找到。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值