游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4022|回复: 8

D3D中哪个类可实现2D图形的Blt,Alpha跟Additive?

[复制链接]

58

主题

281

帖子

281

积分

中级会员

Rank: 3Rank: 3

积分
281
QQ
发表于 2004-1-13 07:13:00 | 显示全部楼层 |阅读模式
高手们请告之,谢谢。 [em10]

6

主题

74

帖子

100

积分

注册会员

Rank: 2

积分
100
发表于 2004-1-13 09:18:00 | 显示全部楼层

Re:D3D中哪个类可实现2D图形的Blt,Alpha跟Additive?

看这个合适不
ID3DXSprite

0

主题

130

帖子

130

积分

注册会员

Rank: 2

积分
130
发表于 2004-1-13 15:07:00 | 显示全部楼层

Re:D3D中哪个类可实现2D图形的Blt,Alpha跟Additive?

dx8以后没由DXDRAW了
你就用画3三角形的办法吧.
设好帖图.
定点格式用XYZRHW,这样就是画在屏幕坐标系中
可以参考 DXUTILITY 中的DXFONT的实现

58

主题

281

帖子

281

积分

中级会员

Rank: 3Rank: 3

积分
281
QQ
发表于 2004-1-14 05:36:00 | 显示全部楼层

找到了

C_pd3dDev->SetRenderState(D3DRS_ALPHABLENDENABLE,true);
C_pd3dDev->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA);
C_pd3dDev->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);

C_pd3dDev->SetRenderState(D3DRS_ALPHABLENDENABLE,true);
C_pd3dDev->SetRenderStat(D3DRS_SRCBLEND,D3DBLEND_SRCCOLOR);
C_pd3dDev->SetRenderStat(D3DRS_DESTBLEND,D3DBLEND_INVSRCCOLOR);

可不知怎样设置混合程度(实现淡入淡出),还有实现镜像,继续探讨中。。。 [em10]

13

主题

145

帖子

149

积分

注册会员

Rank: 2

积分
149
发表于 2004-1-14 12:25:00 | 显示全部楼层

Re:D3D中哪个类可实现2D图形的Blt,Alpha跟Additive?

镜像d3d中有例子,原理如下:
1.渲染物体。
2.求得镜像矩阵(名字起的不好,呵呵)在影子的位置再渲染一次。
3.画镜子,要alpha混合,不然遮住镜子。
4.根据镜子的四条边(假设镜子是矩形)和摄像机的位置,剪裁影子。
淡入淡出没用过,也不知道,哪位知道的,给讲一下吧。

58

主题

281

帖子

281

积分

中级会员

Rank: 3Rank: 3

积分
281
QQ
发表于 2004-1-14 23:53:00 | 显示全部楼层

RE

知道怎么设置alpha值了,顶点结构的color成员。前1字节为alpha值,后3字节为三原色值。 [em6]

0

主题

130

帖子

130

积分

注册会员

Rank: 2

积分
130
发表于 2004-1-15 18:20:00 | 显示全部楼层

Re:D3D中哪个类可实现2D图形的Blt,Alpha跟Additive?

看看DX的文档,我记得屏幕坐标好像要加0.5(X,Y都要)

58

主题

281

帖子

281

积分

中级会员

Rank: 3Rank: 3

积分
281
QQ
发表于 2004-1-15 19:11:00 | 显示全部楼层

Re:D3D中哪个类可实现2D图形的Blt,Alpha跟Additive?


改看DirectX9.0Samples中的DXTex,还是正规的好,mirror也没问题了

13

主题

145

帖子

149

积分

注册会员

Rank: 2

积分
149
发表于 2004-1-16 14:49:00 | 显示全部楼层

Re:D3D中哪个类可实现2D图形的Blt,Alpha跟Additive?

不用DrawPrimitiveUP怎么样实现alpha的淡入淡出?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-2-25 00:14

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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