游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2129|回复: 4

dx的X文件格式中怎么没有像VRML中的USE语法?

[复制链接]

1

主题

8

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2009-10-26 17:37:00 | 显示全部楼层 |阅读模式
最近想从程序中导出X文件。程序是用opengl开发的 [em11]
比如我想画一辆车,这车有四个轮子,正常只要记录一个轮子的MESH(比如叫wheel1),在frame中用变换阵将该MESH变换至相应位置即可。然而,X文件格式中没有像VRML中的USE语法,即不存在MESH的复用,这样每次都要输出重复的MESH。势必导致文件很大。

这该怎么解决?
下面的附件是个例子,是用3DsMAX导出。绘制了四个矩形,MESH重复了四次。。非常不合理。

期待达人出现!

0

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2009-10-26 19:34:00 | 显示全部楼层

Re: dx的X文件格式中怎么没有像VRML中的USE语法?

巧了!你的问题刚发布就被我看到了,我对vrml 不熟悉(但久闻其名),对X文件有些了解(最近正在研究中),
vrml肯定比较高级些,算是一种语言吧,X文件只是微软制定的一种存储3D模型文件格式(完全开放的),考虑到X文件格式可以被其它程序方便读取利用,所以设计不能太复杂。
     打个比方如果你再MAX创建一个BOX,然后复制1000个,很好,MAX能很好的处理这些,在内存里也许只创建1个BOX,其它999个BOX只是对第1BOX的引用,它们唯一的区别是位置不同,至到你修改其中的一个BOX的属性,MAX在才会真正创建第2个BOX。而X文件并不认识MAX中BOX ,它只认识MESH,所以导出X文件前,就会把每个BOX都转换成MESH,数据量就会巨增。
如果你要改变这种情况,就得你对X文件进行扩展,设计一个自己的模板来保存以上的模型,对X文件的扩展可以参照X文件相关资料。

1

主题

8

帖子

8

积分

新手上路

Rank: 1

积分
8
 楼主| 发表于 2009-10-26 20:46:00 | 显示全部楼层

Re:dx的X文件格式中怎么没有像VRML中的USE语法?

非常感谢。您所说的X文件的扩展如何实现,能否指教一二?本人对X文件的格式尚不是很了解

0

主题

769

帖子

1052

积分

金牌会员

Rank: 6Rank: 6

积分
1052
发表于 2009-10-27 17:43:00 | 显示全部楼层

Re:dx的X文件格式中怎么没有像VRML中的USE语法?

《DirectX 高级动画制作》一书中有对X文件做很详细的说明

1

主题

8

帖子

8

积分

新手上路

Rank: 1

积分
8
 楼主| 发表于 2009-10-28 22:24:00 | 显示全部楼层

Re:dx的X文件格式中怎么没有像VRML中的USE语法?

谢谢楼上的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-18 13:28

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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