【3D技术宅公社】XR数字艺术论坛  XR技术讨论 XR互动电影 定格动画

 找回密码
 立即注册

QQ登录

只需一步,快速开始

调查问卷
论坛即将给大家带来全新的技术服务,面向三围图形学、游戏、动画的全新服务论坛升级为UTF8版本后,中文用户名和用户密码中有中文的都无法登陆,请发邮件到324007255(at)QQ.com联系手动修改密码

3D技术论坛将以计算机图形学为核心,面向教育 推出国内的三维教育引擎该项目在持续研发当中,感谢大家的关注。

查看: 3478|回复: 8

[求助]关于ID3DSprite接口的问题,老鼠进来一下。

[复制链接]
发表于 2006-11-24 10:37:53 | 显示全部楼层 |阅读模式

请问老鼠如何在使用ID3DXSprite时实现类似透明色的功能??如下图,我用ID3DXSprite贴了一幅图片,但是我不想显示它的黑色背景,我该怎么办??

发表于 2006-11-28 09:41:19 | 显示全部楼层

呵呵 那当然

PNG格式的图片性能非常优越~做2D的好东西。

发表于 2006-11-24 13:51:35 | 显示全部楼层

两种方法

1.用photoshop软件去掉背景色,存成PNG格式图片,PNG带透明背景,就实现了你的要求

2.你提取纹理的那个函数,我记不清了大概是 D3DXCreateTextureFromFileEx(),里面有一个参数是颜色,把这个颜色值改成你那张图片的背景色的值就可以了。

 楼主| 发表于 2006-11-24 15:02:13 | 显示全部楼层

多谢老鼠指点,这个问题基本解决。但我还有一个小问题,就是怎么使用带有Alpha通道的图片,即怎么使图片的Alpha通道起作用??

发表于 2006-11-24 15:28:55 | 显示全部楼层

这个我也忘了,原来用过Alpha实现透明,后来发现PNG支持很好就不在关心这个了...我好久没用Alpha通道的图片了。干吗非要用Alpha通道呢?

 楼主| 发表于 2006-11-24 18:57:45 | 显示全部楼层

事情是这样的,我现在正在做一个飞机游戏,自己做了一些飞机子弹图片,如下图:

我用D3DXCreateTextureFromFileEx( )函数加载纹理时将黑色设置为透明色。由于我在制作子弹图片的时候用了高斯模糊,所以图片背景的有些地方并不是完全的黑色,图片贴出来时有非常糟糕的黑色轮廓。如下图:

我觉得用Alpha通道可以解决这个问题,不知道老鼠有没有更好的办法??还请指点一下!

发表于 2006-11-27 12:20:30 | 显示全部楼层
图片都看不到..
 楼主| 发表于 2006-11-27 12:32:32 | 显示全部楼层

不麻烦老鼠了,这个问题已经搞定!新建一张透明背景的PNG图片,在其上面绘制欲进行模糊处理的图形,然后再进行模糊处理。图片贴出来效果级好!

发表于 2006-12-7 00:10:06 | 显示全部楼层

LockRect锁定Texture

修改Texture内存数据中的Alpha值

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|3D数字艺术论坛 ( 沪ICP备14023054号 )

GMT+8, 2025-2-6 04:06

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表