Direct3D学习(六):动画基础(3)网格模型基础




ID3DXMesh继承自ID3DXBaseMesh接口
ID3DXBaseMesh包含一个顶点缓存和一个索引缓存

一个mesh是由一组子集(subset)组成的
子集是具有相同属性的一组三角形
这里的属性指材质,纹理,渲染状态
属性ID存在mesh的属性缓存中,DWORD类型
子集i与材质和纹理数组的第i项对应

Mesh的顶点和索引缓存可以被重组以便更快地渲染,如根据属性把三角形重新排一下序
优化有时要用到邻接数组

Mesh可以被拷贝,拷贝的同时可以改变顶点格式

Mesh不包括顶点法线数据时,可以用D3DXComputeNormals来计算
     HRESULT D3DXComputeNormals(  
          LPD3DXBASEMESH pMesh, // Mesh to compute normals of.
          const DWORD *pAdjacency // Input adjacency info.  
    );  
它会使用平均法线来产生法线

ID3DXPMesh用来表示渐近网格,允许我们通过简化缩减转换(Edge Collapse Transformations,ECT)来简化mesh,这在LOD里很常用

这根mipmaps纹理很像。近了用高精度,远了用低精度,避免浪费,还可以加快速度呢

包围体
常见的有包围盒和包围球

常用于可见性检测和碰撞检测
D3DX库提供了计算它们的函数,为别为D3DXComputeBoundingBoxD3DXComputeBoundingSphere

Reference
Introduction.to.3D.Game.Programming.with.DirectX.9.0
 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值