bonjour,
J’essaie d'utiliser la nouvelle architecture graphique. Mais je n'arrive pas a afficher une image à la main avec la class vertexArray. Voila mon code :
#include <iostream>
#include <SFML/Graphics.hpp>
int main(int argc, char** argv)
{
sf::RenderWindow window(sf::VideoMode(800, 600), "My window");
sf::Texture tileset;
tileset.loadFromFile("tmw_desert_spacing.png");
sf::Sprite sprite(tileset);
sprite.setOrigin(tileset.getSize().x,0);
sprite.setPosition(800,0);
sf::VertexArray m_vertex_array(sf::Quads,4);
m_vertex_array[0].position = sf::Vector2f(0,0);
m_vertex_array[1].position = sf::Vector2f(0,100);
m_vertex_array[2].position = sf::Vector2f(100,100);
m_vertex_array[3].position = sf::Vector2f(100,0);
m_vertex_array[0].texCoords = sf::Vector2f(0, 0);
m_vertex_array[1].texCoords = sf::Vector2f(0, 1);
m_vertex_array[2].texCoords = sf::Vector2f(1, 1);
m_vertex_array[3].texCoords = sf::Vector2f(1, 0);
sf::RenderStates renderStates;
renderStates.texture = &tileset;
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
else if(event.type == sf::Event::KeyPressed)
window.close();
}
window.clear(sf::Color::Green);
window.draw(sprite);
window.draw(m_vertex_array, renderStates);
window.display();
}
return 0;
}
La sprite s'affiche bien mais le vertexarray affiche un beau carré noir. Qu'est-ce que j'ai loupé ?
Merci