游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2453|回复: 5

FVF标志的顺序

[复制链接]

14

主题

37

帖子

37

积分

注册会员

Rank: 2

积分
37
发表于 2009-7-3 12:51:00 | 显示全部楼层 |阅读模式
创建FVF时是用的按位或,因此是没有指定顺序的。那固定管线是怎么知道顺序的?
我想DirectX肯定规定了一个固定顺序,顶点的各种元素必须按这个顺序排列。可在DirectX SDK上没有找到这个顺序的说明。
在网上搜索了一下,发现有人说“你的标志的顺序必须要和你的顶点结构的顺序一一对应”,如果是这样,就说明创建FVF时DirectX获得了标志的顺序。那么,DirectX是怎么从按位或这个操作中获得顺序的?

14

主题

37

帖子

37

积分

注册会员

Rank: 2

积分
37
 楼主| 发表于 2009-7-3 13:04:00 | 显示全部楼层

Re:FVF标志的顺序

刚才在网上搜到了一篇描述标志顺序的文章:

http://www.gesoftfactory.com/developer/VF.htm

DirectX SDK上的一个页面和这个几乎完全一样,除了缺少对顺序的说明的那段文字:

directx_sdk.chm::/Fixed_Function_FVF_Codes.htm

这是为什么?DirectX应用了高科技,可以自定义顺序了?


PS: 机器上的SDK版本是Nov 2008。

0

主题

398

帖子

577

积分

高级会员

Rank: 4

积分
577
发表于 2009-7-3 15:49:00 | 显示全部楼层

Re:FVF标志的顺序

不就是那个图上的顺序么?

59

主题

404

帖子

404

积分

中级会员

Rank: 3Rank: 3

积分
404
发表于 2009-7-3 18:53:00 | 显示全部楼层

Re:FVF标志的顺序

确实 图上有顺序

2

主题

123

帖子

123

积分

注册会员

Rank: 2

积分
123
发表于 2009-7-3 19:33:00 | 显示全部楼层

Re:FVF标志的顺序

FVF指定的元素都是固定顺序的,大致按Pos, normal, color, tex的顺序。
DX9级别显卡支持自定义顺序,API上要用vertexElement来指定,而不能用FVF,所以DX9才不推荐使用FVF。但即使用VertexElement,在DX8、DX7级别硬件上也必须符合FVF的顺序,否则运行时出错。

14

主题

37

帖子

37

积分

注册会员

Rank: 2

积分
37
 楼主| 发表于 2009-7-3 19:51:00 | 显示全部楼层

Re:FVF标志的顺序

原来如此,釜底抽薪这招果然阴狠无比,让别人想用都不知道怎么用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-19 20:05

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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