游戏开发论坛

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

关于修改顶点缓冲区中纹理坐标的疑问

[复制链接]

2

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2009-3-4 15:38:00 | 显示全部楼层 |阅读模式


   我是学习directx的新手,最近遇到一个问题。
   我把几个纹理图片拼接到了一张纹理图片上,在程序开始的时候,创建了一个顶点缓冲区。可是,后来的时候,我想改变其中的纹理坐标,来变换纹理图片。
   我的办法是每次都新建顶点缓冲区,又没有什么更好的方法呢?  能不能在settexture的时候,指定纹理图片的一部分作为纹理呢?

72

主题

447

帖子

454

积分

中级会员

Rank: 3Rank: 3

积分
454
QQ
发表于 2009-3-4 16:47:00 | 显示全部楼层

Re:关于修改顶点缓冲区中纹理坐标的疑问

改UV呀~


--------------------------------------------------------
欢迎游戏同仁来我的窝讨论游戏开发中遇到的问题!!
http://www.dingge.com/forum/index.asp?boardid=46

2

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
 楼主| 发表于 2009-3-4 17:41:00 | 显示全部楼层

Re: 关于修改顶点缓冲区中纹理坐标的疑问


  我知道是改纹理坐标,可是是不是每次都要这样:
          Vertex* v;
        _vb->Lock(0, 0, (void**)&v, 0);
        v[0] = Vertex(0.0f,-size, -size,   1.0f,0.0f,0.0f, info._u,          info._v+1.0/8.0);
        v[1] = Vertex(0.0f,size,  -size,   1.0f,0.0f,0.0f, info._u, info._v);
        v[2] = Vertex(0.0f,size,  size,   1.0f,0.0f,0.0f, info._u+1.0/32.0, info._v);
        v[3] = Vertex(0.0f,-size, size,   1.0f,0.0f,0.0f, info._u+1.0/32.0,          info._v+1.0/8.0);

        _vb->Unlock();

其中info._u  info._v是变量 _vb是顶点缓冲区
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-20 05:07

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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