D3D实现图片渐隐渐现效果

myMugua 2011-07-26 02:53:59
我想,应该是在渲染的时候,控制Alpha混合去实现的。
可是具体如何控制,哪位前辈能指点下我啊。。
...全文
111 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
m416708 2012-05-28
  • 打赏
  • 举报
回复
我感觉你应该使用HLSL的~可以轻松实现吧,在最后的PS阶段中,修改返回颜色的a值(argb)。用一个量去控制可以a的变化,从0到1.0再到0就可以了。
war10811 2011-07-28
  • 打赏
  • 举报
回复
一般都设材质的吧,改材质的ALPHA。

别忘了开启ALPHA
AlphaBlendEnable = true;
SrcBlend = SRCCOLOR;
DestBlend = INVSRCCOLOR;
myMugua 2011-07-28
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 dizuo 的回复:]
http://www.codesampler.com/dx9src/dx9src_4.htm#dx9_alpha_blending_texture
在这个例子上改改吧。。。
[/Quote]Alpah值改变还是没学会,但是了解了许多混合的作用 居然可以用这个做狙镜... 刚试了下效果。。不错....
ryfdizuo 2011-07-26
  • 打赏
  • 举报
回复
myMugua 2011-07-26
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 babilife 的回复:]
引用 3 楼 dizuo 的回复:
render函数轮询调用,渲染每一帧以后,alpha+=0.001,当alpha大于1 则置为0.


+++1
[/Quote]可能你听懂了,你能不能告诉我一下。。 怎么找到纹理贴图的alpha通道并修改它..
myMugua 2011-07-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 dizuo 的回复:]
render函数轮询调用,渲染每一帧以后,alpha+=0.001,当alpha大于1 则置为0.
[/Quote]现在就是不知道怎么设置。。 如果有alpha值直接让我修改,那多简单。。我完全不知道一张图片是否需要给材质,控制材质的diffuse来实现渐变还是怎么样。。 一张纹理贴图,它本身就具有一个可供修改的alpha值吗? 我真的找不到。。
至善者善之敌 2011-07-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 dizuo 的回复:]
render函数轮询调用,渲染每一帧以后,alpha+=0.001,当alpha大于1 则置为0.
[/Quote]

+++1
HELLO456 2011-07-26
  • 打赏
  • 举报
回复
学习!!!!
ryfdizuo 2011-07-26
  • 打赏
  • 举报
回复
render函数轮询调用,渲染每一帧以后,alpha+=0.001,当alpha大于1 则置为0.
myMugua 2011-07-26
  • 打赏
  • 举报
回复
顶顶顶 ~
myMugua 2011-07-26
  • 打赏
  • 举报
回复
别沉了。。 顶顶顶@@@

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧