游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1871|回复: 0

请教一个问题(关于D3D中的Alpha)~~~~~~

[复制链接]

5

主题

22

帖子

24

积分

注册会员

Rank: 2

积分
24
QQ
发表于 2003-12-5 16:24:00 | 显示全部楼层 |阅读模式
我想实现两个多边形之间的ADD混合(就是直接将两个多边形上的纹理色值相加),我这样设置了State

d3d9_device->SetRenderState(D3DRS_ALPHABLENDENABLE,true);
d3d9_device->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_ONE);
d3d9_device->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_ONE);

d3d9_device->SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_SELECTARG1);
d3d9_device->SetTextureStageState(0, D3DTSS_COLORARG1, D3DTA_TEXTURE);
d3d9_device->SetTextureStageState(0, D3DTSS_COLORARG2, D3DTA_CURRENT);
d3d9_device->SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_SELECTARG1);
d3d9_device->SetTextureStageState(0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE);
d3d9_device->SetTextureStageState(0, D3DTSS_ALPHAARG2, D3DTA_CURRENT);

但混合后的效果有问题,按理说混合后部分的下面应该是白色,但现在却和源色没什么区别?这是怎么回事啊,请高手指点.

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

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-2-24 14:39

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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