Forum de la communauté SFML
Général => Projets SFML => Discussion démarrée par: lezebulon le Mai 26, 2012, 01:17:55 am
-
Hello
Je vois qu'il y a pas mal de bibliothèques qui se greffent à SFML développées ici et qui sont pas mal (Thor , Zoost etc).
Est-ce que quelqu'un aurait d'autres idées de fonctionalités annexes à rajouter à SFML via une petite library? Je chercher à m'améliorer en C++ et à coder qqche en rapport avec SFML mais la plupart des idées que j'avais on déjà été implémentées dans Thor ou autre....
-
vu que c'est pour t'améliorer, qu'est-ce qui t'en empêche ? code ce que tu veux et ensuite compare avec les autres.
Tu auras tout le temps de trouver une idée originale quand tu voudras faire une lib “éprouvée” que tu auras envie de publier.
-
Tu peux aussi proposer quelque chose de plus haut niveau, comme un petit moteur pour faire des jeux en particuliers ?
J'ai déjà vu un moteur pour RTS ici, ça peut faire un bon exercice :)
-
Tu peux aussi proposer quelque chose de plus haut niveau, comme un petit moteur pour faire des jeux en particuliers ?
J'ai déjà vu un moteur pour RTS ici, ça peut faire un bon exercice
Je pense que c'est légèrement ambitieux, comme exercice.
Il y a pas mal de choses à greffer à SFML, mais qu'est-ce qui t'intéresse ? Audio, graphisme, réseau, fenêtrage, système ?
-
Niveau graphismes il serait classe d'avoir une lib de dessin vectoriel. Je pense aussi à l'IA, qui n'est pas trop représentée sur le forum. Dans les deux cas ça ne serait pas évident à mettre en place, mais t'apprendrait beaucoup et serait très utile à la communauté. :D
-
Tu peux aussi proposer quelque chose de plus haut niveau, comme un petit moteur pour faire des jeux en particuliers ?
J'ai déjà vu un moteur pour RTS ici, ça peut faire un bon exercice
Je pense que c'est légèrement ambitieux, comme exercice.
Il y a pas mal de choses à greffer à SFML, mais qu'est-ce qui t'intéresse ? Audio, graphisme, réseau, fenêtrage, système ?
Moi ça serait plutôt graphismes ou système (enfin avec système c'est ptet plus difficile de rester dans le cadre de SFML), j'avais pensé à un moteur de particules mais visiblement c'est déjà bien avancé dans Thor...
Sinon le dessin vectoriel why not, mais à vrai dire j'ai peur que ça pas possible à intégrer avec SFML vraiment... du genre comment afficher "une courbe" en SFML? Je sens qu'il faudrait passer direct par OpenGL
-
A vrai dire le module de dessin de la SFML 2.0 est suffisamment bas niveau grâce à VertexArray pour dessiner à peut prêt tout ce que tu veux. Pour te motiver, avec le vectoriel, on peut imaginer du texte qui garderait sa pureté peut importe le niveau de zoom ! Une lib s'appuyant sur la SFML, qui pourrait lire un fichier XML, rendrait les formes vectorielles au chargement et lorsqu'elles seraient modifiée, serait un must-have !
-
Pour préciser un peu les choses, le dessin vectoriel se base typiquement sur deux standards : SVG (pour définir des fichiers vectoriels) et OpenVG (pour le dessin). Donc l'idée ce serait de partir de ça, et d'en faire une implémentation à la sauce SFML.
-
Ok je vais me pencher un peu sur ça pour voir si ça peut être faisable, ça me plait pas mal comme idée!
edit:
A vrai dire le module de dessin de la SFML 2.0 est suffisamment bas niveau grâce à VertexArray pour dessiner à peut prêt tout ce que tu veux.
Et justement, une courbe c'est possible? Même en passant par sf::vertex je vois pas trop, à moins de le faire pixel par pixel, mais je pense pas que ce soit ce que tu voulais dire?
-
Soit avec un nuage de points très rapprochés, soit de petits segments contigus.
-
Soit avec un nuage de points très rapprochés, soit de petits segments contigus.
Tout finit par être des triangles ou des pixels, puisque c'est tout ce que la carte graphique comprend au final. Mais l'intérêt ici est justement de passer par un standard intermédiaire qui permet de définir des objets paramétriques, et qui fait la conversion en triangles/pixels automatiquement.
Le dessin vectoriel est tellement compliqué (du moins si on considère toutes les opérations et primitives typiques), il est complètement illusoire de vouloir l'émuler directement avec une lib classique. Le but ici ce serait pincipalement de faire un front-end à OpenVG, pas de tout implémenter à la main.
-
Ok par contre je ne suis pas sûr d'avoir capté vraiment ce qu'est Open VG :D
En gros ils fournissent "juste" une interface de référence pour les dessins vectoriels et après chacun est libre de l'implémenter c'est ça? Du coup les implémentations sont faite à part, et moi je ré-utilise cette implem pour SFML?
-
En gros ils fournissent "juste" une interface de référence pour les dessins vectoriels et après chacun est libre de l'implémenter c'est ça? Du coup les implémentations sont faite à part, et moi je ré-utilise cette implem pour SFML?
Voilà. C'est exactement comme OpenGL.
-
J'avais bossé avec ShivaVG pour faire un frontend, je te conseille de télécharger la docsheet en reference card sur le site d'openVG, tu as trois pages sans réelles explications mais quand tu vas commencer à comprendre le principe ca va enormément te servir ;)
-
Justement je suis en train de regarder ShivaVG, c'est pas mal mais ça m'étonne qu'il n'y ait pas d'implem OpenSource plus "connue".
T'avais bosser sur un truc en rapport avec SFML dessus? Parce que j'ai pas envie de refaire ça si tu l'as déjà ça :D
-
Ce que j'ai fait est assez mauvais en sois, on peut faire bien mieux plus rapidement.
Il y a plusieurs implémentations, mais elles ne sont soit pas completes soit pas totalement libre, voire pas du tout, soit en GPL, c'est simplement que le SVG n'est pas encore beaucoup utilisé.
mais tu avais ça sur le fofo anglais : http://neuronspew.wordpress.com/2010/06/10/shivavg-in-c-with-sfml-working/
-
Ok bon je vois que son projet a pas bougé depuis 2 ans, donc je pense que finalement son truc a pas vraiment abouti (et c'est du C# en plus).
Bref effectivement je suis en train de voir comment intégrer shivaVG à SFML et ça a pas l'air trop galère, je pense que ça peut etre assez fun de faire une surcouche orientée objet :)
Par contre le truc qui me gène c'est que je sens que je vais devoir faire des modifs sur son implémentation de OpenVG, déjà là il ne gère pas les contextes OpenGL et j'imagine que ça va merder dans SFML si on a par ex 2 fenêtre SFML en meme temps etc...
-
D'ailleurs j'ai une question con mais au final ne suis-je pas obligé d'utiliser shivaVG de tout façon?
le standard openVG est cool mais en soit il ne dit pas "comment" vont être dessinées les objets, du genre l'implem fournie sur le site officiel n'utilise pas OpenGL.
Vu que moi au final je veux forcemment passer par OpenGL, j'ai plus vraiment le choix de l'implémentation non?
-
Je ne sais pas comment les différentes implémentations d'OpenVG fonctionnent au niveau rendu. Il faut regarder, et voir comment ça peut se mixer avec SFML. A priori il faudra en trouver une qui utilise un back-end OpenGL.