⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 datacurvedani.cpp.svn-base

📁 坦克大战游戏完整全套源代码
💻 SVN-BASE
字号:
#include "common/graphicEntity.h"

#include "game/dataCurvedani.h"

#include "gameDef.h"

// nothing here
struct StateInfo
{
    StateId sid;
    const char *name;
};
static StateInfo s_StateInfos[] = 
{
    {dataSI_Position0,  "Position0" },    // vector2
    {dataSI_Position1,  "Position1" }, // vector2
    {dataSI_Position2,  "Position2" },    // vector2
    {dataSI_Alpha,      "Alpha" },    // float
    {dataSI_Color,      "Color" },    // vector3
};

cAni::StateId DataTriangleRenderer::getStateId(const char *stateName) const
{
    for (int i = 0; i < sizeof(s_StateInfos) / sizeof(s_StateInfos[0]); i++)
    {
        if (0 == strcmp(stateName, s_StateInfos[i].name))
            return s_StateInfos[i].sid;
    }
    return cAni::StateId(cAni::InvalidStateId);
}

const char *DataTriangleRenderer::getStateName(cAni::StateId stateId) const
{
    size_t size = sizeof(s_StateInfos) / sizeof(s_StateInfos[0]);
    if (stateId < size && stateId == s_StateInfos[stateId].sid)
        return s_StateInfos[stateId].name;

#ifdef _DEBUG
    for (size_t i = 0; i < size; i++)
    {
        if (stateId == s_StateInfos[i].sid)
        {
            assert(0 && "s_StateInfos is not well organized");
            return s_StateInfos[i].name;
        }
    }
#endif
    return 0;
}

void DataTriangleRenderer::render(const Point2f &pos)
{
    for (size_t i = 0; i < tripleList.size(); i++)
        RenderQueue::getSingleton().render(pos, tripleList[i], GLI_UI, true);

    tripleList.clear();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -