关闭

简单的运动模糊效果实现

标签: floatshader照片游戏
4467人阅读 评论(0) 收藏 举报
分类:
 
当一个物体快速移动的时候, 人眼会感觉它变模糊. 同样的现象在电影和照片上也存在. 产生这种现象的原因是人眼并不是无限快地接收信息的, 而是每隔一段很短的时间” 截取” 一幅画面。如果物体移动的速度超过了人眼捕获画面的速度, 那么物体会呈现条纹效果.
 
了解现实世界中的效果有助于我们用计算机去实现它. 理想的方法是判断每个像素在相邻两帧之间移动的速度, 跟据这个信息再来进行处理. 这个方案是可行的, 但是有点复杂. 另一种方法就是将当前帧的画面跟上一帧的画面进行混合, 并不考虑物体的移动速度. 这只是一种近似效果, 并在如今的视频游戏中得到了广泛的应用.
实现运动模糊屏幕效果有两方面的目的: 一是为了模拟现实中的运动模糊 二是它可以减轻渲染中的锯齿效果, 特别是在硬件不支持反锯齿的情况下, 这是一个廉价的替代方案.
 
实现原理:
1.先将场景渲染到一个RenderTarget1上
2.将RenderTarget1跟上一帧渲染的结果进行混合, 并输出到RenderTarget2
3.将RenderTarget2输出到屏幕, 并将其保留到下一帧进行混合
详见下图:
 
Shader实现
两个Pass
Teapot Pass将场景正常渲染到BaseSceneRT上.
 
BlurPass进行混合, 输出到BluredRT, 注意同时这里BluredRT做为Texture1输入上一帧的结果所以设置在渲染时不进行清除操作.
 
混合时需要一个比例值blur_factor进行插值, 在这里我设置为0.5
PixelShader代码:
sampler2D Texture0;
sampler2D Texture1;
float blur_factor;
 
float4 ps_main( float2 texCoord : TEXCOORD0 ) : COLOR
{
   float4 color1 = tex2D( Texture0, texCoord );
   float4 color2 = tex2D( Texture1, texCoord );
  
   //插值
   return lerp( color1, color2, blur_factor );
}
 
最后把BluredRT输出到屏幕即可(按说这里应该再加一个Pass的, 我偷懒, 直接把BluredRT显示到窗口上看效果了)
快速拖动物体, 可以看到效果了^_^:
 
0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

UE4渲染设置介绍(Rendering Setting)

Useful Properties Of UE4 渲染设置(Rendering Setting) 在编辑器最上端点击“设置”(Settings)按钮, 选择“项目设置”(Project Settin...
  • jiangdengc
  • jiangdengc
  • 2017-02-26 17:36
  • 4542

克服VR眩晕之帧数:提升UE4内容实时渲染效率

在10月24日精彩落幕的2015创领发现VR DAY的活动中,主办方创领发现(UCCVR)有幸邀请到了虚幻引擎的原厂技术大牛来现场与各位VR相关的制作人/开发者进行面对面的交流与分享。下面让我们来仔细...
  • debugconsole
  • debugconsole
  • 2016-02-29 20:40
  • 6120

径向模糊效果

最先在这里看到:http://www.gamerendering.com/2008/12/20/radial-blur-filter/这效果在鬼泣4中切换场景时见过, 极品飞车12的运动模糊也有这种感...
  • xoyojank
  • xoyojank
  • 2010-01-06 22:28
  • 9046

克服VR眩晕之帧数:提升UE4内容实时渲染效率

在10月24日精彩落幕的2015创领发现VR DAY的活动中,主办方创领发现(UCCVR)有幸邀请到了虚幻引擎的原厂技术大牛来现场与各位VR相关的制作人/开发者进行面对面的交流与分享。下面让我们来仔细...
  • debugconsole
  • debugconsole
  • 2016-02-29 20:40
  • 6120

教你一分钟实现动态模糊效果

转载请注明出处:http://blog.csdn.net/wl9739/article/details/51955598 本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 现在,...
  • wl9739
  • wl9739
  • 2016-07-19 14:33
  • 11223

PS运动模糊+径向模糊+高斯模糊

【原文:http://www.missyuan.com/viewthread.php?tid=89190】 在胶片摄影年代,有人用快速拧动变焦环来达到爆炸变焦的特效,还有人用高速跟踪运动物体拍出背景...
  • zhazhiqiang2010
  • zhazhiqiang2010
  • 2014-11-21 09:48
  • 3618

Android高斯模糊效果的简单实现

  • 2017-01-17 17:55
  • 169KB
  • 下载

Java简单的台球运动轨迹效果实现

import java.awt.Color; import java.awt.Frame; import java.awt.Graphics; import java.awt.Image; impor...
  • llixiangjian
  • llixiangjian
  • 2016-09-01 16:27
  • 2071

模拟运动生成的图像模糊效果

  • 2013-04-11 16:50
  • 58KB
  • 下载

Android RenderScript 简单高效实现图片的高斯模糊效果

高斯模糊(Gaussian blur)和毛玻璃效果(亦称磨砂效果),近两年在移动端的UI设计上越来越流行,特别是iOS手机上出现的较多,iOS系统也提供了相应的API帮助开发人员分分钟实现这两个效果。...
  • u013651026
  • u013651026
  • 2018-01-09 11:39
  • 40
    个人资料
    • 访问:1501819次
    • 积分:18859
    • 等级:
    • 排名:第549名
    • 原创:254篇
    • 转载:74篇
    • 译文:28篇
    • 评论:938条
    博客专栏
    文章存档
    最新评论