游戏开发论坛

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

能用fix function pipeline 实现这个ALPHA 混合的公式么

[复制链接]

7

主题

34

帖子

44

积分

注册会员

Rank: 2

积分
44
发表于 2004-4-20 17:05:00 | 显示全部楼层 |阅读模式
Source Alpha : SrcAlphaColor register value
Source Color : Texture color x Shade color
Destination Alpha : DestAlphaColor register value
Destination Color : Render target buffer의 pixel color
result color = Source Color x [ SrcBlendFunc ] + Destination Color x [ DestBlendFunc ]

他说是和D3D兼容的。
[23:0]        SrcAlphaColor, DestAlphaColor的说明是
Alpha blending color.
{ R[7:0], G[7:0], B[7:0] }

因为 没有硬件的ALPHA 通道 所以他能直接指定SrcAlphaColor的数值。
关键是

result color = Source Color x SrcAlphaColor + Destination Color x DestAlphaColor

这个公式 怎么实现? D3D里面是用ALPHA 通道实现这个的 而不是直接指定ALPAH的数值。如果我用ALPHA通道 好象就只能实现  RC = SC * A +DESTC*(1-A) ;缩水了。D3D能不能象他的一样指定2个ALPHA数值?

还有就是D3D里面ALPHA 混合的公式是怎样计算的是 就是是对整个颜色组成的32位数值乘一个数值 还是 R G B  A四个通道分别计算 象行列式一样。

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

本版积分规则

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

GMT+8, 2025-6-30 06:18

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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