游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1069|回复: 1

一个疑问

[复制链接]

1

主题

1

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2008-9-13 02:50:00 | 显示全部楼层 |阅读模式
最近看了几个地图渲染的例子:

//把地图放在中心
float zStart        = (float)(0.0 - (m_wRows/2.0));
float zEnd        = (float)(m_wRows/2.0);
float xStart        = (float)(0.0 - (m_wCols/2.0));
float xEnd        = (float)(m_wCols/2.0);

for(z = zStart; z <= zEnd; z++)
{
        for(x = xStart; x <= xEnd; x++)
        {
                ...
                pcvVertices.x = x * m_rTileSize;
                pcvVertices.z = -z * m_rTileSize;       
                pcvVertices.y = (float)(rand() % m_wMaxHeight);
                ...
        }
}
或者
for(z = zStart; z <= zEnd; z++)
{
        for(x = xEnd; x>xStart; x--)
        {
                ...
                pcvVertices.x = x * m_rTileSize;
                pcvVertices.z = z * m_rTileSize;       
                pcvVertices.y = (float)(rand() % m_wMaxHeight);
                ...
        }
}

???? 为什么 z * m_rTileSize 要加个负号, 要不就递增和递减?
如果x,z方向不反向的话,渲染不出效果来。

高手们,能帮忙给出原因吗?

19

主题

638

帖子

638

积分

高级会员

Rank: 4

积分
638
发表于 2008-9-13 17:35:00 | 显示全部楼层

Re:一个疑问

反向面裁剪掉了,三角形的三个顶点的顺序决定了那一面是正面
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-21 08:43

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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