游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3326|回复: 11

求助:关于纹理混合

[复制链接]

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
发表于 2007-12-14 17:43:00 | 显示全部楼层 |阅读模式
一直是用别人引擎。也一直没大注意。最近写自己的引擎。却发现一。怎么代码一样。却就是死活出不来效果。很简单就是希望最简单的混合一下2层纹理。比如一个草的地形。一个路地形。希望能在草间刷出一条路。
SetTexturestage(0, ColorOP,D3DTOP_SELECTARG1);
SetTexturestage(0,ColorARG1 , D3DTA_TEXTURE);
SetTexturestage(0,ColorARG2 , D3DTA_CURRENT);
SetTexturestage(0,AlphaOP  , D3DTOP_SELECTARG1);
SetTexturestage(0,AlphaARG1 ,D3DTA_DIFFUSE );
                                       
SetTexturestage(1,ColorOP ,D3DTOP_BLENDCURRENTALPHA);
SetTexturestage(1,ColorARG1 , D3DTA_TEXTURE);
SetTexturestage(1,ColorARG2 , D3DTA_CURRENT);
D3DTOP_BLENDCURRENTALPHA  的公式完全满足我的要求啊。可是出来后效果却只显示第二层纹理了。自己看了一下其他的商业引擎。发觉代码一样啊。看了RS也没发觉什么异样。真是怪了。
那位大大对这个很了解。帮忙一下谢谢啦

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
 楼主| 发表于 2007-12-14 18:01:00 | 显示全部楼层

Re:求助:关于纹理混合

顶一下。

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
 楼主| 发表于 2007-12-15 09:52:00 | 显示全部楼层

Re:求助:关于纹理混合

在定一次

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
 楼主| 发表于 2007-12-17 09:29:00 | 显示全部楼层

Re:求助:关于纹理混合

晕难道没有做过类似功能

0

主题

228

帖子

285

积分

中级会员

Rank: 3Rank: 3

积分
285
发表于 2007-12-17 10:49:00 | 显示全部楼层

Re:求助:关于纹理混合

SetTexturestage(0,AlphaOP  , D3DTA_DIFFUSE);
SetTexturestage(0,AlphaARG1 ,D3DTOP_SELECTARG1);
----------------------------------------------------
SetTexturestage(0,AlphaOP  ,D3DTOP_SELECTARG1);
SetTexturestage(0,AlphaARG1 ,D3DTA_DIFFUSE);
应该是这样吧,不过我估计是你帖代码的时候帖错了吧

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
 楼主| 发表于 2007-12-17 11:18:00 | 显示全部楼层

Re:求助:关于纹理混合

恩是我写错了,但是这个不是关键。我的图片没通道的因该是其他原因

0

主题

228

帖子

285

积分

中级会员

Rank: 3Rank: 3

积分
285
发表于 2007-12-17 12:11:00 | 显示全部楼层

Re:求助:关于纹理混合

D3DTOP_BLENDCURRENTALPHA
Linearly blend this texture stage, using the alpha taken from the previous texture stage.
如果你的图片没有alpha通道,那肯定结果不对了

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
 楼主| 发表于 2007-12-17 14:26:00 | 显示全部楼层

Re:求助:关于纹理混合

但是同样的纹理拿到其他商业引擎里面效果都出得来啊?不用D3DTOP_BLENDCURRENTALPHA该用哪个。如果纹理都不带alpha

3

主题

53

帖子

104

积分

注册会员

Rank: 2

积分
104
发表于 2007-12-17 15:02:00 | 显示全部楼层

Re:求助:关于纹理混合

SetTexturestage(0,AlphaOP  , D3DTA_DIFFUSE);
SetTexturestage(0,AlphaARG1 ,D3DTOP_SELECTARG1);
显然有错嘛

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
 楼主| 发表于 2007-12-17 15:07:00 | 显示全部楼层

Re:求助:关于纹理混合

那个是写错了。已经改正了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-17 15:49

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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