游戏开发论坛

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

为什么会这样?

[复制链接]

16

主题

114

帖子

114

积分

注册会员

Rank: 2

积分
114
发表于 2007-9-1 15:11:00 | 显示全部楼层 |阅读模式
对 dx9 sdk 里 的BasicHLSL例子,我把fx里的PS函数的返回颜色 Output.RGBColor.a = 0.5;
我想让模型有半透明效果。但无论怎么改alpha值,都没有半透透明效果。
ps输出的颜色应该是屏幕像素的颜色,为什么却不会改变呢?

32

主题

1259

帖子

1351

积分

金牌会员

Rank: 6Rank: 6

积分
1351
发表于 2007-9-1 19:08:00 | 显示全部楼层

Re:为什么会这样?

没有把 alpha 混合打开, D3D里面

16

主题

114

帖子

114

积分

注册会员

Rank: 2

积分
114
 楼主| 发表于 2007-9-3 17:28:00 | 显示全部楼层

Re:为什么会这样?

        g_pd3dDevice->SetRenderState( D3DRS_ALPHABLENDENABLE, TRUE );

        g_pd3dDevice->SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCALPHA );

        g_pd3dDevice->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA );
我设过了,但是还是没有效果,有人知道原因吗?

16

主题

114

帖子

114

积分

注册会员

Rank: 2

积分
114
 楼主| 发表于 2007-9-5 15:40:00 | 显示全部楼层

Re:为什么会这样?

ding

140

主题

1228

帖子

1233

积分

金牌会员

Rank: 6Rank: 6

积分
1233
QQ
发表于 2007-9-5 22:55:00 | 显示全部楼层

Re:为什么会这样?

如果用shader的时候,那些方式应该都在 shader里设置吧。

technique TGlowOnly
{
    pass PGlow
    {   
        // glow shader
        VertexShader = compile vs_1_1 VSGlow();
        PixelShader  = NULL;
        
        // no texture
        Texture[0] = NULL;

        // enable alpha blending
        AlphaBlendEnable = TRUE;
        SrcBlend         = ONE;
        DestBlend        = ONE;

        // set up texture stage states to use the diffuse color
        ColorOp[0]   = SELECTARG2;
        ColorArg2[0] = DIFFUSE;
        AlphaOp[0]   = SELECTARG2;
        AlphaArg2[0] = DIFFUSE;

        ColorOp[1]   = DISABLE;
        AlphaOp[1]   = DISABLE;
   }
}

16

主题

114

帖子

114

积分

注册会员

Rank: 2

积分
114
 楼主| 发表于 2007-9-6 13:22:00 | 显示全部楼层

Re:为什么会这样?

这个在那里设没关系吧,我在shader里打开 alpha混合也是一样的效果。

9

主题

21

帖子

23

积分

注册会员

Rank: 2

积分
23
发表于 2007-11-8 10:49:00 | 显示全部楼层

Re:为什么会这样?

我也想知道

7

主题

34

帖子

34

积分

注册会员

Rank: 2

积分
34
发表于 2007-12-25 17:16:00 | 显示全部楼层

Re:为什么会这样?

ding

7

主题

34

帖子

34

积分

注册会员

Rank: 2

积分
34
发表于 2007-12-26 10:43:00 | 显示全部楼层

Re:为什么会这样?

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

本版积分规则

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

GMT+8, 2025-6-17 21:52

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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