keil obj 文件 结构_obj文件基本结构及读取 - 计算机图形学

本文介绍了如何解析Obj格式的3D模型文件,并将其应用于DirectX 10的渲染。文章详细讲解了Obj文件的关键字,如顶点、法线、纹理坐标等,并给出了一个简单的Obj模型文件示例。同时,讨论了在DirectX 10中创建ID3DX10Mesh缓冲区的注意事项,包括顶点缓冲、索引缓冲和属性缓冲的创建。在渲染过程中,要注意DrawText接口对深度缓冲的影响,以及如何恢复渲染状态。
摘要由CSDN通过智能技术生成

引言:      最近开始用DirectX 10了,感觉和Dx9还是有一些变化的。虽然还不能完全理解这些变化所带来的优势,但是基本还是适应了。      唯一觉得不适应的就是在Dx10的接口里面,D3DX库里面已经没有对于.x模型文件的直接支持了。就是说不能通过D3DX来读取.x模型文件了,Dx10提供了一种新的模型格式sdkmesh。但是为了读取这种模型,或者自己写解析器,可能会很复杂,或者用DXUT的接口,但是如果仅仅为了读取模型文件就用了这个庞大的接口多少显得有些累赘。所以我自己也弄了一个读取Obj格式的模型文件的Demo,对于想读取自己自定义格式的模型文件的朋友,可以看看。希望能有一点帮助。

正文:       Obj是一种应用广泛的模型格式。在很多三维建模软件里面,都可以找到Obj格式的导出插件。本文简单解析了Obj的最基本的格式,可以读取由三角形组成的模型。

为了简单起见,这里分析的Obj是ASCII码格式的,这样用户可以用wordpad查看obj文件里面的内容,配合程序的调试,可以更好的理解文件解析的过程。其实这个模型格式可以很简单的描述一个Mesh。下面我们简单看看一些关键字:# 这个就相当于C++代码里面的//,如果一行开始时#,那么就可以理解为这一行完全是注释,解析的时候可以无视

g 这个应该是geometry的缩写,代表一个网格,后面的是网格的名字。

v v是Vertex的缩写,很简单,代表一个顶点的局部坐标系中的坐标,可以有三个到四个分量。我之分析了三个分量,因为对于正常的三角形的网格来说,第四个分量是1,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值