Mesh:setVertexAttribute (Français)

Disponible depuis LÖVE 0.10.0
Ce-tte function n'est pas supporté-e par des versions plus anciennes.

Définit les propriétés d'un attribut spécifique d'un vecteur du maillage.

Les maillages sans format de vecteur personnalisé spécifié lors de l'appel de love.graphics.newMesh ont leur position comme premier attribut, les coordonnées de leur texture comme seconde et leurs couleurs comme troisième.

Fonction

Synopsis

Mesh:setVertexAttribute( vertexindex, attributeindex, value1, value2, ... )

Arguments

number (Français) vertexindex
Index du vecteur devant être modifié (commence à 1).
number (Français) attributeindex
Index de l'attribut à l'intérieur du vecteur à modifier (commence à 1).
number (Français) value1
Nouvelle valeur pour la première composante de l'attribut.
number (Français) value2
Nouvelle valeur pour la seconde composante de l'attribut.
number (Français) ...
Autres composantes d'attribut de vecteur supplementaires.

Retourne

Rien.

Notes

Composantes d'attribut qui existent dans l'attribut mais ne sont pas spécifiées comme arguments, prennent 0 par défaut pour les attributs avec le type de donnée float (nombre à virgule flottante), et 1 avec le type de donnée byte (octet).

Exemples

Modifie les couleurs d'un maillage standard après sa création.

-- Les maillages standard avec attributs de position, coordonnées de texture et couleur.
mesh = love.graphics.newMesh {
    {0,   0,    0, 0,  1, 1, 1, 1}, -- premier vecteur positionné à (0, 0)
    {400, 0,    0, 0,  1, 1, 1, 1}, -- second vecteur positionné à (400, 0)
    {200, 400,  0, 0,  1, 1, 1, 1}, -- troisième vecteur positionné à (200, 400)
}

local time = 0

function love.update(dt)
    time = time + dt

    for i = 1, mesh:getVertexCount() do
        -- L'attribut du 3e vecteur, pour un maillage standard, est sa couleur.
        mesh:setVertexAttribute(i, 3, (time * 10) % 1, 1, 1)
    end
end

function love.draw()
    love.graphics.draw(mesh)
end

Voir également


Autres langues