Bonjour.
J'ai un petit pb avec les vertex. Rien de bien méchant , j'aimerais simplement savoir si c'est normal :
Lorsque j'essaie de changer le couleur / alpha des vertex , je me vois obligé de procéder après le positionnement pour que cela prenne effet. Si je procède au changement de couleur avant, il n'est pas pris en compte.
ex :
_vertex[0] = sf::Vector2f( x , y ) ;
_vertex[1] = sf::Vector2f( x + _pictureSize.x , y ) ;
_vertex[2] = sf::Vector2f( x + _pictureSize.x , y + _pictureSize.y ) ;
_vertex[3] = sf::Vector2f( x , y + _pictureSize.y ) ;
for ( int i = 0 ; i < 4 ; i ++ )
{
_vertex[i].color.a = _alpha ;
}
_vertex[0].texCoords = sf::Vector2f( _counterX * _pictureSize.x , _counterY * _pictureSize.y ) ;
_vertex[1].texCoords = sf::Vector2f( _counterX * _pictureSize.x + _pictureSize.x , _counterY * _pictureSize.y ) ;
_vertex[2].texCoords = sf::Vector2f( _counterX * _pictureSize.x + _pictureSize.x , _counterY * _pictureSize.y + _pictureSize.y ) ;
_vertex[3].texCoords = sf::Vector2f( _counterX * _pictureSize.x , _counterY * _pictureSize.y + _pictureSize.y ) ;
ca ne prend pas effet. En revanche, comme suit, ca marche :
for ( int i = 0 ; i < 4 ; i ++ )
{
_vertex[i].color.a = _alpha ;
}
_vertex[0] = sf::Vector2f( x , y ) ;
_vertex[1] = sf::Vector2f( x + _pictureSize.x , y ) ;
_vertex[2] = sf::Vector2f( x + _pictureSize.x , y + _pictureSize.y ) ;
_vertex[3] = sf::Vector2f( x , y + _pictureSize.y ) ;
_vertex[0].texCoords = sf::Vector2f( _counterX * _pictureSize.x , _counterY * _pictureSize.y ) ;
_vertex[1].texCoords = sf::Vector2f( _counterX * _pictureSize.x + _pictureSize.x , _counterY * _pictureSize.y ) ;
_vertex[2].texCoords = sf::Vector2f( _counterX * _pictureSize.x + _pictureSize.x , _counterY * _pictureSize.y + _pictureSize.y ) ;
_vertex[3].texCoords = sf::Vector2f( _counterX * _pictureSize.x , _counterY * _pictureSize.y + _pictureSize.y ) ;
Donc...Est-ce normal ? Il y a-t-il une methode pour éviter ca et changer la couleur avant de positionner ?
( mon but évidement, étant de pouvoir modifier les couleurs depuis une autre fonction ).
Merci si vous pouvez m'aider