Husman

人は夢見る ゆえに生きるもの
posts - 14, comments - 37, trackbacks - 0, articles - 0
  IT博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

刚刚做了一个天龙八部的场景加载器

posted @ 2009-05-05 16:36 Husman 阅读(1003) | 评论 (2)编辑 收藏

说明:换装系统需要把模型拆分开来,换装时通过骨骼共享,骨骼合并,设置好骨骼权重,再把装备实体加到主实体的某根骨头上。
界面:面板停靠,折叠。
功能:单独mesh加载,身体各部位组装,骨骼合并,装备挂接。
 

posted @ 2009-04-08 09:15 Husman 阅读(1428) | 评论 (2)编辑 收藏

渲染到视口的Mesh是LOD版本。LOD版本的Mesh三角形个数受视距的影响,三角形个数要少一些。
怎样得到LOD版本的三角形个数呢?
下面给出一段代码
    RenderOperation ro;
    size_t faceCount;
    size_t val = 0;
    for (unsigned int i = 0; i < pEntity->getNumSubEntities(); ++i)
    {
        SubEntity* subEntity = pEntity->getSubEntity(i);
        subEntity->getRenderOperation(ro);
        if (ro.useIndexes)
        {
            val += ro.indexData->indexCount;
        }
        else
        {
            val += ro.vertexData->vertexCount;
        }
    }
    faceCount = val/3;
下面再给出实际的三角形个数的代码:
    size_t faceCount;
    size_t val = 0;
    for (unsigned int i = 0; i < pEntity->getNumSubEntities(); ++i)
    {
        SubEntity* subEntity = pEntity->getSubEntity(i);
        SubMesh* subMesh = subEntity->getSubMesh();
        if (subMesh.useSharedVertices)
        {
            val += subMesh.indexData->indexCount;
        }
        else
        {
            val += subMesh.vertexData->vertexCount;
        }
    }
    faceCount = val/3;


posted @ 2009-03-19 01:47 Husman 阅读(1357) | 评论 (0)编辑 收藏

可折叠式面板可以很高效的整合界面上控件,MFC自带的控件非常少,要达到可折叠的效果需要自己封装。


posted @ 2009-03-17 00:34 Husman 阅读(372) | 评论 (0)编辑 收藏

仅列出标题
共2页: 1 2