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.


Sujets - Sonkun

Pages: [1]
1
Discussions générales / python-sfml2: version 1.1
« le: Juin 16, 2012, 08:38:04 pm »
La dernière version que j'ai annoncé il y a deux semaines était une version rapide. J'avais implémenté en priorité les parties les plus importantes de l'API (les classes et fonctions les plus utilisées) pour rendre le binding le plus utilisable possible. J'ai maintenant le plaisir de vous annoncez que la mise à jour est finie et que le binding est complet, propre et stable.

Quand je dis complet, je me référe à un binding contenant toutes les classes et fonctions disponibles dans la SFML séparées dans cinq différents modules: system, window, graphics, audio et network. Le module réseau est fournis dans le but d'être exhaustive mais son utilisation est découragée parce que la bibliothèque standard de Python en fournit fournit déjà un. Une documentation, un tutorial and les exemples officiels sont inclus pour vous aider à utiliser le binding. Par exemple, ça vous explique comment intégré pySFML2 avec PyQt4.

En disant propre, je veux parler d'un binding où les messages d'erreur sont gérés proprement et où vous ne devez pas utiliser un "byte string" pour tout lorsque vous utilisez Python 3. Le code source est aussi propre donc pour les personnes qui aimeraient contribuer ou tout simplement modifier le code, ils trouveront un code suivant des conventions, utilisant la syntaxte correcte de Cython et séparé dans différents fichiers.

En disant stable, je veux parler d'un binding où des tests automatiques ont été fait, et pourra dans le future m'empècher d'introduire de nouvelles erreurs, de nouveau bugs quand je ferais des changements. Bien sûr je ne peux pas prétendre qu'il n'y ai pas de bug parce que c'est sa première sortie et j'espère recevoir un maximum de feedbacks afin de corriger les derniers bugs.

Je considère le binding plus pythonic parce qu'il n'essaie pas d'émuler les multiples définitions qu'on trouve en C++ et que Python ne supporte pas, et vous n'aurez pas à vous préoccupé des types, ce qui donne plus de fléxibilité au binding.

Cette version inclus deux exemples en plus: pong.py et shader.py.

Des installateurs pour Windows et des pacakges pour Ubuntu sont fournit pour l'aisance d'installation.

Pour vous donner un aperçu, ici sont quatres bout de code qui résume des fonctionnalitées intéressante que vous ne trouvez pas dans le binding officiel.


Importez les modules indépendamment.
from sfml.window import sf # need only the window module ?
from sfml.audio import sf # need only the audio module ?


Plus de flexibilité quand vous utilisez les vectors.
vector = sf.Vector2()
vector.x = 23 # set an integer
vector.y = 6.42 # set a float
vector.z = Decimal(0.12346578) # set a decimal for advantages over the float datatype


La manière dont vous gerez les évenements pourraient vous surprendre ;)
for event in window.events:
    if type(event) is sf.CloseEvent:
        window.close()

    if type(event) is sf.KeyEvent and event.pressed:
        character.fire()

    if type(event) is sf.FocusEvent:
        if event.lost: music.stop()
        elif event.gained: music.play()


sf.Image a une méthode spécial qui vous permet the visualiser l'état courrant d'une image. Très utile pour débugger.
image.load_from_file("myimage.png")
image.create_mask_from_color(sf.Color.YELLOW)
image.show() # launch a viewer with the current image state


Je vous renvois à la documentation en ligne pour l'installation et les explications.

Site web: http://openhelbreath.net/python-sfml2/
Documentation: http://openhelbreath.net/python-sfml2/documentation.html
Bugtracker: http://openhelbreath.net/python-sfml2/flyspray/
Github: https://github.com/Sonkun/python-sfml2

La prochaine version devrait ajouter les derniers examples officiels manquants (voip.py, x11.py, cocoa.py et win32.py), règler un maximum de bugs (si il y en a) et fournir des installateurs pour Mac OSX et les pacakges pour Fedora.

J'espère qu'il n'y a pas de bug majeur qui vous empéchera d'utiliser le binding.

2
C / Source de la SFML2 RC.
« le: Juin 02, 2012, 11:50:05 pm »
Les binaires sont fournit mais pas les sources. Pour la SFML2 en C++ il y a un tag sur github qui renvoit vers le bon commit, c'est possible de fournir celui pour le binding C ?

Merci.

3
Python / python-sfml2
« le: Mai 31, 2012, 04:59:11 pm »
J'ouvre ce thread pour parler du binding, si vous avez des questions, des bugs à faire parvenir ou des commentaires, merci de le faire ici. :)

4
Il y a trois semaines, j'ai créé un topic pour annoncer mon projet, un binding python pour la SFML2. A ce moment là c'était le résultat de mes travaux de l'hiver précédent mais entre-temps j'ai du partir à l'étranger laissant le projet dans son état actuel, sans le publier. Maintenant que je suis revenu, j'ai voulu publier ce travail, non compatible avec la version actuel de developement, avant d'aller de l'avant et le mettre à jour avec la release candiate. Trois semaines plus tard, nous voilà et le projet est mis à jour avec la release candiate!

Malgré le fait que j'ai passé les 3 semaines entière à bosser sur sa mise à niveau, il y a pas mal de chose que je n'ai pas eu le temps d'implémenter. Cependant, j'ai concentré mes efforts sur sa fonctionnalitée; implémenter les classes les plus importantes, vérifier si elles fonctionnent sur toutes les platformes.

Je considère donc cette version comme une "fast release" et le suivante devrait pas tarder à suivre. Cette fast release vient avec ses bugs, ses fonctionnalitées non encore implémentées, une documentation presque complète.

Cette fois, le binding vient avec les installeurs pour Windows que je n'ai pas eu l'occasion de faire la dernière fois, et comme toujours un depot Debian/Ubuntu pour l'aisance d'installation. Ce depot fournit pas mal de package: la sfml2-rc, le binding et leur examples!

Je vous renvois à la documentation en ligne où vous trouverez tout les explications pour l'installation, la documentation, des scripts example, des explications sur le projet.

Webiste: http://openhelbreath.net/python-sfml2/
Bug-tracker: http://openhelbreath.net/python-sfml2/flyspray

Le bug-tracker est temporairement en  mode read-only, si vous rencontrez des bugs merci de m'en faire part sur le forum ou via le système "Issues" de github, je les ajouterais dans le bug tracker.

Téléchargement et installation
Window:
Télécharger l'installeur adéquat et suivez les instructions (vous n'avez pas besoin d'avoir la SFML2 installé).

pySFML2-1.0.0.win32-py2.7.exe [1.6 MB] [Python 2.7] [32 bit]
pySFML2-1.0.0.win32-py3.2.exe [1.6 MB] [Python 3.2] [32 bit]

Les installeurs pour la platforme 64bits ne sont pas encore disponible, si quelqu'un les veut rapidement, qu'il me le fasse signe :)

Ubuntu:
Le depot peut être ajouté avec en tappant:

sudo add-apt-repository ppa:sonkun/sfml
sudo apt-get update

Les packages fournits sont:
  • libsfml2
  • libsfml2-dev
  • libsfml2-dbg
  • libsfml2-doc
  • sfml2-examples
  • python-sfml2
  • python3-sfml2
  • python-sfml2-doc
  • pysfml2-examples

Notez que les packages examples installent également des scripts qui permettent de lancer les examples avec une simple de commande:

sfml2-sound # lance l'example 'sound'
sfml2-shader
sfml2-x11
sfml2-voip

pysfml2-sound         # lance le même example but en fait, c'est un script python qui utilise le binding
pysfml2-sockets
pysfml2-spacial-music # pas un example sfml officiel
pysfml2-pyqt4         # pas un example sfml officiel

5
Discussions générales / Encore un binding pour la SFML.
« le: Mai 11, 2012, 09:24:40 pm »
Salut tout le monde,

Je voulais vous faire part de mon projet, un binding de la sfml2 pour python. Il est aussi écrit en cython et il a d'ailleurs été forké du binding official écrit par Bastien Lénard le 20 novembre 2011 parce que j'avais besoin de certaines fonctionnalitées pas encore implémentée à l'époque.

Il s'est depuis beaucoup amélioré et j'ai décidé de partager mon travail.

La version que je vais vous présenté est basée sur un snapshot de la sfml qui était disponible le 20 novembre 2011 et je l'ai appelé sfml1.9. J'ai décidé de rester et travailler sur cette version parce que maintenir un binding à jour avec les dernières modificiations prends beaucoup de temps (aussi parce que j'ai d'autres projets utilisant le binding et qu'un changement dans la sfml2 provoques un changement dans le binding qui provoques la modification de tout les codes de mes projets).

Cette version est donc la 0.9 et j'espère sortir bientôt la prochaine (v1.0) qui sera compatible avec la release candidate; j'ai déjà commencé à travailler dessus.

Malgrés sa dépendance au snaphot, il fournit quelques fonctionnalités qui pourrait intéressé certains.

Qu'est-ce qui a changé depuis le fork ?
(copier-coller de la documentation)
  • Le module réseau a été implémenté
  • Le module audio a été ré-implementé (le module manquait certaines classes)
  • Certaines limitations ont disparu tel que la dérivabilité de la classe sf.Drawable
  • Les modules sont implémenté séparément, vous pouvez les importé indépendament
  • Supporte Cython 0.16 (plus rapide)
  • Presque tout les examples officiels sont disponible et de nouveau ont été ajouté (tel que sur l'intégration avec pyqt4)
  • Une couche supplémentaire à la SFML a été ajouté pour éviter de de se préoccupé des type et pour fournir une plus grande flexibilitée
  • Le projet est disponible dans un dépot launchpad pour faciliter l'installation et les mises à jour

Je vous invite à lire la documentation (en anglais) pour en savoir plus (consulter aussi les examples): http://openhelbreath.net/python-sfml2/0.9/doc/introduction.html

Comment installer ?
Lisez la documenation sur comment compiler and si vous êtes sous ubuntu 12.04, les packages sont disponible dans un dépot ppa. Tapez:
sudo apt-add-repository ppa:sonkun/sfml
sudo apt-get update
sudo apt-get install libsfml2-dev python-sfml2

Notez que les packages fournissent les examples aussi, vous pourriez vouloir installer sfml2-examples et/ou python-sfml2-examples, ensuite vous tapez juste.
sfml2-<nom de l'example>
python-sfml2-<nom de l'example>

Par examples:
python-sfml2-pyqt4 # will run script pyqt4.py that use the binding.
sfml2-sound
pyton-sfml2-shader

Si vous êtes intéressé par suivre le dévelopment de la version 1.0 et d'avoir des mises à jour automatiques, je vais mettre en place un dépot supplémentaire nomé sfml-development avec la sfml2-rc dedans et le binding.

Liens:
Site web principal: http://openhelbreath.net/python-sfml2/
Documentation: http://openhelbreath.net/python-sfml2/0.9/doc/
Téléchargements: http://openhelbreath.net/python-sfml2/downloads/ ou https://github.com/Sonkun/python-sfml2/downloads
Bug-tracker: http://openhelbreath.net/python-sfml2/flyspray/
Launchpad ppa: https://launchpad.net/~sonkun/+archive/sfml

Pages: [1]