Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

Draigan

Blending Probs (Voodoo3 3000)

This topic is 6504 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I''m using MFCtex sample that comes with D3D8 to test something I''m working on. It seems that BLENDDIFFUSEALPHA or BLENDDIFFUSEFACTOR doesn''t work on my Voodoo3 3000 even though the caps say that both are available. The reference rasterizer draws everything fine, but the HAL just draws blue for the walls. Anyone with a Voodoo3 that can get the BLENDDIFFUSEALPHA to work with as the colorop for the second texture stage? -Dion

Share this post


Link to post
Share on other sites
Advertisement
Guest Anonymous Poster
Sorry, but I think you are out of luck.

You''re going to have to default to multi-pass instead of single-pass
multi-texturing for the V3 when using BLENDDIFFUSEALPHA.

It sucks, don''t it?

Share this post


Link to post
Share on other sites
Yeah, that sucks. What really sucks is the fact that the caps tell me that it''s available (BLENDDIFFUSEALPHA, BLENDFACTORALPHA, etc..) when it''s not. I seem to be able to blend if I set BLENDDIFFUSEALPHA as the AlphaOp for the first texture stage and multi-pass it, but not if I set it as the colorop on the second stage.

So two more questions:

1. How am I supposed to be able to tell if it''s available as a multi-texture mode so that I can use it as the colorop? It says the capability is there but it''s not. So what am I supposed to do?

2. The docs say that BLENDDIFFUSE alpha does Sargb = Arg1*Alpha + Arg2*(1-Alpha). How come setting BLENDDIFFUSEALPHA in the alphaop results in setting the correct alpha for the texture? It seems that BLENDDIFFUSEALPHA does 2 different things depending on where it''s set. If it is the colorop, it uses the Arg1, Arg2, Alpha blending. But if it''s an alphaop, it just sets the alpha for the current stage to the interpolated alpha from the vertices and uses it when multi-pass blending.

THanks.

-Dion

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Don''t rely on caps, use the function ValidateDevice(). First setup
all your textures, render states, etc. (set all states explicitly,
don''t use default states) disable all other stages you don''t
need, and then call this function.

If it returns OK, then it will work. But I know already it won''t
work for your V3. See the SDK docs for more info.

Share this post


Link to post
Share on other sites
Thank you very much anonymous poster. Now, more than ever, I hate my voodoo3. It has many less features that I originally though. It''s sad when the RagePro has a few features that the voodoo3 doesn''t.

Anyway, take care.

-Dion

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!