"秒大刀"之旅----M2模型绘制

2019-02-20 12:52:48 浏览数 (1)

没怎么玩WOW, 不知道这刀叫什么名字. 于是乎我给起了一个代号: "秒大刀"(我朋友的网名@_@)

这是ModelViewer里的效果, 也是俺努力地方向:

  • 2009/3/2: 实现Mesh绘制

其实这个很简单, 先把ModelHeader从文件里读出来, 根据顶点偏移和顶点数量读取到顶点信息, 创建VertexBuffer.

再根据ModelView信息(传说是LOD相关的?)中的index偏移和数目读取数据并创建IndexBuffer

根据ModelView中的SubMesh数量和偏移读取各SubMesh的数据

依次绘制SubMesh. (PS: 这里的坐标系估计是右手的)

  • 2009/3/8: 贴上纹理了

 这把刀的模型数据里的texture unit数据有三个, 见下图:

第一个type=2, 说明文件名不在这个m2文件里. 另外两个根据最后的偏移地址就能读到了, 好像是高光贴图.

由于DBC文件我还没解析, 所以直接把那张图片拿出来创建了........

下面是效果, 后两张贴图没贴上, 没高光, 也没有光照:

0 人点赞