[MAJ] Edje of halloween : l'EDC en pratique avec (em)bryo -! info en sursis !-

Fête d'Halloween oblige, je n'ai pas pu résister à mettre un peu d'humour (noir) dans le titre de cette news.

 

Sous ce titre donc se cache le résultat de mes recherches sur Enlightenment et en particulier sur le module Edje (d'où le "Edje of" du titre).

 

Sachez qu'il est possible de créer un jeu vidéo simple rien qu'en utilisant le langage de script Embryo inclus dans Enllghtenment.

 

La mise en oeuvre est nettement simplifiée par rapport à celle de l'environnement freebox-elixir complet. Il suffit d'avoir installé Enlightenment sur sa machine pour pouvoir coder.

 

Mise en oeuvre :
1. installer l'environnement Enlightenment pour votre système d'exploitation:
2. créer un ou plusieurs fichiers EDC pour décrire le jeu et importer les images qui vont avec:
3. compiler ces fchiers EDC dans un fichier EDJ exécutable par le programme "Edje viewer".

 

D'après la documentation du SDK Freebox-elixir, tout fichier EDJ sera -en principe- directement utilisable sur la Freebox via un simple appel à exj.include("") depuis un script Javascript.

 

Toutefois les évènements clavier/souris devront être remplacés ou mappés sur les boutons de la télécommande.

 

EDC: fichier(s) de script décrivant l'interface graphique ainsi que l'interaction avec l'utilisateur via des scripts Embryo.
EDJ/EET: archive contenant un thème graphique, voire une application complète (type calculatrice, mini-jeu, etc...).

 

Un fichier EDC est un fichier texte qui décrit les éléments graphiques qui composent l'application (ici le jeu).

 

Là où cela devient très intéressant c'est que cette description comprend également les animations (à base d'images-clé ou keyframes) ainsi que l'apparition/disparition d'objets, avec même la possibilité de rendre certaines animations aléatoires !

 

La documentation officielle de la partie descriptive d'EDC se trouve ici :
http://docs.enlightenment.org/api/edje/html/edcref.html

 

En dehors de cette partie purement descriptive, chaque élément de l'interface peut être relié à un script en langage Embryo. Ce sont ces scripts qui permettront de donner vie aux éléments d'un jeu et de gérer par exemple les collisions.

 

La documentation officielle du langage Embryo se trouve ici :
http://wiki.enlightenment.org/index.php/Category:Embryo/Examples

Et ià : (pourquoi faire simple...)
http://trac.enlightenment.org/e/wiki/Embryo

 

Pour terminer ce week-end en beauté je vous propose rien de moins qu'un exemple de jeu de tir entièrement codé avec EDC et Embryo !

http://wiki.enlightenment.org/index.php/Embryo/Examples/Game

 

Bien sûr pour que ça fonctionne sur la freebox il faudra remplacer le signal "mouse,down,1" par un équivalent pour l'un des boutons de la télécommande.

 

Joyeux Hallowwen !

 

MAJ:

 

Je reproduit ici un commentaire posé sur le wiki de freebox-elixir:

 

"Le contenu du Wiki d'Enlightenment n'est pas a considere a jour, car une bonne partie n'a pas encore ete migre, voir reecrit pour le Trac http://trac.enlightenment.org/e.

 

Il est ainsi a noter qu'il ne vaut mieux pas trop mettre d'espoir et d'effort dans embryo qui pourrait etre supprimer a terme. Les efforts allant plutot vers Lua."

 

...donc en ce qui concerne les langages de scripts supportés par la Freebox au niveau des EDC on n'est pas plus avancé. Déçu

Publié le 02 novembre 2009 à 00h01 02/11/09 par del65 Lui envoyer un message

    Anonyme - Le 03 novembre 2009 à 12h18 Envoyer un message
    Notez que si vous n'aimez pas Embryo comme langage de script, Edje support aussi Lua, qui est quand même un peu plus connu... Par contre, vu  que l'ajout est récent, il n'y a pas de doc formelle sur l'utilisation de Lua dans un EDC


    Watchwolf - Le 03 novembre 2009 à 13h21 Envoyer un message
    Comme dit par Anonyme, il est possible d'utiliser Lua a la place de embryo ce qui est recommande car :
    - embryo est abandonné au profit de Lua
    - Lua est plus complet et plus performants.

    Il est possible d'utiliser le mot clé "define" pour régler le problème des touches claviers/télécommande.

    Par exemple :
    #define FREEBOX

    #ifndef FREEBOX
       #define SHOOT "mouse,down,1"
    #else
       #define SHOOT "freebox key"
    #endif

    Pour un exemple commentaire d'un fichier Edje voir ce fichier : http://fr.enlightenment.org/wp-content/edje-edc.c

    Il est possible de faire un jeux en utilisant le javascript, il n'est pas obligatoire de tous coder dans le fichier edc.


    del65 - Le 03 novembre 2009 à 18h34 Envoyer un message
    Merci pour ces précisions, en espérant que la Freebox intègre des librairies Enlightenment suffisamment récentes pour accepter LUA.

     

    Tant que l'on ne sait pas comment lancer un scrpt Javascript sur la Freebox ou tant que l'on de dispose pas d'un binaire ou des sources de Freebox-elixir, le fait de pouvoir "bricoler" avec Edje et LUA/ mbryo a pas mal d'importance je trouve.

     

    Personnellement je considère plutôt le Javascript comme un "liant" qui servira pour associer l'image et le son (via SDL mixer), gérer les sauvegardes (via SQLlite).

    Ainsi le moteur d'un jeu devrait se retrouver clairement séparé entre les actions purement IHM et la gestion du jeu en lui-même.

     

    Bien sûr j'attends avec impatience que Free dévoile les jeux, mais en attendant il y a de quoi s'occuper utilement et c'est déjà pas mal ! Sourire


    nanimu - Le 22 mars 2012 à 02h45 Envoyer un message

    Cartier handbags and also purses are one sure way to make an emphatic record about your class. In todays world, fashion is everything! The celebrities, people of class and prestige are aware that their outlook and look makes that guff with class resounding and because of this , balenciaga handbags and purses are not far from these celebrities. Celine handbags and purses can be a definition of expertise and quality.

    Rolex watches having Japanese movements are highly well known among the followers of this exclusive brand. Rolex is a brand which has many admirers. The genuine Rolex watches are really expensive and thus these exclusive Replica watches having Japanese movements are a much cheaper alternative.



Votre adresse ip (34.204.52.16) ne se trouve pas en France vous devez créer un compte Freezone et être connecté afin de pouvoir poster un commentaire.

Retrouvez nous sur :
Site développé par JP Legal et Vincent Barrier et Anthony Demangel
Freezone n'a aucun lien avec la société Iliad / Free