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

Directx 窗口背景透明解决方案

2012-07-23 
Directx 窗口背景透明我想在一个窗体上画一个3d人物,并让它看起来好想画在桌面上.也就是透明掉clear()的颜

Directx 窗口背景透明
我想在一个窗体上画一个3d人物,并让它看起来好想画在桌面上.也就是透明掉clear()的颜色?请问各位大侠如何做啊????当然你们要是有其它方法可以实现也可以告诉我!!!谢谢!!!!

[解决办法]
具体没做过

思路,获得桌面的 HDC 再在上面刷透明通道背景,再喧染 3D 图形

呵呵 也不知可行否
[解决办法]
用“渲染到纹理”的方法,把3D的人物渲染到一张纹理中,渲染的时候要选择好背景颜色,比如不常见的土黄色,然后就可以把这个纹理绘制在其它地方了。
不建议直接在桌面上绘图,比较好的方法是建立一个窗体(MFC的话,使用分层窗体,.net的话,设置Form的透明度属性),把纹理的背景颜色设置为透明色,在窗体上面把那个纹理(其实就是一张图片)绘制出来就可以了。(其实就是绘制不规则窗体的说^^)

另外,DirectX提供的将纹理保存在图片文件中的函数D3DXSaveSurfaceToFile,可以将纹理保存为PNG格式并且自动把背景色转换为透明色,特殊场合下非常有用。

热点排行