GPU PRO 5 - 3.3 Bokeh Effects on the SPU 笔记

本笔记仅为个人的理解,如果有误欢迎指出。

Bokeh Effects on the SPU

基于 SPU 的散景效果实现

本文讲述的是一种通过sprite实现的散景方案,并将其应用到PlayStation 3 的 协同处理单元(Synergistic Processing Unit,SPU)

算法思路很简单通过分析每个像素的亮度,如果高于阈值就在对应位置生成一个sprite模拟散射效果。

像素的亮度计算公式以及平均公式:

计算平均亮度时需要用到滤波核确定平均范围,文章演示中用了5x5的滤波核:

这里的优化方案是降低遍历用的分辨率以及选用小一些的滤波核。

这样利用滤波核计算出每个像素的亮度后,如果该像素亮度高于某个阈值(threshold),就在该像素对应的屏幕空间位置生成一个纹理精灵(sprite)

简单来说流程就是:

遍历像素

↓

计算亮度

↓

亮度 > 阈值

↓

生成一个 Bokeh Sprite

接下来需要为每个Sprite调整缩放值,这部分通过计算像素深度来去调整:

参考资料:

GPU Pro5 图像空间篇

相关推荐
qq_284274051 小时前
数控铣床与加工中心笔记:铣刀与刀柄系统、G54试切对刀、镜像加工指令、孔加工工艺(钻扩铰镗)与固定循环G73/G83/G81/G76/G87/G84
笔记·学习·自动化·制造
Titan20242 小时前
MySQL访问个人学习笔记
笔记·学习·mysql
深圳老胡3 小时前
STM32CubeMX 生成 CMake 工程,用 VSCode 编译与调试的完整流程
笔记·stm32·单片机·代码规范
坤坤子吖3 小时前
C++智能指针:RAII、shared_ptr与内存泄漏
开发语言·c++·笔记·学习
乐橙开放平台4 小时前
智慧连锁客流检测和离岗检测怎么对接
大数据·人工智能·笔记·物联网·自动化·音视频·智能家居
零基础1234 小时前
FinalShell 使用教程:从安装到高效运维
运维·经验分享·笔记·finalshell
ACP广源盛139246256734 小时前
Type‑C 扩展坞方案选型笔记|国产 DP1.4 转 HDMI2.0 桥接芯片 GSV2201S @ACP评估
c语言·开发语言·笔记·硬件架构·硬件工程·国产芯片
敲个大西瓜5 小时前
langchain笔记(一)
redis·笔记·langchain
带金箍的至尊宝5 小时前
系统架构设计师笔记 05:第2章硬件与软件基础,冯诺依曼结构怎么考
数据库·笔记·系统架构
知产xiao_xin6 小时前
商标权的内容和限制
经验分享·笔记·知识产权