游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1825|回复: 2

关于索引缓存的顺序问题

[复制链接]

3

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2011-11-15 09:19:00 | 显示全部楼层 |阅读模式
我在看龙书时,利用顶点缓存和索引缓存画一个立方体,旋转时的显示不正常,下面是我的代码,
        Vertex *vertices;
        VB->Lock(0, 0, (void **)&vertices, 0);        //lock the entire buffer because of the first two parameters
        vertices[0] = Vertex(-1, -1, -1);vertices[1] = Vertex(1, -1, -1);vertices[2] = Vertex(1, -1, 1);
        vertices[3] = Vertex(-1, -1, 1);vertices[4] = Vertex(-1, 1, 1);vertices[5] = Vertex(-1, 1, -1);
        vertices[6] = Vertex(1, 1, -1);vertices[7] = Vertex(1, 1, 1);
        VB->Unlock();
        WORD* indices = 0;
        IB->Lock(0, 0, (void **)&indices, 0);
        //按前、后、左、右、上、下的顺序建立索引
        indices[0] = 0;                indices[1] = 5;                        indices[2] = 6;
        indices[3] = 0;                indices[4] = 6;                        indices[5] = 1;
        indices[6] = 3;                indices[7] = 4;                        indices[8] = 2;
        indices[9] = 2;                indices[10] = 4;                indices[11] = 7;
        indices[12] = 3;        indices[13] = 4;                indices[14] = 5;
        indices[15] = 5;        indices[16] = 0;                indices[17] = 3;
        indices[18] = 2;        indices[19] = 7;                indices[20] = 6;
        indices[21] = 6;        indices[22] = 1;                indices[23] = 2;
        indices[24] = 5;        indices[25] = 4;                indices[26] = 6;
        indices[27] = 4;        indices[28] = 7;                indices[29] = 6;
        indices[30] = 0;        indices[31] = 3;                indices[32] = 1;
        indices[33] = 2;        indices[34] = 2;                indices[35] = 1;
        IB->Unlock();
索引的顺序是否要按照某种规律的? [em20]

0

主题

22

帖子

22

积分

注册会员

Rank: 2

积分
22
发表于 2011-11-17 19:53:00 | 显示全部楼层

Re:关于索引缓存的顺序问题

不正常是怎样的不正常呀?一般每个三角形的顶点顺序要么顺时针,要么逆时针,要统一。这个决定了正反面,设定不同显示可能会不一样。

3

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
 楼主| 发表于 2011-11-18 12:54:00 | 显示全部楼层

Re:关于索引缓存的顺序问题

明白了,原来我索引缓存写错了几个,难怪有些面没显示,谢谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-9 14:20

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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