Husman

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

公告


职业: 网络游戏程序员
QQ: 88936393
Email: ritei16@163.com
所在地:上海
出生时间: 1982年
毕业时间: 2005年

常用链接

搜索

  •  

积分与排名

  • 积分 - 30161
  • 排名 - 169

最新评论

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

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

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

posted @ 2009-04-08 09:15 Husman 阅读(1626) | 评论 (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 阅读(1472) | 评论 (0)编辑 收藏

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


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

仅列出标题
共2页: 1 2