Ir para conteúdo

calculo de animação spritesheet


cgm2k7

Posts Recomendados

Boa tarde!
Estou criando um pequeno game 2d em directx11, estou na para de animar os sprite.
Veja mina duvida: 
Tenho uma folha de sprite com 18 quadros, 3 linha com 6 colunas.
Consigo fazer a animação de modo bem manual. Problema é que se precisar aumentar as colunas ou linhas preciso mudar todo  o código da animação.
Gostaria se alguém ai puder me ajudar  a fazer este código mais automático.

esse e o código:

[code=delphi]float *v = new float[m_NumRow];
    for (size_t i = 0; i < m_NumRow; i++)
    {
        v[i] = i*(1.0f/m_NumRow);
    }
    float t = 0,  k = 1.0f/m_NumRow;
    if (currentFrame >= m_NumCol)
    {
        t = v[1];
    }
    if (currentFrame >= (m_NumCol + m_NumCol))
    {
        t = v[2];
    }
    if (currentFrame < m_NumCol)
        t = v[0];

    m_vertices[0].uv.x = (float)(currentFrame) / m_NumCol;
    m_vertices[0].uv.y = t + k;

    m_vertices[1].uv.x = (float)(currentFrame) / m_NumCol;
    m_vertices[1].uv.y = t;  

    m_vertices[2].uv.x = (float)(currentFrame + 1.0f) / m_NumCol;
    m_vertices[2].uv.y = t;

    m_vertices[3].uv.x = (float)(currentFrame + 1.0f) / m_NumCol;
    m_vertices[3].uv.y = t + k;

Link para o comentário
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...