游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3977|回复: 5

关于D3DTSS_COLOROP的问题

[复制链接]

64

主题

855

帖子

856

积分

高级会员

Rank: 4

积分
856
QQ
发表于 2005-6-22 17:14:00 | 显示全部楼层 |阅读模式
如下2行

pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
pd3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP,   D3DTOP_SELECTARG1 );

经过这两行操作,物体的法线似乎失去了作用,渲染出来的物体没有了明暗变化,请问大家这是怎么回事呢?多重纹理混合时如何保持法线的作用呢?

0

主题

10

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2005-6-22 17:27:00 | 显示全部楼层

Re: 关于D3DTSS_COLOROP的问题

使用的Blend参数有问题,把shading后的颜色信息丢掉了
换成Modulate就好了
[em2]

64

主题

855

帖子

856

积分

高级会员

Rank: 4

积分
856
QQ
 楼主| 发表于 2005-6-22 17:48:00 | 显示全部楼层

Re:关于D3DTSS_COLOROP的问题

换成Modulate就好了??

不太明白你说的,能否给我个纹理层混合的Code?如何恢复法线的效果?

64

主题

855

帖子

856

积分

高级会员

Rank: 4

积分
856
QQ
 楼主| 发表于 2005-6-22 17:52:00 | 显示全部楼层

Re:关于D3DTSS_COLOROP的问题

我想用多重纹理技术来混合两张纹理表现地面,可是操作以后却失去了法线的明暗效果。

3

主题

86

帖子

94

积分

注册会员

Rank: 2

积分
94
QQ
发表于 2005-6-22 21:41:00 | 显示全部楼层

Re:关于D3DTSS_COLOROP的问题

pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
pd3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP,   D3DTOP_MODULATE );
pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );

64

主题

855

帖子

856

积分

高级会员

Rank: 4

积分
856
QQ
 楼主| 发表于 2005-6-23 09:25:00 | 显示全部楼层

Re:关于D3DTSS_COLOROP的问题

哦,是这样的!谢谢楼上兄弟了!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-26 03:47

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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