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 - Magnat

Pages: [1]
1
Général / Re: Question vertexArray a la place de sprite
« le: Janvier 16, 2019, 01:08:24 pm »
Alors normalement aucun ne se superpose ! ils remplissent tous des "cases" de 16*16, puis après j'ai bien des objets qui vont se poser dessus, mais ça je le gère appart et sont beaucoup moins présent donc ça je vais le gérer directement avec des sprite !
Par contre pour les collision, avant je gérait ça avec chaque sprite, mais si il y a une collision avec un vertexArray il peu le repérer aussi ? j'ai vue une méthode getBounds() mais sachant que ce sont plein de rectangle et pas qu'un seul j'ai du mal a penser que ca fonctionnerais, j'ai pensé a gérer les collision dans une class appart, ma class case, représentant chaque mur de 16*16, mais avant je gérait aussi l'affichage de cette class mais du coup je ne gérerais plus que les collisions.

2
Général / Re: Question vertexArray a la place de sprite
« le: Janvier 15, 2019, 11:40:04 pm »
Ahh je pensais qu'il fallait qu'ils se suivent, de haut en bas lors de leurs incrémentation dans le vector ! dans ce cas cela va beaucoup simplifier son ajout dans mon code, et si j'ai bien compris, entre afficher des millier de cas avec des draw, un draw d'un énorme vertexArray est beaucoup moins gourmand ?

(Ps : oui tout mes sprite pour les murs sont sur la même texture ^^)

3
Général / Question vertexArray a la place de sprite
« le: Janvier 15, 2019, 02:30:07 pm »
Bonjour tout le monde !
Je viens ici car j'ai commencé un projet, une sorte de rogue like a génération procédurale.
J'ai commencé a développer une générateur de niveau aléatoire et en fonction des salle qu'il génère (taille etc) je créer des sprite de 16*16 représentant chacun une case.
Mais j'ai entendu parlé de vertexArray et je me suis dit que cela serait peut être mieux pour mon projet pour l'affichage des salle. Pour le moment avec ma méthode et en faisant un draw sur chaque sprite je n'ai aucun lag mais je me demandais quand même si cela pouvait être fait sachant que chaque salle n'est pas forcement génère dans l'ordre (une salle plus proche de la position 0, 0 peut être généré en dernière et inversement) Du coup garder la méthode des sprite est peut être mieux ou bien je peux très bien convertir tout mon donjon en un vertexArray ?
Désolé si ça vous parait évident mais  je suis débutant en sfml !

4
Graphique / Bug d'affichage des Sprite
« le: Janvier 15, 2019, 12:25:07 am »
Bonjour, je suis actuellement sur un petit projet mais j'ai léger bug.
J'ai un personnage qui est le centre de ma vue, le centre est toujours actualisé sur mon personnage.
Mon monde est enfaîte un grand tableau de sprite de taille 16*16 qui sont draw a chaque affichage.
Mon problème est le suivant :

Quand je move mon personnage de valeur entière il n'y a aucun problème, par-contre si je le bouge de valeur float il arrive que des fois il y ai de micro blanc entre 2 sprite 16*16. C'est très bref mais cela arrive souvent. C'est assez problématique si je veux faire bouger mon personnage en fonction d'une clock..

Si vous avez une idée pour résoudre ce problème je suis preneur ! Merci d'avance !

(Sur beaucoup de sujet similaire il est dit qu'il faut désactiver le smooth des textures mais je ne les utilise pas et j'ai quand même essayé de setSmooth(false) et même problème !)

Edit : C'est bon j'ai trouvé une solution ! Enfaîte a partir du moment ou l'on bouge le sprite avec une valeur dépassant les 5 chiffres après la virgule le bug commençai a se produire du coup il suffit de limiter le float a un certain nombre après la virgule !

exemple :

test = move_clock.restart().asSeconds();
         x = x * ((int)(test*10000))/10000.f;
         y = y * ((int)(test*10000))/10000.f;

move_clock est une clock, x et y sont des float qui valent la vitesse (exemple 100.0)

Pages: [1]
anything