首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络游戏 >

如何有的图做纹理能透明,有的不能透明

2013-04-22 
怎么有的图做纹理能透明,有的不能透明啊这个图做纹理,透明是指什么,是不是图上的每个像素的颜色已经包含了

怎么有的图做纹理能透明,有的不能透明啊
这个图做纹理,透明是指什么,是不是图上的每个像素的颜色已经包含了alpha

做了个正方体,设置好alpha, 然后用D3DCULL_CW和D3DCULL_CCW分别画一次就能透明了

这是为什么啊,根本不用设置zbuffer也能透明
[解决办法]
通过类似:
pd3ddevice->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE);
pd3ddevice->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA);
pd3ddevice->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);
来开启alpha混合, 透明的设置在材质上面

从绘制角度来说
    往往是开启zbuffer
    绘制不透明的问题
    对透明物体按照远近排序后绘制

你说的两次绘制的效果纯属误打误撞
[解决办法]

引用:
引用:通过类似:
pd3ddevice->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE);
pd3ddevice->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA);
pd3ddevice->SetRenderState(D3DRS_DEST……

我的一篇日志上讲了怎样制作含有Alpha通道的图片,能实现透明半透明。
[解决办法]
引用:
引用:引用:
引用:引用:
引用:通过类似:
pd3ddevice->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE);
p……

概念不一样,融合是使绘制物体出现半透明的效果,从而让被别的物体遮挡的物体也能显示出来
纹理透明主要是为了让多层纹理叠加显示更丰富的效果
但它们在像素着色器上的实现其实都是一样的,用一定的比例把源像素色混合
[解决办法]
引用:
引用:引用:
引用:引用:
引用:引用:
引用:引用 2 楼 u01020……

TGA格式已经有比较完善的解析了,我的日志中有。

热点排行