千家信息网

如何在Unity中实现基于笔触的实时渲染

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章给大家介绍如何在Unity中实现基于笔触的实时渲染,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。什么是基于笔触的渲染基于笔触的渲染(stroke-based render
千家信息网最后更新 2026年10月31日如何在Unity中实现基于笔触的实时渲染

这篇文章给大家介绍如何在Unity中实现基于笔触的实时渲染,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

什么是基于笔触的渲染

基于笔触的渲染(stroke-based rendering,下称SBR),简单的讲就是根据图像生成笔触,然后再用笔触对图像进行重绘。这个过程实际上是模仿画家实际画画的过程,也就是观察->理解->表达的过程,画画的时候有一句话叫意在笔先也就是这个意思。具体可以看这篇关于SBR的综述:luthuli.cs.uiuc.edu/~da (luthuli.cs.uiuc.edu/~daf/courses/ComputerGraphics/01210867.pdf)。

为什么要在Unity中实现SBR

研究生的时候我是研究非真实性渲染(Non-Photorealistic Rendering,下称NPR)的,发现本质上有两种方法,一种是基于经验的研究方法,也就是没有理论根据,根据实验结果来设计渲染方法。好像有个图形学大佬说过:看起来是对的,就是对的。大概说的就是基于经验的研究方法。还有一种是基于物理模拟的研究方法,比如研究颜料的实际混色和水分的流动等等。

我发现基于经验的方法有点凭感觉,无论是设计算法还是评判结果都不好弄。基于物理模拟的研究方法又是太笨重,只是在计算机中再现了工具和颜料,而怎么画还是靠艺术家手工去画。于是我在想,怎么让计算机真的像艺术家一样去思考,去表达呢。

刚好以前接触过一点计算机视觉,于是在想有没有一种基于视觉的研究方法,让计算机去理解图像,然后像人一样去画,也就是渲染,而不是用一堆滤波器。

那时候用了opencv去做图像分割,然后计算图像的显著度(saliency),再根据显著度生成笔刷,最后用cuda并行地渲染笔刷,做了这样一个离线版本的SBR。效果还不错,但是工作之后这个研究就放下了。

最近开始学习Unity的Compute Shader,发现跟cuda很像,于是又想起了SBR,感觉用Unity可以在后处理中实现的SBR,于是做了一些尝试。

具体的实现方法

所有处理都写在post processing stack的render里面,流程大概如下:

其中梯度张量的经过高斯平滑后,称为平滑化梯度张量,求法如下:

IGa为高斯滤波的卷积运算,px为sobel算子计算的x方向的梯度,py为sobel算子计算的y方向的梯度。至于为什么用SVD分解求得的第二特征向量来计算旋转矩阵,那是因为第一特征向量(主特征向量)表明的是变化最大的朝向,而第二特征向量与之正交,所以可以用来表明笔触的流向。

渲染结果:

左边为原帧,右边为SBR渲染后的效果:

基于笔触的实时渲染

另外,笔触的间隔和的大小可以调节出不同的效果:

笔触的间隔和的大小可以调节

不同笔触纹理可以有不同的渲染效果:

代码

(github.com/alpacasking/SBR)

时间有限,现在只写了最基本的流程,其实还有很多东西值得做,比如:

  • 根据深度纹理检测前景和背景,从而生成不同密度和大小的笔触

  • 利用CV相关知识分析理解图像再生成笔触

  • 同时用不同的笔触纹理渲染

  • 让每帧之间的笔触衔接得流畅

  • 可以为油画,水彩风格等做进一步的研究

有时间的话会慢慢加上的,各位有兴趣的话也可以自行魔改。

关于如何在Unity中实现基于笔触的实时渲染就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

笔触 研究 方法 图像 不同 中实 也就是 向量 效果 梯度 特征 计算机 生成 实时 大小 实际 就是 时候 纹理 经验 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技公司经营范围 科技和互联网公司 互联网科技有限公司图片 安徽鑫晟辉互联网科技 猫创互联网科技 齐家互联网科技有限公司 大白互联网科技 互联网汽车科技小镇 现代科技和互联网有关系吗 互联网大会黑科技排名 民营互联网公司国防科技 明优互联网科技有限公司 科技赋能视角下互联网保险发展 众安科技工业互联网合作 伍佰万互联网科技怎么赚钱 互联网科技股为什么大涨 互联网科技年终奖 互联网时代高科技布局 重庆科技产业互联网有哪些 武汉亿视互联网科技有限公司 广州紫鲸互联网科技有限公司 互联网核心科技是什么 迪茉互联网科技 千方科技属于互联网企业吗 银川新华互联网科技学校联系电话 燊美集互联网科技有限公司 东莞新华互联网科技学校 深圳无忧互联网科技 半导体行业属于互联网高科技类吗 广州燕处互联网科技有限公司
0