Bienvenue, Invité. Merci de vous connecter ou de vous inscrire. Avez-vous oublié d'activer ?

Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - clements

Pages: [1]
1
L'idée c'est de pouvoir unzoom sur ma map pour la voir de manière globale (donc visible dans son intégralité sur l'écran), j'utilise les fonctionalités des sf::View pour gérer le niveau zoom.
Chacune de mes tiles font 32px de côté.
Prenons le cas extrême d'une map de 4000*4000tiles, il me faudrait une texture de 4000*32 = 128000px de côté sur laquelle je vais ensuite devoir dezoomer afin de l'avoir sur l'écran.

Je vois mal comment faire ça avec une RenderTexture de la taille de l'écran.

Voilà ce que je fais actuellement avec une map de 400*400tiles:
Donc ce que je veux c'est pouvoir faire ça avec beaucoup plus de tiles en limitant l'impact sur les performances.

2
Le souci c'est qu'il n'est pas possible de créer une RenderTexture d'une telle taille.

3
Bonjour,
Je suis en train de réaliser un éditeur de tilemap à l'aide de la SFML, j'utilise un VertexArray pour effectuer le rendu de la map mais ça ne semble pas suffisant, j'ai quelques soucis de performance.
En fait je cherche à pouvoir faire le rendu d'une tilemap dans son intégralité sur l'écran,
pour les maps < 1000*1000 tiles, j'ai pas trop de souci, mais pour des maps plus grandes le framerate en prend un sacré coup et ça semble demander beaucoup de boulot au GPU et mon vertex array consomme énormément de mémoire vive (logique).

Je suis donc à la recherche d'une solution permettant d'afficher un très grand nombre de tiles à l'écran en limitant l'impact sur les performances.

Autre question, quand il sagira du jeu en lui même, il ne sera plus nécessaire d'afficher toutes les tiles de la map à l'écran, est-il toujours possible d'utiliser le vertex array en limitant la zone rendue ?

4
Graphique / Problème sf::Sprite
« le: Août 21, 2013, 04:38:12 pm »
Bonjour à tous, voilà mon souci:

sf::Sprite* Sprite::OnLoad(char* File) {
    sf::Image spriteSheet;
    sf::Texture texture;
    sf::Sprite* Sprite;

    spriteSheet.loadFromFile(File);
    spriteSheet.createMaskFromColor(sf::Color(255, 0, 255));

    texture.loadFromImage(spriteSheet);

    Sprite->setTexture(texture, false);

    return Sprite;
}

C'est un extrait d'une classe de gestion de sprite pour un moteur de jeu.
Le code compile mais ça crash.

Citation de: Debugger
Program received signal SIGSEGV, Segmentation fault.
In sf::Sprite::setTexture (this=0x44fc56 <std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()+70>, texture=..., resetRect=false) at D:\developpement\sfml\sfml\src\SFML\Graphics\Sprite.cpp:71 (

Si vous avez besoin d'avantage d'informations demandez moi.

Pages: [1]
anything