`
jgsj
  • 浏览: 991121 次
文章分类
社区版块
存档分类
最新评论

Alpha Test 透明通道测试技术做篱笆效果图

 
阅读更多

Alpha test是可以通过测试然后丢弃不需要渲染的像素的。顾名思义就是根据他的alpha值与某特定值比较。

这个技术做腐蚀效果,某些电影特技如:可以让一个人慢慢各个部位褪色,最后消失……等,而且不需要消耗什么计算时间。

计算公式:

IF as(Openration function)ref == true THEN accept pixel

ELSE reject pixel

例如,下面的代码:

gd3dDevice->SetRenderState(D3DRS_ALPHATESTENABLE, true);//开启alpha test
gd3dDevice->SetRenderState(D3DRS_ALPHAFUNC, D3DCMP_GREATEREQUAL);//后面参数是比较函数,就是说大于等于alpha值100的像素才渲染
gd3dDevice->SetRenderState(D3DRS_ALPHAREF, 100);//设置比较值
 

比如做一个栏杆效果,可以用贴图做,而不用用立体几何画出来再实时渲染,这样会慢很多,

上面右边那幅画是带了Alpha Channel的图。大家可以用Photoshop来自己手动加上这个通道。一般bmp图像文件就支持保持Alpha Channel。Jpe应该是不支持的。

我们可以利用右边的图片来做一个如下一样的篱笆效果图:

只需要用一个四方体几何图形,然后用texturing技术就可以轻易的做出这样的效果图来。

Reference:

Introduction to 3D Game Programming with DirectX9.0C

分享到:
评论

相关推荐

    VB.NET中的Alpha透明显示通道实例

    要显示带有Alpha透明通道的图像,我们可以创建一个Bitmap对象,加载包含Alpha通道的图像文件,然后使用Graphics对象的DrawImage方法将其绘制到窗体或控件上。 以下是一个简单的示例,展示如何在VB.NET中加载并显示...

    检测图片alpha通道的工具

    使用该软件可以让你检测任意图片格式,png,jpeg, jpg , bmp, gif, tiff等的每个像素的rgb还有alpha通道的值。只要一动鼠标就可以检测到。 可以运行在windows, linux,mac

    VB.NET Alpha透明通道处理实例.rar

    在VB.NET编程环境中,Alpha透明通道处理是一种高级的图形处理技术,主要应用于图像合成和颜色混合,使得图像具有半透明效果。这个实例是为初学者设计的,旨在帮助他们理解和应用这一特性。以下是对VB.NET Alpha透明...

    基于FPGA的Alpha半透明图像叠加算法硬件实现.pdf

    Alpha半透明算法在图像处理领域有着广泛的应用,特别是在2D和3D游戏图像混合与渲染以及视频编辑中,Alpha通道技术可以让图像的某些部分变得透明或半透明,从而实现复杂的图像叠加效果。 Alpha通道技术是通过8位灰度...

    UE5 渲染透明通道+阴影

    在UE5(Unreal Engine 5)中,透明通道与阴影的渲染是一个复杂但至关重要的过程,主要用于实现如玻璃、半透明物体或者粒子效果等视觉效果。以下将详细阐述如何在UE5中设置和渲染透明通道及阴影。 首先,为了支持...

    wince#中使用AlphaBlend实现图片透明效果

    在Windows CE(简称WCE)或Windows Mobile操作系统中,实现图片的透明效果通常涉及到图形处理技术,特别是AlphaBlending。AlphaBlending是一种混合技术,它允许我们创建具有半透明效果的图像,使得图像的某些部分...

    GUI方案中ALPHA通道处理介绍

    GUI(图形用户界面)方案中的ALPHA通道处理是图形图像处理中的一个重要环节,它涉及到图像的透明度和半透明度的处理。在嵌入式领域中,特别是基于STM32微控制器的系统中,ALPHA通道的处理是实现高质量图形用户界面的...

    alpha-video-html5:JavaScript实现alpha透明通道视频

    在HTML5中,视频元素(`<video>`)已经成为网页媒体播放的标准,但它默认并不支持alpha透明通道,这意味着视频背景无法显示为半透明或透明。然而,在某些应用场景中,如游戏、动态背景或者复杂的交互设计中,透明...

    IE 6 PNG透明通道

    然而,早期的Internet Explorer 6(简称IE6)浏览器对PNG8和PNG24格式的支持存在局限性,特别是对Alpha透明通道的支持不完全,导致PNG图片的透明效果在IE6上显示异常。 为了解决这个问题,开发者们提出了一些解决...

    带透明通道的图片浏览器

    从技术角度来看,实现透明通道的浏览功能需要软件能够正确解析图像文件中的Alpha通道信息。Alpha通道是图像的第四个颜色通道,不同于红、绿、蓝(RGB)颜色通道,它控制像素的透明度。在处理这类图像时,浏览器需要...

    AlphaBlend图片透明过渡动画特效

    总之,AlphaBlend API函数在VB中提供了一种强大的方式来实现图片的透明过渡动画特效,通过对源图像的alpha通道进行控制,可以创造出丰富的视觉效果。通过学习和实践这个例子,开发者能够进一步掌握GDI+和VB的高级...

    seeThru, HTML5视频与alpha通道透明度.zip

    seeThru, HTML5视频与alpha通道透明度 seeThru - 带alpha通道透明度的HTML5视频 这个包为 HTML5 <video> 元素中缺少alpha通道添加了"支撑点"。 以前称为 jquery seethru""在视频中,你的HTML5视频源被渲

    易语言图像透明混合模块

    透明通道混合可能涉及到的算法包括Alpha blending,这是一种基于Alpha值的像素混合方式,通过将两个图像的像素值和Alpha值进行加权平均来实现混合效果。 "与字节混合"可能是指将图像的像素数据与单个字节进行操作,...

    DX透明度alpha的渐变效果

    在DirectX 3D 9编程中,"DX透明度alpha的渐变效果"是一个重要的概念,它涉及到图形渲染中的混合模式和颜色通道处理。Alpha通道通常用来表示颜色的透明度,其值范围通常在0(完全透明)到1(完全不透明)之间。这个...

    AlphaBlend图片透明过渡动画特效-精品源代码

    总之,AlphaBlend图片透明过渡动画特效是一个利用Alpha通道控制图片透明度来创建动态视觉效果的技术。通过理解和应用提供的源代码,开发者可以学习如何在自己的项目中实现类似的效果,提升用户界面的互动性和美观性...

    透明地播放视频

    这个技术通常被称为“Alpha通道”或“透明视频”,它广泛应用于各种多媒体设计、游戏开发、网页设计以及软件应用中。 透明播放视频的核心在于视频文件包含了一个额外的透明度通道,即Alpha通道。这个通道记录了视频...

    Qt 设置图片透明色显示的效果

    3. **定义透明色**:透明色通常是通过指定一个ARGB值来实现的,其中A代表Alpha通道,表示透明度。若要设置某个颜色为完全透明,其Alpha值应为0。例如,如果要设置RGB值为(255, 0, 0)(红色)为透明: ```cpp QRgb ...

    9.6Alpha通道1

    总的来说,Alpha通道是实现图像透明和混合效果的关键技术,它允许我们创建出更为真实和复杂的视觉效果,广泛应用于游戏开发、电影特效、虚拟现实以及各种数字艺术创作中。理解和熟练运用Alpha通道对于任何从事图形...

    PNG图片窗口透明效果

    PNG图片窗口透明效果是一种在计算机图形用户界面中实现图像与背景相互融合的技术,它使得PNG图像在显示时能够部分或完全透明,呈现出一种半透明或镂空的效果。这种技术广泛应用于各种软件、网页设计和操作系统中,以...

    MFC实现半透明效果图片

    在Windows操作系统中,透明度主要通过Alpha通道来实现,Alpha通道是一个额外的颜色通道,用于表示像素的透明度。值为255代表完全不透明,而0则代表完全透明。在MFC中,我们可以通过修改位图的Alpha值来实现半透明...

Global site tag (gtag.js) - Google Analytics