游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2075|回复: 2

新手求解释SetTextureStageState()好人一生平安

[复制链接]

1

主题

2

帖子

21

积分

新手上路

Rank: 1

积分
21
发表于 2014-8-6 21:40:03 | 显示全部楼层 |阅读模式
g_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_MODULATE );
g_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
g_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );   
g_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP,   D3DTOP_DISABLE );
g_pd3dDevice->SetTextureStageState( 1, D3DTSS_COLORARG1, D3DTA_TEXTURE );
g_pd3dDevice->SetTextureStageState( 1, D3DTSS_COLORARG2, D3DTA_CURRENT);
SetTextureStageState这个函数里面的三个数据是怎么混合的?求高手一句一句的翻译!自学不容易,网上也没有什么好的视频!特别是哪个D3DTOP_MODULATE什么意思啊?

6

主题

74

帖子

230

积分

中级会员

Rank: 3Rank: 3

积分
230
发表于 2014-8-17 20:14:18 | 显示全部楼层
D3DTOP_MODULATE就是乘法操作

result=arg1*arg2
然后
g_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
这是设置arg1使用texture的color
g_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );  
arg2使用diffuse就是顶点颜色里面的color0

后面的stage1缺少op,没用。

1

主题

2

帖子

21

积分

新手上路

Rank: 1

积分
21
 楼主| 发表于 2014-8-22 01:25:33 | 显示全部楼层
Kevin_Qing 发表于 2014-8-17 20:14
D3DTOP_MODULATE就是乘法操作

result=arg1*arg2

恩,大哥,你回答的好慢啊!搞了一天,终于我都懂了!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-2-26 02:27

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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