请问这个3d地形的渲染问题!100分送上

dreamfeer 2003-08-30 08:14:03
地形是有很多正方形组成!
下面是各个顶点:(共4个正方形,8个三角形)

7 8 9
4 5 6
1 2 3
注意:1-9代表9个点!
请问用如何把这个画出来
我的顶点结构:
struct CUSTOMVERTEX
{
D3DXVECTOR3 position; //顶点坐标
D3DXVECTOR3 normal; //顶点法线
float tu, tv; //纹理坐标
};
//D3DFVF_TEX1表示只使用一层纹理
#define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1)

--------------顶点定义
CUSTOMVERTEX vertices[4];
vertices[0].position = D3DXVECTOR3( 0.0f, 0.0f, 0.0f ); //点A的坐标
vertices[0].normal = D3DXVECTOR3( 0.0f, 0.0f, 1.0f ); //点A的法线矢量
vertices[0].tu = 0.0f; //点A的纹理坐标
vertices[0].tv = 0.0f;
……………………………………其他点省略
请问在render的时候,用什么方式来画!!!!
我用下面的方法不行,他总是从第一个点开始render三角形
m_pDevice->SetFVF( D3DFVF_CUSTOMVERTEX );
m_pDevice->SetStreamSource( 0, m_pVB, 0, sizeof(CUSTOMVERTEX) );
m_pDevice->DrawPrimitive( D3DPT_TRIANGLEFAN, 0, 8 );
请问有什么其他的渲染方法!!!??
...全文
30 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
寻开心 2003-09-03
  • 打赏
  • 举报
回复
构造一个移动矩阵
构造一个旋转45度的矩阵
两个矩阵的复合运动(复合的效果就是先旋转后移动,乘号前面的先起作用。)
把符合矩阵设置为世界变换阵
把变换阵作用到模型上,绘制出来
dreamfeer 2003-09-02
  • 打赏
  • 举报
回复
看来还是要索引顶点!!!
帮我看看下面一个函数有什么功能?
D3DXMatrixTranslation( &matTrans, 5.0f,-5.0f, -5.0f );
D3DXMatrixRotationZ( &matRotate, D3DX_PI/2 );
matWorld = matRotate * matTrans;
m_pDevice->SetTransform( D3DTS_WORLD, &matWorld );
m_pWallMesh->DrawSubset(0);
寻开心 2003-09-01
  • 打赏
  • 举报
回复
在DXVCSDK当中搜索Triangle Strips
里面介绍的三角带,注意顶点的排列顺序。

使用三角带可以把网格一条一条的输出。
如果经过特殊处理(在边界补上一些点)还可以按照
----+
§
+---+
§
+----
方式输出,也就是把整个网格按照一个三角带输出
dreamfeer 2003-08-31
  • 打赏
  • 举报
回复
记得有个什么网各渲染方法!!看了sdk帮助,没看懂!!

那个翻译的中文direct3d在哪个网站?我去看看,www.gameres.com有那个中文帮助的连接,可今天一天都打不开,谁知道地址在哪里?
dreamfeer 2003-08-31
  • 打赏
  • 举报
回复
应该有更简单的方法吧!???

chenlee 2003-08-31
  • 打赏
  • 举报
回复
你用的“D3DPT_TRIANGLEFAN”,
当然每次都是从第一个顶点开始画了。
FaqianXie 2003-08-31
  • 打赏
  • 举报
回复
好像只能用索引缓存了,不然好像表达不清楚,因为有些点会被使用三次(画三角形)
dreamfeer 2003-08-31
  • 打赏
  • 举报
回复
To chenlee() :
我知道我用的是D3DPT_TRIANGLEFAN,我就是想问一下还有其他的什么方法能实现吗!?

To happy__888([顾问团]寻开心) :
我只是简单的写了9个点。
其实很有很多个点的,就象一个矩阵。。

我就是不知道怎么画出来?
寻开心 2003-08-31
  • 打赏
  • 举报
回复
用三角扇多好。不过第一个点应该是图中的5,第二个点是拿一个都可以,然后按照逆时针的顺序排就出来了。
呵呵,太特殊了。
对于大范围的用三角带好一些。
dreamfeer 2003-08-30
  • 打赏
  • 举报
回复
哎。。。。。。。。。怎么没人呢?

谁能给一个Direct3D游戏场景代码也可以!!
dreamfeer 2003-08-30
  • 打赏
  • 举报
回复
备注:是D3D!!!!!
dreamfeer 2003-08-30
  • 打赏
  • 举报
回复
哦,我的email:dreamfeer@163.com
thx
azher 2003-08-30
  • 打赏
  • 举报
回复
QQ:7658203
我发给你(太长了)

8,303

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧