游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3448|回复: 6

谁能给我解释一下DX画Triangle Strip的问题

[复制链接]

45

主题

181

帖子

181

积分

注册会员

Rank: 2

积分
181
发表于 2005-5-18 21:20:00 | 显示全部楼层 |阅读模式
用4个点画两个三角形
为什么用
vertices[0].p = D3DXVECTOR3(-0.5f, 0.0f, 0.0f);
vertices[1].p = D3DXVECTOR3(-0.5f, 0.5f, 0.0f);
vertices[2].p = D3DXVECTOR3( 0.5f, 0.0f, 0.0f);
vertices[3].p = D3DXVECTOR3( 0.5f, 0.5f, 0.0f);

vertices[0].p = D3DXVECTOR3(-0.5f, 0.0f, 0.0f);
vertices[1].p = D3DXVECTOR3(-0.5f, 0.5f, 0.0f);
vertices[2].p = D3DXVECTOR3( 0.5f, 0.5f, 0.0f);
vertices[3].p = D3DXVECTOR3( 0.5f, 0.0f, 0.0f);
画出来很正常,
而用
vertices[0].p = D3DXVECTOR3(-0.5f, 0.0f, 0.0f);
vertices[1].p = D3DXVECTOR3( 0.5f, 0.0f, 0.0f);
vertices[2].p = D3DXVECTOR3( 0.5f, 0.5f, 0.0f);
vertices[3].p = D3DXVECTOR3(-0.5f, 0.5f, 0.0f);
画却只有一个三角形?
(都是在identity matrix的情况下画的) [em24]

20

主题

398

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
发表于 2005-5-18 21:49:00 | 显示全部楼层

Re:谁能给我解释一下DX画Triangle Strip的问题

三角形的顶点是有特定顺序,不能随便写!
主要是在缓冲区中,各定点数据是线性排列的,DX依次取出进行绘制,乱写顺序DX就找不到正确的顶点了,直然也就会出问题了。

140

主题

1228

帖子

1233

积分

金牌会员

Rank: 6Rank: 6

积分
1233
QQ
发表于 2005-5-19 00:29:00 | 显示全部楼层

Re:谁能给我解释一下DX画Triangle Strip的问题

可以画出两个三角形的,却组不成正方形,你看不到,是因为法线在反面,设定为双面渲染你就知道了!

2

主题

85

帖子

85

积分

注册会员

Rank: 2

积分
85
发表于 2005-5-19 14:00:00 | 显示全部楼层

Re:谁能给我解释一下DX画Triangle Strip的问题

triangle strip的顺序是:
#0: 0 1 2
#1: 2 1 3
#2: 2 3 4
#3: 4 3 5
...

奇数号的三角形是反向的

45

主题

181

帖子

181

积分

注册会员

Rank: 2

积分
181
 楼主| 发表于 2005-5-19 14:55:00 | 显示全部楼层

Re:谁能给我解释一下DX画Triangle Strip的问题

为什么这些东西我在dx文档里都没看到啊

2

主题

85

帖子

85

积分

注册会员

Rank: 2

积分
85
发表于 2005-5-19 16:22:00 | 显示全部楼层

Re:谁能给我解释一下DX画Triangle Strip的问题

你没仔细看而已.dx的文档基本上什么细节都有介绍.只是不太适合做教材而已

5

主题

686

帖子

697

积分

高级会员

Rank: 4

积分
697
QQ
发表于 2005-5-24 10:32:00 | 显示全部楼层

Re:谁能给我解释一下DX画Triangle Strip的问题

你设置D3DRS_CULLMODE为D3DCULL_NONE就可以了,顺时针和逆时针画是不一样的,默认只显示顺时针的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-25 16:47

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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