游戏开发论坛

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

2层贴图问题

[复制链接]

69

主题

335

帖子

343

积分

中级会员

Rank: 3Rank: 3

积分
343
QQ
发表于 2003-11-5 19:17:00 | 显示全部楼层 |阅读模式
在d3d中给一个矩形贴图
pDevice->SetTexture( 0, m_pTexture );
pDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_MODULATE );
pDevice->SetTextureStageState( 1, D3DTSS_COLOROP, D3DTOP_MODULATE );
pDevice->SetFVF( D3DFVF_CUSTOMVERTEX );
pDevice->SetStreamSource( 0, m_pVB, 0, sizeof(CUSTOMVERTEX) );
pDevice->DrawPrimitive( D3DPT_TRIANGLEFAN, 0, 2 );

贴第2层图要怎么弄啊

10

主题

60

帖子

70

积分

注册会员

Rank: 2

积分
70
QQ
发表于 2003-11-5 23:07:00 | 显示全部楼层

Re:2层贴图问题

容易,像使第一层一样用.
struct YOURVERTEX
{
    FLOAT x, y, z;       
    FLOAT tu,tv;  //第一层uv坐标
    FLOAT tu2,tv2;  // 这里加上第二层uv坐标.
};

m_pD3DDevice->SetTexture(0, m_pTexture1);//SetTexture第一层
m_pD3DDevice->SetTexture(1, m_pTexture2);//SetTexture第二层               

69

主题

335

帖子

343

积分

中级会员

Rank: 3Rank: 3

积分
343
QQ
 楼主| 发表于 2003-11-6 16:11:00 | 显示全部楼层

Re:2层贴图问题

哦,明白了,谢谢。

69

主题

335

帖子

343

积分

中级会员

Rank: 3Rank: 3

积分
343
QQ
 楼主| 发表于 2003-11-6 16:28:00 | 显示全部楼层

Re:2层贴图问题

还是没贴上第2张!
SetTextureStageState要怎么设置?

69

主题

335

帖子

343

积分

中级会员

Rank: 3Rank: 3

积分
343
QQ
 楼主| 发表于 2003-11-6 17:59:00 | 显示全部楼层

Re:2层贴图问题

还是只能看到第1张图!!!是这个SetTexturestagestate的问题吗?sdk真的看不懂,哪里有多层纹理的例子???


pDevice->SetTexture( 0, m_pTexture );
pDevice->SetTexture( 1, m_pTexture2 );
pDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
pDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_MODULATE );
pDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );
pDevice->SetTextureStageState( 0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE );
pDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3DTOP_SELECTARG1 );


pDevice->SetTextureStageState( 1, D3DTSS_COLORARG1, D3DTA_TEXTURE );
pDevice->SetTextureStageState( 1, D3DTSS_COLOROP, D3DTOP_ADD);//MODULATE2X );
pDevice->SetTextureStageState( 1, D3DTSS_COLORARG2, D3DTA_CURRENT );

pDevice->SetFVF( D3DFVF_CUSTOMVERTEX );
pDevice->SetStreamSource( 0, m_pVB, 0, sizeof(CUSTOMVERTEX) );
pDevice->DrawPrimitive( D3DPT_TRIANGLEFAN, 0, 2 );

69

主题

335

帖子

343

积分

中级会员

Rank: 3Rank: 3

积分
343
QQ
 楼主| 发表于 2003-11-7 01:01:00 | 显示全部楼层

Re:2层贴图问题

哦,终于解决了
这里我定义错了,:),应该是D3DFVF_TEX2
//D3DFVF_TEX1表示只使用一层纹理
#define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX2)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-4-27 19:53

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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