tag:linuxfr.org,2005:/tags/moteur/publicLinuxFr.org : les contenus étiquetés avec « moteur »2023-08-04T09:46:37+02:00/favicon.pngtag:linuxfr.org,2005:Bookmark/69142023-08-03T16:46:53+02:002023-08-03T16:46:53+02:00[software] ALIEN - Explore worlds of artificial life<a href="https://github.com/chrxh/alien">https://github.com/chrxh/alien</a> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/132892/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/olivedeparis/liens/software-alien-explore-worlds-of-artificial-life#comments">ouvrir dans le navigateur</a>
</p>
Big Petehttps://linuxfr.org/nodes/132892/comments.atomtag:linuxfr.org,2005:Post/434452023-01-29T21:52:18+01:002023-01-29T23:44:33+01:00Remplacer le mécanisme d'entrainement d'une sorbetière.<p>Hello.</p>
<p>Depuis quelques semaines, je me remets à préparer quelques plats ou desserts. Ce week-end, j'ai tenté de faire une glace à la vanille. J'ai donc préparé une crème anglaise, qui ma foi côté consistance était assez épaisse - mais qui avait un peu trop le goût d' oeuf, et qui manquait un peu de sucre. J'ai donc rattrapé le coup en montant de la crème en chantilly, la sucrant un peu plus que la normale, et j'ai intégré ma crème anglaise à ce mélange avant de le mettre dans ma sorbetière. Après coup, il s'est avéré que mon choix d'ajouter la chantilly était plutôt judicieux (à un détail près, j'ai utilisé de la crème épaisse à la place de la crème liquide, et ça a laissé un petit arrière gout de yaourt à ma glace, mais ce bug sera corrigé à la prochaine release): la texture de la crème était idéale, et il y a eu un rééquilibrage de goût, le gout trop prononcé de l'oeuf s'est atténué et la crème était suffisamment sucrée.</p>
<p>Cependant ce qui m'amène à écrire ici, c'est un problème que j'ai rencontré avec ma sorbetière. Il s'agit d'une sorbetière à accumulation de froid, que j'avais depuis des années chez moi et que je n'ai jamais utilisée. Et malhereusement, il semblerait que je ne l'utiliserai plus à l'avenir, sauf à remplacer le système d'entrainement de la pale qui mélange la crème pendant que celle-ci se transforme en crème glacée. Vu le prix que j'avais payé à l'époque, je ne suis qu'à moitié surpris, et je pourrais en rester là et m'en débarasser pour en acheter une autre. Cependant, je ne suis pas du genre à gaspiller, et je suis en train de me demander si ça ne vaudrait pas le coup de la remettre en état, en revoyant le système d'entrainement de la pale. Et j'étais en train de me demander s'il ne valait pas mieux remplacer le système actuel (je ne l'ai pas encore démonté mais il m'a l'air d'être un pauvre moteur qui entraine des engrenages maintenus sommairement) par un système à base de servo. L'idée serait de contrôler la vitesse du servo par un microcontrôleur, et arrêter le moteur + déclencher une sonnerie lorsque le courant consommé par celui-ci devient trop important (je considère que si le moteur rencontre trop de résistance, c'est que la glace est en train de prendrre, et qu'il vaut mieux cesser de le faire tourner au risque de déteriorer le matériel - et c'est probablement ce qui s'est passé pour le système actuel).</p>
<p>Pour moi le servo est un choix naturel. En effet on dispose avec celui-ci d'un moto-réducteur avec un couple assez élevé, qui se commande facilement par microcontrôleur ( ou par un système à base de NE555), et pour lequel il serait assez facile de mettre en place un système de contrôle de courant consommé. Celà dit, je ne suis pas habitué à l'utilisation de ce type de moteur lorsqu'il s'agit de faire tourner en continu (je l'ai utilisé à plusieus reprises pour faire du contrôle de position). Pouvez-vous me dire ce que vous en pensez, si mon idée est délirante, ou si je devrais plutôt me tourner vers un classique moteur avec contrôle PWM ? Et si l'idée n'est pas délirante, avez-vous des suggestions, ou des liens fiables qui pourraient m'aider à choisir mon moteur ?</p>
<p>Vous pouvez me dire que mon idée c'est de la merde et que je ferais mieux de me débarasser de ma sorbetière, je ne le prendrai pas mal à condition que ce soit argumenté.</p>
<p>Merci pour votre retour. </p>
<div><a href="https://linuxfr.org/forums/general-general/posts/remplacer-le-mecanisme-d-entrainement-d-une-sorbetiere.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/130156/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/forums/general-general/posts/remplacer-le-mecanisme-d-entrainement-d-une-sorbetiere#comments">ouvrir dans le navigateur</a>
</p>
totof2000https://linuxfr.org/nodes/130156/comments.atomtag:linuxfr.org,2005:Post/406622019-11-17T14:27:00+01:002019-11-17T14:30:05+01:00Electronique d'un moteur de tondeuse ? et informatique !<p>Bonjour,</p>
<p>J'ai vu passé en 2013 un projet sur de l'ODB II pour un moteur 4 cylindres (opensource) !</p>
<p>Je cherche quelque chose d'approchant en open-sources pour un moteur de tondeuse de 160 cc MRPC, l’électronique d’après moi est très rudimentaire un Arduino est sur dimensionné ?</p>
<p>Pour faire la liste des capteur,<br>
tu calcul le carburant<br>
l'air <br>
et la position du piston</p>
<p>J'ai oublie quelque chose, qui se rappel des vis platine ? (…)</p>
<p>merci de vos retours !</p>
<p>-- <br>
ptilou</p>
<div><a href="https://linuxfr.org/forums/linux-debutant/posts/electronique-d-un-moteur-de-tondeuse-et-informatique.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/118647/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/forums/linux-debutant/posts/electronique-d-un-moteur-de-tondeuse-et-informatique#comments">ouvrir dans le navigateur</a>
</p>
Ptilouhttps://linuxfr.org/nodes/118647/comments.atomtag:linuxfr.org,2005:Diary/382612018-12-07T10:42:24+01:002018-12-07T10:42:24+01:00Microsoft va tourner le dos à EdgeHTML pour chromium avec blink et v8Licence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<p>Microsoft a annoncé (par <a href="https://blogs.windows.com/windowsexperience/2018/12/06/microsoft-edge-making-the-web-better-through-more-open-source-collaboration/">la voix de Joe Belfiore</a>) vouloir développer un nouvelle version de son navigateur Edge basé cette fois-ci sur le projet chromium avec son moteur blink et l'interpréteur javascript v8.</p>
<p>Les raisons citées sont notamment, la faible part de marché de Edge (moins de 5%) (cantonné sur Windows 10), trop de travail sur le moteur de rendu pour supprimer les bugs sur certains sites; l'objectif étant aussi de porter le nouveau Edge sur MacOS, Windows 7 et Windows 8. (et qui sait Linux 😉)</p>
<h2 id="toc-microsoft-passe-à-lopen-source-hourra">Microsoft passe à l'Open Source. Hourra ?</h2>
<p>Je pense que cela va réjouir une bonne partie des défenseurs des logiciels libres. D'autant plus que c'est un aveu cinglant d'échec de la part de Microsoft à imposer son moteur EdgeHTML et son navigateur Edge.</p>
<h2 id="toc-uniformisation-des-outils-web-danger-ou-pas">Uniformisation des outils web; danger ou pas ?</h2>
<p>Cela va malheuresement diminuer la diversité des moteurs de rendu utilisés par les navigateurs web puisque déjà Chrome/Chromium, et Opera utilisent blink et v8. Toutefois Safari continue à utiliser webkit et non blink (le fork de webkit par google).</p>
<p>Il ne restera comme principal alternative le moteur gecko/quantum de firefox porté par la fondation moz://a, avec son interpréteur spidermonkey. A noter que firefox, utilise déjà webkit sur iOS 😢.</p>
<p>La part de marché de chromium/v8 va ainsi augmenter approximativement de 65% à 70%.</p>
<h2 id="toc-front-end-dev-happy">Front-end dev happy ?</h2>
<p>C'est une annonce qui ne peut que réjouir les développeurs front-end, qui auront moins de travail à faire pour tester leur travail, même si Edge ne compte que pour 6% des navigateurs utilisés (en comptant IE).</p>
<h2 id="toc-malware-hacker-happy">Malware hacker happy ?</h2>
<p>Mais on ne peut que craindre, une exploitation des failles de ces navigateurs et un développement d'attaques les utilisant.</p>
<h2 id="toc-google-tout-puissant">Google tout puissant ?</h2>
<p>Même si le projet chromium est open-source, cela reste une entité adossé à Google, tout puissant acteur du web.</p>
<p>Microsoft utilise déjà indirectement chromium dans VS Code avec electron.</p>
<div><a href="https://linuxfr.org/users/solstice/journaux/microsoft-va-tourner-le-dos-a-edgehtml-pour-chromium-avec-blink-et-v8.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/115915/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/solstice/journaux/microsoft-va-tourner-le-dos-a-edgehtml-pour-chromium-avec-blink-et-v8#comments">ouvrir dans le navigateur</a>
</p>
solsTiCehttps://linuxfr.org/nodes/115915/comments.atomtag:linuxfr.org,2005:Diary/382572018-12-04T08:24:54+01:002018-12-04T08:24:54+01:00Microsoft serait en train de développer un navigateur web basé sur ChromiumLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<p>D'après le site web <a href="https://www.windowscentral.com/">Windows Central</a>, <a href="https://www.windowscentral.com/microsoft-building-chromium-powered-web-browser-windows-10">Microsoft développe un navigateur web fonctionnant avec Chromium qui remplacera Edge dans le système d'exploitation Microsoft Windows 10</a></p>
<p>Le navigateur Web Edge de Microsoft n'a pas été adopté depuis son lancement en 2015, malgré l'utilisation de son nouveau moteur de restitution EdgeHTML, conçu pour être léger et rapide.</p>
<p>D'après les sources de l'auteur de l'article, Zac Bowden, c'est pour cette raison que Microsoft jette l'éponge avec EdgeHTML et développe en remplacement un nouveau navigateur web fonctionnant sur Chromium, le moteur de restitution popularisé par le navigateur Google Chrome. Le nom de code du nouveau navigateur de Microsoft pour Windows 10 est Anaheim et remplacera Edge comme navigateur par défaut sur cette plate-forme. On ne sait pas encore si Anaheim utilisera la marque Edge ou une nouvelle marque, ou si l'interface utilisateur entre Edge et Anaheim est différente. Une chose est sûre, cependant, l'utilisation de EdgeHTML dans le navigateur par défaut de Windows 10 est mort.</p>
<p>L'auteur se réjouit de cette perspective car les sites web fonctionneront de la même manière sur Google Chrome que sur le nouveau navigateur web de Microsoft. Cependant, cette capitulation de Microsoft donnera encore plus de poids à Google sur le web, ce qui à mon avis est très mauvaise nouvelle si l'on veut garder un web ouvert et indépendant.</p>
<p>Des ingénieurs de Microsoft ont récemment été repérés en train de contribuer au code du projet Chromium, ce qui laisse supposer que Microsoft travaille sur son propre navigateur Chromium pour Windows 10.</p>
<div><a href="https://linuxfr.org/users/lawless/journaux/microsoft-serait-en-train-de-developper-un-navigateur-web-base-sur-chromium.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/115890/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/lawless/journaux/microsoft-serait-en-train-de-developper-un-navigateur-web-base-sur-chromium#comments">ouvrir dans le navigateur</a>
</p>
Lawlesshttps://linuxfr.org/nodes/115890/comments.atomtag:linuxfr.org,2005:Diary/380352018-07-19T11:05:40+02:002018-07-19T11:05:40+02:00Recherche sur DLFPLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<p>Salut Nal,</p>
<p>Aujourd'hui, j'ai essayé de faire une recherche à propos d'un article relativement récent sur un outil de capture d'écran (qui permet d'effectuer des modifications de la capture directement) … sans succès.</p>
<p>Et ce n'est pas la première fois ! La recherche sur ce site (avec Duck Duck go) ramène les contenus par rapport à la pertinence des mots clefs quand la plupart du temps (pour ma part, en tout cas), il serait intéressant de trier le contenu trouvé par date de publication (en partant du plus récent), et également d'afficher la date de publication.<br>
Du coup, cher Nal, je me demande comment tu fais tes recherches dans la somme de contenu de DLFP ?</p>
<p>Comme je vois souvent des lecteurs faire référence à des articles précédents, je ne doute pas que certains ont trouvé des manières de faire des recherches plus performantes que la recherche du site (Duck Duck Go) … ou bien c'est moi qui ne sait pas chercher correctement !</p>
<div><a href="https://linuxfr.org/users/computingfroggy/journaux/recherche-sur-dlfp.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/114940/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/computingfroggy/journaux/recherche-sur-dlfp#comments">ouvrir dans le navigateur</a>
</p>
ComputingFroggyhttps://linuxfr.org/nodes/114940/comments.atomtag:linuxfr.org,2005:Post/367422016-04-16T14:35:48+02:002016-04-16T14:35:48+02:00Moteur de recherche avec interface web<p>Bonjour,<br>
j'ai un petit blog en local, je note pas mal de choses, et l'idée c'est de pouvoir récupérer et retrouver des anciennes infos/article assez facilement. Je me suis basé sur un blog en mode texte (qui n'utilise aucune base de donnée), et donc met tout nouveau post dans un répertoire, et à chaque fois dans un fichier.</p>
<p>L'idée serait d'avoir un moteur de recherche qui me faciliterait pour retrouver des articles basé sur le full-text (et de continuer avec le système de blog que j'ai, toujours sans base de donnée). Je pensais à Elasticsearch + Logstash. Sur logstash j'indique en input mon repertoire, je crée mon filtre propre au contenu et sa syntaxe. Et ainsi ça me fait l'indexation.</p>
<p>Je pense que ça peut être cool, mais pour ce qui est d'ajouter du code (page web ou service) qui se baserait sur elasticsearch pour retrouver l'article… je ne vois pas trop comment faire - et en plus quelque chose de modulable, histoire que je puisse l'adapter à mes besoins (genre ajout de lien facile vers l'article après la recherche). Ça sert à rien de me proposer Kibana, voir graylog. Clairement ça fait beaucoup trop pour ce que je veux. Moi je veux juste la barre de recherche, avec un résultat que je puisse adapter pour mes besoins.</p>
<p>Soit y a déjà un truc assez cool, soit l'autre solution c'est de la développer - biensûr (mais ce n'est normalement pas ce que je recherche en postant dans le forum).</p>
<p>Voilà merci d'avance pour cell-eux qui auraient quelques infos à me laisser sur le sujet.</p><div><a href="https://linuxfr.org/forums/general-cherche-logiciel/posts/moteur-de-recherche-avec-interface-web.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/108741/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/forums/general-cherche-logiciel/posts/moteur-de-recherche-avec-interface-web#comments">ouvrir dans le navigateur</a>
</p>
dafphttps://linuxfr.org/nodes/108741/comments.atomtag:linuxfr.org,2005:News/365582015-07-01T13:16:12+02:002015-07-01T13:16:12+02:00Sortie de Makefly 0.4, alternative au moteur de blog statique NanobloggerLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p>Makefly est une alternative rapide et légère en ligne de commande au moteur de blog statique <a href="http://nanoblogger.sourceforge.net/">Nanoblogger</a> suite à l'arrêt de son développement en 2013. Un an après <a href="//linuxfr.org/news/makefly-une-alternative-au-moteur-de-blog-statique-nanoblogger">la sortie de la version 0.3 de Makefly</a>, c'est une nouvelle mouture qui voit le jour estampillée 0.4.</p>
<p>Dans les grandes lignes des nouveautés, nous avons : </p>
<ul>
<li>la partie BSD Makefile est abandonnée au profit d'un système en Lua permettant de lancer les différentes commandes de Makefly ;</li>
<li>la dépendance vers <em>lua-markdown</em> n'est plus nécessaire ;</li>
<li>le système de commentaire <a href="http://posativ.org/isso/">Isso</a> écrit en Python dont nous fournissons un service (en bêta) nommé <a href="http://rave.depotoi.re/">Rave</a> (pour ceux qui ne peuvent pas l'installer sur leur machine) ;</li>
<li>une nouvelle documentation sur la <a href="http://makefly.depotoi.re/themes.html">manière de créer un thème pour Makefly</a>.</li>
</ul><p>Nous espérons ainsi avoir quelques contributions de thèmes pour Makefly afin de compléter la collection déjà présente.</p></div><ul><li>lien nᵒ 1 : <a title="http://makefly.depotoi.re/" hreflang="fr" href="https://linuxfr.org/redirect/94522">Site officiel</a></li><li>lien nᵒ 2 : <a title="http://makefly.depotoi.re//documentation.html" hreflang="fr" href="https://linuxfr.org/redirect/94523">Documentation (générale)</a></li><li>lien nᵒ 3 : <a title="http://makefly.depotoi.re//themes.html" hreflang="fr" href="https://linuxfr.org/redirect/94524">Documentation (créer un thème)</a></li><li>lien nᵒ 4 : <a title="http://posativ.org/isso/" hreflang="fr" href="https://linuxfr.org/redirect/94525">Isso (système de commentaire)</a></li><li>lien nᵒ 5 : <a title="http://rave.depotoi.re/" hreflang="fr" href="https://linuxfr.org/redirect/94526">Rave (service de commentaire Isso)</a></li></ul><div><p>Makefly fournit de quoi créer un blog avec : </p>
<ul>
<li>des billets munis de tags, une catégorie ;</li>
<li>un système pour le référencement via le choix du nom des pages, de <em>keyword</em> pour chaque article et le formatage des adresses réticulaires (URL) ;</li>
<li>un flux RSS ;</li>
<li>des pages statiques ;</li>
<li>un système de sauvegarde, de publication, de création d'article, de migration depuis Nanoblogger ;</li>
<li>un système de commentaire, de template (personnalisation des thèmes) et de traduction ;</li>
<li>un badge GNU Social ;</li>
<li>etc.</li>
</ul><p>La documentation fournit de plus amples informations sur les fonctionnalités présentes.</p>
<p>Je tiens aussi et surtout à remercier les derniers utilisateurs qui m'ont contacté pour leurs critiques et avoir souligné les problèmes rencontrés. <strong>J'invite d'ailleurs tout utilisateur de Makefly à donner son avis sur l'outil</strong>. C'est appréciable et cela donne véritablement une valeur ajoutée sur ce logiciel que je pensais être le seul à utiliser.</p></div><div><a href="https://linuxfr.org/news/sortie-de-makefly-0-4-alternative-au-moteur-de-blog-statique-nanoblogger.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/106208/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/sortie-de-makefly-0-4-alternative-au-moteur-de-blog-statique-nanoblogger#comments">ouvrir dans le navigateur</a>
</p>
BlankoworldZeroHeureXavier Teyssierpalm123https://linuxfr.org/nodes/106208/comments.atomtag:linuxfr.org,2005:Diary/354362014-11-30T13:20:13+01:002014-11-30T13:20:13+01:00J'ai testé pour vous : la création d'un jeu pour Firefox OSLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#prise-en-main-dun-framework">Prise en main d'un framework</a></li>
<li><a href="#d%C3%A9veloppement-du-jeu">Développement du jeu</a></li>
<li><a href="#cr%C3%A9ation-du-manifest-et-test-sur-smartphone">Création du manifest et test sur smartphone</a></li>
<li><a href="#envoi-sur-le-marketplace">Envoi sur le Marketplace</a></li>
<li><a href="#mes-impressions-sur-le-marketplace">Mes impressions sur le Marketplace.</a></li>
<li><a href="#pour-la-suite">Pour la suite</a></li>
</ul><p>Bonjour Nal,</p>
<p>Profitant d'un petit moment de répit entre l'envoi de mon manuscrit de thèse et la préparation de la soutenance, j'ai décidé d'assouvir mon besoin de coder. Et si possible, un truc n'ayant rien à voir avec ce que je peux faire au boulot. J'ai donc voulu coder un petit jeu en Javascript dans le but de le faire tourner sur Firefox OS. J'ai ainsi porté <a href="https://play.google.com/store/apps/details?id=com.tacoid.pweekmini">Pweek</a>, un jeu que j'avais développé avec un ami il y a 2 ans pour Android. Ce jeu avait été développé en Java avec libGdx. Malheureusement, il n'y a pas de JVM pour Firefox OS, et les applications doivent donc être écrites en HTML+JS. Heureusement, le Javascript a bien évolué ces dernières années et il y a des tonnes de frameworks à disposition.</p>
<p>Je vous propose ici un résumé des grandes étapes pour le développement d'un jeu pour Firefox OS mais surtout de mes impressions. Je ne vais donc pas parler spécifiquement de mon jeu. J'espère que ce journal poussera certains d'entre vous à se lancer, car ce n'est pas compliqué.</p>
<h2 id="prise-en-main-dun-framework">Prise en main d'un framework</h2>
<p>Je me suis lancé dans la recherche d'un framework pour développer des jeux HTML. J'ai tapé naïvement sur mon moteur de recherche quelques mots clefs et puis je me suis lancé sur Phaser. Je n'ai pas pris le temps de tester les alternatives, vous trouverez une liste ici : <a href="http://html5gameengine.com/">http://html5gameengine.com/</a></p>
<p>J'ai commencé par suivre le tuto : <a href="http://www.photonstorm.com/phaser/tutorial-making-your-first-phaser-game">http://www.photonstorm.com/phaser/tutorial-making-your-first-phaser-game</a> et c'était super simple. Puis j'ai parcouru la liste des <a href="http://examples.phaser.io/">exemples</a>, j'ai joué un peu avec et je me suis dit que c'était pas mal. Vous trouverez également un tuto sur le site de <a href="https://developer.mozilla.org/en-US/docs/Games/Workflows/HTML5_Gamedev_Phaser_Device_Orientation">mozilla</a></p>
<h2 id="développement-du-jeu">Développement du jeu</h2>
<p>Pour le développement, un bon petit vim accompagné d'un navigateur et ça roule. J'utilise la commande "python3 -m http.server" pour servir les pages, ça fait le boulot. C'est quand même plus sympa que de devoir se lancer un gros Eclipse… Pas besoin de compilation, on teste en rafraichissant la page de son navigateur, c'est plaisant. Et pour tester sur device, pour commencer on peut simplement se rendre sur l'url du jeu. En plus les débuggueurs de Firefox et Chrome sont pas mal, c'est assez sympa à utiliser. Je regrette de ne pas avoir pris le temps d'outiller d'avantage mon code avec un Google Closure ou équivalent (je ne connais pas trop les outils à la mode n'ayant plus fait de JS depuis plus de 3 ans). Car franchement, se prendre des erreurs à l'exécution qui n'auraient pas dépassé la phase de compilation en Java, c'est pénible. Peut-être devrais-je m'intéresser à Typescript ?</p>
<h2 id="création-du-manifest-et-test-sur-smartphone">Création du manifest et test sur smartphone</h2>
<p>Bon, une fois le jeu fonctionnel dans un navigateur, passons au packaging pour Firefox OS. Pour cela, il faut créer un fichier manifest.webapp qui contiendra le nom, la version, la description, le chemin des icônes, le fichier index, les privilèges, l'orientation, etc. Rien de vraiment difficile, vous trouverez des infos sur les pages de <a href="https://developer.mozilla.org/fr/Apps/Manifeste">mozilla</a>. Faites attention aux privilèges, c'est la partie un peu sensible, n'utilisez pas le type privileged si vous pouvez éviter.</p>
<p>Pour vérifier que tout est ok, vous pouvez utiliser le WebIDE disponible dans Firefox. Vous pourrez alors envoyer votre projet sur votre téléphone et vérifier que tout est ok. Simple, efficace, j'étais plutôt satisfait. Pour débuter, il vaut mieux lire la doc quand même : <a href="https://developer.mozilla.org/en-US/docs/Tools/WebIDE">https://developer.mozilla.org/en-US/docs/Tools/WebIDE</a> (pour la partie udev surtout).</p>
<h2 id="envoi-sur-le-marketplace">Envoi sur le Marketplace</h2>
<p>Une fois prêt, il ne reste plus qu'à l'envoyer sur le <a href="https://marketplace.firefox.com/">Marketplace</a> ! Concrètement il faut juste faire un zip du projet avec le manifest à la racine. Je regrette l'absence d'un bouton dans le WebIDE pour obtenir directement l'archive, j'ai perdu du temps à essayer de comprendre qu'il fallait faire un zip et que je ne devais pas faire un sous-dossier mais tout mettre à la racine.</p>
<p>Rien de particulier à signaler pour la création du compte développeur. Par contre pour la soumission, tout n'est pas parfaitement clair avec des warnings qui font inutilement peur (genre j'ai pas demandé le son mais Phaser est capable de l'utiliser… on se demande s'il ne faut pas demander la permission quand même). Et pour la publication d'un jeu, il faut remplir tout un questionnaire. Comparé à Google Play, j'ai trouvé cela un peu plus long et un peu moins pratique. Mais surtout, l'appli doit passer à travers un review manuel ! Compter plusieurs jours pour que votre appli puisse effectivement se retrouver sur le market, même si vous ne l'avez pas rendu public encore. M'étant trompé sur une ligne de mon manifest, j'ai eu à renvoyer le jeu une seconde fois. Environ 4-5 jours au total.</p>
<h2 id="mes-impressions-sur-le-marketplace">Mes impressions sur le Marketplace.</h2>
<p>La partie dev est pas mal. Je n'ai pas de critique négative à formuler. Mais par contre, la partie utilisateur que vous pouvez tous tester en vous rendant sur <a href="https://marketplace.firefox.com/">https://marketplace.firefox.com/</a> a encore une bonne marge de progression. Je ne m'en était pas vraiment rendu compte au début car je cherchais juste des applis de base.</p>
<p>Lorsque vous vous rendez sur le Marketplace, vous avez une première page qui vous propose des applis, c'est pas trop mal. Vous avez ensuite le choix entre les onglets "Récentes" et "Populaires" :</p>
<ul>
<li><p>L'onglet "Récentes" deviendra complètement inutilisable le jour où Firefox OS sera utilisé par un plus grand nombre de personnes. Mais pour l'instant, il y a tellement peu d'applis proposées que ça permet aux geeks de voir les nouveautés, donc c'est plutôt sympa. Si le nombre d'applis augmente, il faudra peut être que Mozilla trouve un moyen de dégager tous les déchets (avec des filtres éventuellement, si je veux une appli récente avec une note moyenne correcte, basée sur au moins 5 notes).</p></li>
<li><p>Puis vous avez l'onglet "Populaires" qui liste j'imagine les applis les plus téléchargées. Ah tiens, on ne peut justement pas savoir combien de fois une appli a été téléchargée ! C'est pourtant super utile pour savoir quand on tombe sur une appli quelconque si elle est vraiment utilisée… Mais pour moi le vrai problème c'est que vu qu'on a le choix entre "Récentes" et "Populaires" alors les applis Populaires sont les plus installées et donc elles restent dans les plus populaires, etc. C'est comme ça qu'on retrouve dans "Populaires" plusieurs applis avec des notes minables (3/5). Mais pourquoi ils n'ont pas fait en plus un onglet "Les mieux notées ?" ?! Au moins on pourrait découvrir des applis de qualité.</p></li>
</ul><p>Je vais maintenant repasser sur mon expérience en tant que développeur : les stats de téléchargement. Au lancement je me suis retrouvé dans la liste des applications récentes. Donc naturellement j'ai eu pas mal de téléchargements. Plus de 200 installs par jour les 2 premiers jours. Mais ensuite, la position de mon jeu dans la liste des nouveautés n'a cessé de chuter (normal) mais cela a un effet catastrophique sur le nombre de téléchargements. En l'espace d'une semaine je suis tombé à 20-30 installs par jour. Et c'est là que j'ai remarqué un manque fondamental dans le Marketplace : les suggestions ! Lorsque vous consultez la description d'une appli, on ne vous dit pas : "hey, regarde ces applis elles pourraient t’intéresser !", "hey, les gens qui ont consulté/installé cette appli ont consulté/installé ça" ou encore "hey, applis du même auteur !". Donc, maintenant que mon appli n'est plus dans les nouveautés et qu'elle n'est bien sûr pas dans les applis les plus populaires, comment les gens vont tomber dessus ? Ce qui est bien avec Google Play c'est que tu vas découvrir des applis que tu ne cherchais pas spécialement, ici ce n'est pas possible.</p>
<p>Pour les curieux, le jeu est téléchargeable ici : <a href="https://marketplace.firefox.com/app/pweek">https://marketplace.firefox.com/app/pweek</a> et fonctionne sur Firefox OS et Firefox Desktop. Attention avec l'install dans le navigateur, si ça lag affreusement, c'est sans doute une option cachée à (dés)activer dans votre firefox.</p>
<p>Et pour ceux qui aiment les stats, je vous invite à consulter les stats du <a href="https://marketplace.firefox.com/statistics">Marketplace</a>. Nous retiendrons la présence de 5000 développeurs, avec en moyenne une appli par dev, plus de 95% d'applis gratuites, moins de 20 nouvelles applis par jour et plus de 40000 installations d'app par jour.</p>
<h2 id="pour-la-suite">Pour la suite</h2>
<p>J'ai testé sur mon ZTE Open C, le jeu tourne mais rame un peu par moment. Je n'ai clairement pas tenté d'optimiser, je vais devoir m'en occuper. J'ai des pistes pour l'optimisation des effets et réutiliser certains sprites au lieu de les recréer, mais il faut aussi que j'optimise le code avec des outils. Ensuite, je compte finaliser un autre jeu que je proposerai aussi sur Android (car c'est facile de faire un apk d'un jeu HTML, plusieurs outils existent).</p>
<p>Je m'interroge également sur toute la partie monétisation. Les applis payantes ça marche sur Apple car les gens qui déboursent 700 euros dans un téléphone sont capables de débourser quelques euros pour une appli. Sur Android il faut bien marketer le produit si on veut réussir à le vendre, le plus simple est probablement de mettre de la pub ou des achats in-app. Sur Firefox OS je suis sceptique. Les utilisateurs d'un téléphone à moins de 100 euros ne vont peut être pas débourser de l'argent dans une appli, et les utilisateurs de Firefox OS sont plutôt réfractaires à la pub j'imagine… Donc en l'état, pour moi développer sur Firefox OS c'est surtout pour le plaisir et enrichir la liste des applis disponibles. Mais cela pourrait être un problème pour Mozilla sur le long terme.</p><div><a href="https://linuxfr.org/users/mrmax/journaux/j-ai-teste-pour-vous-la-creation-d-un-jeu-pour-firefox-os.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/104114/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/mrmax/journaux/j-ai-teste-pour-vous-la-creation-d-un-jeu-pour-firefox-os#comments">ouvrir dans le navigateur</a>
</p>
Maximehttps://linuxfr.org/nodes/104114/comments.atomtag:linuxfr.org,2005:News/353522014-05-08T11:29:34+02:002014-05-08T11:29:34+02:00Makefly, une alternative au moteur de blog statique NanobloggerLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p>Makefly se veut être une alternative rapide et légère au moteur de blog statique Nanoblogger, sachant que ce dernier a été <a href="http://nanoblogger.sourceforge.net/archives/2013/02/10/official_announcement_development_suspended_indefinitely/">abandonné l'année dernière</a>.</p>
<p>Ce fut donc l'occasion pour certains de passer à autre chose, pour d'autres de revoir la manière dont fonctionnait leur blog et de comment l'améliorer. C'est ainsi que Makefly vit le jour, utilisant Markdown comme format de billet.</p>
<p><img src="//img.linuxfr.org/img/68747470733a2f2f6f6c69766965722e646f73736d616e6e2e6e65742f626c6f672f6c6f676f2e676966/logo.gif" alt="Titre de l'image" title="Source : https://olivier.dossmann.net/blog/logo.gif"></p>
<p>L'outil en est à sa version 0.3 et continue sa petite vie (il aura 2 ans en juin). Il propose une modeste documentation et une possibilité de migrer ses billets depuis Nanoblogger.</p>
<p>Il utilise Lua et les BSD Makefile, et est fourni sous licence <a href="http://www.gnu.org/licenses/agpl.html">AGPL</a>.</p></div><ul><li>lien nᵒ 1 : <a title="http://makefly.depotoi.re" hreflang="fr" href="https://linuxfr.org/redirect/90408">Site officiel</a></li></ul><div><p>Makefly propose les fonctionnalités suivantes :</p>
<ul>
<li>ajout d'article (heureusement !)</li>
<li>liste d'articles</li>
<li>tags pour chaque article</li>
<li>mot-clé pour chaque article afin d'améliorer le référencement</li>
<li>type pour un article afin de les catégoriser</li>
<li>flux RSS</li>
<li>système de commentaire externe (jskomment installable chez soi)</li>
<li>barre latérale personnalisable</li>
<li>page statique possible</li>
<li>ajout de fichiers divers et variés (images, etc.)</li>
<li>page d'« à propos »</li>
<li>antidatage</li>
<li>traduction facile dans des fichiers textes</li>
<li>badge StatusNet/GNU Social possible</li>
<li>sauvegarde des éléments du blog</li>
<li>système de publication (SSH, rsync, etc.)</li>
<li>migration des articles depuis Nanoblogger</li>
</ul><p>Personnalisation :</p>
<ul>
<li>choix du thème</li>
<li>création facile d'un nouveau thème</li>
<li>ajout simple d'une entête ou d'une enqueue à son blog dans un simple fichier</li>
<li>personnalisation du nom des répertoires contenant les articles et celui contenant les tags</li>
<li>choix du nombre d'articles affichés en page d'accueil, ordre ascendant ou descendant</li>
<li>choix de la séparation de la liste d'articles en plusieurs pages et combien d'articles par page</li>
<li>ajout de variable modifiables facilement pour les templates des thèmes</li>
</ul></div><div><a href="https://linuxfr.org/news/makefly-une-alternative-au-moteur-de-blog-statique-nanoblogger.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/102114/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/makefly-une-alternative-au-moteur-de-blog-statique-nanoblogger#comments">ouvrir dans le navigateur</a>
</p>
Blankoworldbubar🦥Benoît SibaudOntologiaclaudexhttps://linuxfr.org/nodes/102114/comments.atomtag:linuxfr.org,2005:Diary/345032013-11-17T18:37:27+01:002013-11-17T18:37:27+01:00Polycode : Moteur 2D/3D open-sourceLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Hello,</p>
<p>J'aimerai vous parler d'un "nouveau" moteur de jeu (2D/3D) sur lequel je suis tombé: <a href="http://polycode.org/">Polycode</a>.</p>
<p>Développé par un seul gars depuis près de 7 ans (chapeau l'artiste !), il est publique depuis fin 2011 et sa première version stable est pour bientôt. <br>
Activement développé, il est possible de suivre sa progression sur son <a href="http://polycode.tumblr.com/">Tumblr</a> (le choix est discutable…).</p>
<p>Le moteur en lui même se compose d'une librairie et de plusieurs modules (interface, réseau, …) pour être utilisé en C++, ainsi que d'un IDE/debugger/binding pour LUA (le tout développé en C++ avec ce même moteur (chapeau encore).</p>
<p>La liste des <a href="http://polycode.org/features/">fonctionnalités supportées</a> est impressionnante, les seuls inconvénients que j'ai pu trouver pour le moment sont son manque de stabilité (pas de version stable mais comme dit plus haut ça viendra) et le manque de documentation/tutoriels (il gagne à être connu).<br>
Il a d'ailleurs été utilisé pour générer les projections dans <a href="http://www.youtube.com/watch?v=Fy7FzXLin7o&noredirect=1">un clip</a> du groupe <s>Depede Moche</s> Depeche Mode.</p>
<p>Je suis moi-même en train de m'en servir pour un de mes projets persos, et je me suis dit que c'était l'occasion de vous en faire profiter (j'ai cru remarquer que certains ici sont intéressés par le développement de jeux). :)<br>
Au fur et à mesure de mon apprentissage/avancement, je vais essayer de rédiger des tutos simples pour aider les gens à faire leurs premiers pas.</p>
<p>Si vous avez déjà testé (ou êtes en train de le faire), vos retours sont plus que bienvenus.<br>
N'hésitez pas à le faire connaître, je pense vraiment qu'il à du potentiel !</p><div><a href="https://linuxfr.org/users/viish/journaux/polycode-moteur-2d-3d-open-source.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/100379/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/viish/journaux/polycode-moteur-2d-3d-open-source#comments">ouvrir dans le navigateur</a>
</p>
Sylvain Berfinihttps://linuxfr.org/nodes/100379/comments.atomtag:linuxfr.org,2005:Diary/336222013-01-30T14:08:03+01:002013-01-30T14:08:03+01:00Web Log Today est juillet - écrire un blog de nos joursLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<h2 id="sommaire">Sommaire</h2>
<ul><li>
<a href="#toc_0">Présentation</a>
</li>
<li>
<a href="#toc_1">Installation</a>
</li>
<li>
<a href="#toc_2">Mise à jour</a>
</li>
<li>
<a href="#toc_3">Usage</a>
<ul><li>
<a href="#toc_4"><code>_site</code></a>
</li>
<li>
<a href="#toc_5"><code>_posts</code></a>
</li>
<li>
<a href="#toc_6"><code>_pages</code></a>
</li>
<li>
<a href="#toc_7"><code>_css</code></a>
</li>
<li>
<a href="#toc_8"><code>_js</code></a>
</li>
<li>
<a href="#toc_9"><code>_layouts</code></a>
</li>
<li>
<a href="#toc_10"><code>_pub</code></a>
</li>
<li>
<a href="#toc_11"><code>config.yaml</code></a>
</li>
<li>
<a href="#toc_12">Headers</a>
</li>
<li>
<a href="#toc_13">Fichiers spéciaux</a>
</li>
</ul></li>
<li>
<a href="#toc_14">Objets ruby</a>
</li>
<li>
<a href="#toc_15">Et donc, comment que ça marche en pratique ?</a>
<ul><li>
<a href="#toc_16"><code>wlt assets</code></a>
</li>
<li>
<a href="#toc_17"><code>wlt build</code></a>
</li>
<li>
<a href="#toc_18"><code>wlt clean</code></a>
</li>
<li>
<a href="#toc_19"><code>wlt gollum</code></a>
</li>
<li>
<a href="#toc_20"><code>wlt serve</code></a>
</li>
<li>
<a href="#toc_21"><code>wlt scaffold</code></a>
</li>
</ul></li>
<li>
<a href="#toc_22">Getting started</a>
</li>
<li>
<a href="#toc_23">Mot de la fin</a>
</li>
<li>
<a href="#toc_24">Il ne manquerait pas un truc ?</a>
</li>
</ul><p>Après la superbe trilogie « écrire une page web de nos jours », voici enfin la suite tant attendue.</p>
<p>Pour rappel :</p>
<ol><li><a href="http://linuxfr.org/users/crev/journaux/ecrire-une-page-web-de-nos-jours">Ecrire une page web de nos jours et la suite des aventures</a></li>
<li><a href="http://linuxfr.org/users/crev/journaux/ecrire-une-page-web-de-nos-jours-troisieme-partie">Ecrire une page web de nos jours, troisième partie</a></li>
</ol><p>Mais quelle suite pouvait-on donner alors ? Avec ces trois épisodes nous avons touché du bout des doigts la création d'une page web aujourd'hui. Bon, on en est resté au strict minimum avec <a href="http://haml.info">haml</a>, <a href="http://git-scm.com">git</a>, <a href="http://daringfireball.net/projects/markdown/">markdown</a>, <a href="http://ruby-lang.org">ruby</a>, <a href="http://rubygems.org">gem</a>, <a href="https://github.com/guard/guard">guard</a>, <a href="http://rake.rubyforge.org/">rake</a>, <a href="http://sass-lang.com/">sass</a>, <a href="http://coffeescript.org/">coffeescript</a>, <a href="http://gembundler.com/">bundler</a>, <a href="https://github.com/vmg/redcarpet">redcarpet</a>, <a href="https://github.com/github/gollum">gollum</a>, etc. Evidement pas question d'en rester là !</p>
<p>Voici un petit résumé tout de même :</p>
<ul><li>le html c'est surfait</li>
<li>le css c'est tellement 2012</li>
<li>ruby c'est indispensable</li>
<li>gem say bien</li>
<li>markdown ça enlarge ta capacité à écrire</li>
<li>javascript c'est pour les boutonneux, coffeescript c'est pour les vrais</li>
</ul><p>Pfiou, on en avait vu des choses tout de même !</p>
<p>L'ensemble était orienté "simple page web". Mais les simples pages, say trop nul, il en faut deux ! (ou plus…) Et c'est ainsi qu'est né <em>Web Log Today</em> ! Voyons donc désormais comment <em>écrire un blog de nos jours</em> !</p>
<h3 id="toc_0">Présentation</h3>
<p><em>Web Log Today</em> (<code>wlt</code>) est né d'un besoin très simple : remplacer mon vieux blog dotclear par un ensemble beaucoup plus sympa :</p>
<ul><li>site / blog statique (pas besoin d'un langage côté serveur)</li>
<li><a href="http://daringfireball.net/projects/markdown/">markdown</a> comme langage principal de contenu</li>
<li>génération simple de flux atom, sitemap, etc</li>
<li>gestion (bien qu'un peu sommaire pour le moment) de tags</li>
<li>gestion de billets mais aussi de pages statiques</li>
<li>utilisation de templates pour ne pas se répéter tout le temps</li>
<li>que des technos cool (mais pour le coup elles sont presque toutes dans la version "écrire une page web de nos jours")</li>
</ul><p>Au final, ça donne quelque chose dans le même genre que <a href="jekyllrb.com">jekyll</a> avec quelques différences :</p>
<ul><li><a href="http://haml.info">haml</a> est utilisé aussi bien comme langage de template que comme générateur de html</li>
<li><a href="http://sass-lang.com/">sass</a> est utilisé par défaut pour les css</li>
<li><a href="http://coffeescript.org/">coffeescript</a> est utilisé par défaut pour le javascript</li>
<li>uniquement <a href="http://daringfireball.net/projects/markdown/">markdown</a> est supporté côté contenu, et on ne peux pas utiliser de template dans les contenus</li>
</ul><p>Sinon c'est un peu le même principe, il y a pas mal de ressemblances entre autre sur les headers des fichiers (pour indiquer le layout à utiliser, le titre, les tags, etc).</p>
<h3 id="toc_1">Installation</h3>
<p>La majeur partie de <em>Web Log Today</em> est la commande <code>wlt</code>. Cette commande est basée sur <a href="https://github.com/37signals/sub">sub</a> et ça c'est juste très pratiques. Pour la suite, je pars du principe que vous allez l'installer dans <code>~/.wlt</code>.</p>
<ol><li><p>Dépendances</p>
<p><a href="http://git-scm.com">git</a>, <a href="http://ruby-lang.org">ruby</a> 1.9.3, <a href="http://gembundler.com/">bundler</a></p></li>
<li><p>Récupération des sources</p>
<pre><code class="sh">git clone https://github.com/CrEv/wlt.git ~/.wlt
<span class="nb">cd</span> ~/.wlt
</code></pre></li>
<li><p>Récupération des dépendances</p>
<pre><code class="sh">bundle
</code></pre></li>
<li><p>Mise à disposition</p>
<p>Pour bash :</p>
<pre><code class="sh"><span class="nb">echo</span> <span class="s1">'eval "$(<wltpath>/bin/wlt init -)"'</span> >> ~/.bash_profile
<span class="nb">exec </span>bash
</code></pre>
<p>Pour zsh :</p>
<pre><code class="sh"><span class="nb">echo</span> <span class="s1">'eval "$(<wltpath>/bin/wlt init -)"'</span> >> ~/.zshenv
<span class="nb">source</span> ~/.zshenv
</code></pre></li>
</ol><p>Et voilà, <code>wlt</code> est dispo !</p>
<h3 id="toc_2">Mise à jour</h3>
<p>Evidemment, c'est juste trop facile !</p>
<pre>
<code class="sh"><span class="nb">cd</span> ~/.wlt <span class="o">&&</span> git pull <span class="o">&&</span> bundle
</code>
</pre>
<p>Un petit apparté sur le côté git : le but est de garder la branche <code>master</code> toujours installable. Il devrait donc être possible en permanence de faire un <code>pull</code> depuis le master sans craindre le moindre problème. Les développements futurs seront +</p>
<h3 id="toc_3">Usage</h3>
<p>Le principe global est plutôt simple. <code>wlt</code> va lire des informations dans des dossiers spécifiques, va les compiler en css, js et html afin d'en générer un site statique. De manière globale le principe est :</p>
<blockquote>
<p>convention over configuration</p>
</blockquote>
<p>La majorité des choses repose donc sur certaines conventions, en premier lieu les fichiers et répertoires.</p>
<h4 id="toc_4">
<code>_site</code>
</h4>
<p>Ce répertoire contient l'ensemble des fichiers générés. Il s'agit réellement de votre site web, il suffit de le copier sur votre serveur pour le rendre disponible.</p>
<h4 id="toc_5">
<code>_posts</code>
</h4>
<p>Le répertoire <code>_posts</code> contient logiquement les billets de votre blog. Il s'agit de fichiers markdown dont le titre a la structure suivante :</p>
<pre>
<code class="">yyy-mm-dd-title-of-the-blog-post.md
</code>
</pre>
<ul><li><code>yyyy</code> : année de publication</li>
<li><code>mm</code> : mois de publication</li>
<li><code>dd</code> : jour de publication</li>
<li><code>title-of-the-blog-post</code> : nom du fichier, en général le titre du billet sans accent ni espace ni caractère spéciaux</li>
</ul><p>Le fichier html généré sera :</p>
<pre>
<code class="">yyyy/mm/dd/title-of-the-blog-post.html
</code>
</pre><h4 id="toc_6">
<code>_pages</code>
</h4>
<p>Vous pouvez définir des fichiers statiques qui ne sont pas des billets de blog. Ces fichiers se trouvent dans le répertoire <code>_pages</code> et sont des fichiers markdown. Le nom du fichier markdown sera le nom du fichier html généré. Par exemple <code>index.md</code> deviendra <code>index.html</code>.</p>
<p>Certaines fichiers un peu plus spéciaux peuvent être présents, voir la partie spécifique.</p>
<h4 id="toc_7">
<code>_css</code>
</h4>
<p>Contient l'ensemble des fichiers <a href="http://sass-lang.com/">sass</a> destinés à être compilés en css. Les fichiers "racines" sont spécifiés dans la configuration (voir plus loin). Le fichier généré est le nom du fichier <a href="http://sass-lang.com/">sass</a> avec l'extension css. Par exemple <code>application.sass</code> donnera <code>application.css</code></p>
<p>Vous pouvez utiliser toutes les fonctionnalités de <a href="http://sass-lang.com/">sass</a>, entre autre les <code>@import</code> vous permettant de factoriser vos css.</p>
<p>Si vous avez des fichiers <code>css</code> à inclure, et donc ne nécessitant pas une compilation, se référer à la partie publique.</p>
<p><em>Note :</em> il est bien sur possible d'avoir plusieurs fichiers css de sortie.</p>
<h4 id="toc_8">
<code>_js</code>
</h4>
<p>Contient l'ensemble des fichiers <a href="http://coffeescript.org/">coffeescript</a> destinés à être compilés en javascript. Les fichiers à compilés sont à spécifier dans la configuration.</p>
<p>Le fichier généré est le nom du fichier <a href="http://coffeescript.org/">coffeescript</a> avec l'extension js. Par exemple <code>application.coffee</code> donnera <code>application.js</code>.</p>
<p>Pour le moment il n'y a pas de mécanismes permettant de concaténer plusieurs fichiers <a href="http://coffeescript.org/">coffeescript</a> en un. Dans un premier temps ce n'est pas réellement nécessaire car le but était de faire un site/blog simple et non une application web. Néanmoins un système type <a href="https://github.com/sstephenson/sprockets">sprockets</a> pourra être envisagé par la suite.</p>
<p>Si vous avez des fichiers <code>js</code> à inclure, et donc ne nécessitant pas une compilation, se référer à la partie publique.</p>
<p><em>Note :</em> il est bien sur possible d'avoir plusieurs fichiers javascript de sortie.</p>
<h4 id="toc_9">
<code>_layouts</code>
</h4>
<p>Contient l'ensemble des fichiers <a href="http://haml.info">haml</a> de templates. Il peut s'agir aussi bien de fichiers "racines" fournissant l'html de base que de fichiers partiels (à charger avec <code>render :partial => "..."</code>) ou des fichiers "intermédiaires".</p>
<p>Les contenus (pages, posts) déclarent dans leur entête le template à utiliser. Un template peut également faire appel à un template parent. Ceci permet par exemple d'avoir un premier template correspondant à tout ce qui tourne autour du contenu généré par le markdown, et un autre dédié à la page en elle-même. Pour plus d'explications, je vous suggère juste d'aller voir les exemples.</p>
<h4 id="toc_10">
<code>_pub</code>
</h4>
<p>Ce répertoire est probablement le plus simple. Tout ce qui est contenu dedans sera copié à la racine du site. Il permet donc d'inclure des fichiers css, des javascript, des images, des ressources diverses, des fichiers html générés par d'autres moyens, etc.</p>
<h4 id="toc_11">
<code>config.yaml</code>
</h4>
<p>Le fichier <code>config.yaml</code> contient les paramètres nécessaire à la génération du site. Il s'agit de paramètres "systèmes" (par exemple l'url, le chemin de déploiement) ou simplement des paramètres destinés à être factorisés (comptes, infos twitter, etc).</p>
<p>Voici un exemple de fichier, commenté :</p>
<pre>
<code class="yaml"><span class="c1"># URL du site généré (les liens sont tous absolus)</span>
<span class="l-Scalar-Plain">site_url</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">http://log.winsos.net</span>
<span class="c1"># URL de déploiement, via rsync</span>
<span class="l-Scalar-Plain">deploy_to</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">...@www.....lan:/var/www/log/</span>
<span class="c1"># Titre des pages</span>
<span class="l-Scalar-Plain">title</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">CrEv's log</span>
<span class="c1"># Informations twitter cards, opengraph, etc</span>
<span class="c1"># Nom de l'auteur</span>
<span class="l-Scalar-Plain">name</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">Plop Plop</span>
<span class="c1"># Twitter site / creator -> twitter cards</span>
<span class="l-Scalar-Plain">twitter_site</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">_crev_</span>
<span class="l-Scalar-Plain">twitter_creator</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">_crev_</span>
<span class="c1"># Description par défaut si non fournie</span>
<span class="l-Scalar-Plain">default_description</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">My personal weblog</span>
<span class="c1"># Divers comptes, permettant d'être affichés dans une page about dans les templates par défaut</span>
<span class="l-Scalar-Plain">accounts</span><span class="p-Indicator">:</span>
<span class="l-Scalar-Plain">twitter</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">https://twitter.com/_crev_</span>
<span class="l-Scalar-Plain">gplus</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">https://plus.google.com/112813954986166280487</span>
<span class="l-Scalar-Plain">github</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">http://github.com/CrEv</span>
<span class="l-Scalar-Plain">coderwall</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">https://coderwall.com/crev</span>
<span class="l-Scalar-Plain">linkedin</span><span class="p-Indicator">:</span> <span class="l-Scalar-Plain">http://fr.linkedin.com/in/yvesbrissaud</span>
<span class="c1"># Assets, description des css/js à générer (nom des fichiers sans extension)</span>
<span class="l-Scalar-Plain">assets</span><span class="p-Indicator">:</span>
<span class="l-Scalar-Plain">css</span><span class="p-Indicator">:</span> <span class="p-Indicator">[</span><span class="nv">application</span><span class="p-Indicator">,</span> <span class="nv">cv</span><span class="p-Indicator">]</span>
<span class="l-Scalar-Plain">js</span><span class="p-Indicator">:</span> <span class="p-Indicator">[</span><span class="nv">application</span><span class="p-Indicator">]</span>
</code>
</pre>
<p>A part le premier (<code>site_url</code>) qui est réellement conseillé, le reste est toujours optionnel et dépend de vos templates. Ceci n'est donc qu'un exemple et vous pouvez en rajouter autant que vous voulez. Ils seront donc accessible de partout via les objets ruby.</p>
<h4 id="toc_12">Headers</h4>
<p>Chaque fichier <a href="http://daringfireball.net/projects/markdown/">markdown</a> et <a href="http://haml.info">haml</a> peut débuter par un entête ajouter quelques méta données. Selon les cas (pages, billet, template) les paramètres ne sont pas forcément tous obligatoire. Voici les paramètres dans le cas d'un billet de blog.</p>
<p>Tout d'abord l'entête doit <strong>toujours</strong> débuter à la première ligne du fichier, par <code>---</code> et termine par une ligne contenant uniquement <code>---</code>.<br />
Ce qui est entre ces lignes est du <a href="http://www.yaml.org/">yaml</a>.</p>
<p>Voici donc les données les plus courantes :</p>
<ul><li><code>layout</code> : nom du fichier <a href="http://haml.info">haml</a> qui va recueillir la sortie de <a href="http://daringfireball.net/projects/markdown/">markdown</a></li>
<li><code>tags</code> : tableau contenant les tags relatif au billet</li>
<li><code>title</code> : Titre clair, avec accents et autres</li>
<li><code>author</code> : Nom de l'auteur</li>
<li><code>email</code> : email de l'auteur. L'email n'est pas affiché, il est utilisé pour afficher le gravatar correspondant</li>
<li><code>twitter</code> : compte twitter de l'auteur. Optionnel, il peut être défini dans la configuration</li>
<li><code>published</code> : si <code>false</code> permet de ne pas généré la sortie. Cela permet de versionner certains contenus avant qu'ils soit publiés</li>
</ul><p>Par exemple :</p>
<pre>
<code class="">---
layout: post
tags: [web_log_today]
title: Web Log Today est juillet
author: Yves
email: plopplop@....com
twitter: _crev_
published: false
---
</code>
</pre>
<p><em>Note :</em> vous pouvez rajouter sans aucun problème des métadonnées propres. Elles seront accessibles via les objets ruby comme détaillé plus bas. Cela peut vous permettre d'améliorer vos templates, votre site, en posant le maximum de données dans les fichiers <a href="http://daringfireball.net/projects/markdown/">markdown</a> ce qui permet de rendre la saisie plus agréable.</p>
<h4 id="toc_13">Fichiers spéciaux</h4>
<p>Deux fichiers un peu plus spéciaux peuvent être présent dans le répertoire <code>_pages</code> et un dans le répertoire <code>_layouts</code>.</p>
<p>Le premier est simplement le fichier <code>atom.xml.haml</code>. Comme son nom l'indique il permet de générer un fichier <code>atom.xml</code> et donc permet d'offrir à vos lecteurs un flux à placer dans un quelconque lecteur. Par défaut il permet de générer un flux basé sur les articles de blogs uniquement.</p>
<p>Le deuxième, un peu dans le même veine, est le fichier <code>sitemap.xml.haml</code>. Il permet de générer un fichier <code>sitemap.xml</code> listant l'ensemble des ressources html de votre site.</p>
<p>Enfin le fichier <code>tags.haml</code> peut être présent dans le répertoire <code>_layouts</code> afin d'afficher tous les billets d'un tag commun. Contrairement à tous les autres cas, ce fichier aura de multiples sorties, un fichier par tag, présent dans le répertoire <code>tags</code>.</p>
<h3 id="toc_14">Objets ruby</h3>
<p>Les fichiers <a href="http://haml.info">haml</a> peuvent accéder à un certain nombre de propriétés et méthodes. L'ensemble n'est pas parfaitement unifié mais cela fonctionne plutôt bien. C'est un point qui sera amélioré par la suite.</p>
<p>Voici les propriétés les plus importantes accessibles dans les fichiers <a href="http://haml.info">haml</a> :</p>
<ul><li><code>name</code> : nom du fichier</li>
<li><p><code>@contents</code> : propriétés globales du contenu</p>
<ul><li><code>config</code> : <a href="http://www.yaml.org/">yaml</a> du fichier du configuration</li>
<li><code>list</code> : ensemble des posts</li>
<li><code>list_lasts(number)</code> : ensemble des posts, au plus <code>number</code></li>
<li><code>list_by_date</code> : ensemble des posts organisés par année, mois, jour</li>
<li><code>account?(name)</code> : vérifie la présence d'un compte <code>name</code> dans la configuration</li>
<li><code>account(name)</code> : valeur du compte <code>name</code> dans la configuration</li>
<li><code>tag</code> : tag courant, dans le cadre de <code>tags.haml</code></li>
<li><code>urls</code> : l'ensemble des urls des billets et pages</li>
</ul></li>
<li><p><code>link_to(url)</code> : transforme une url relative en url absolue en utilisant la configuration</p></li>
<li><p><code>gravatar?</code> : teste la présence d'un email pour afficher un gravatar</p></li>
<li><p><code>gravatar</code> : url de l'image gravatar</p></li>
<li><p><code>published?</code> : présence du paramètre <code>published</code> dans l'entête</p></li>
<li><p><code>published</code> : valeur du paramètre <code>published</code> de l'entête ou <code>true</code></p></li>
<li><p><code>date</code> : date, dans le cas d'un billet</p></li>
<li><p><code><...>?</code> : teste la présence de <code><...></code> dans l'entête</p></li>
<li><p><code><...></code> : valeur de <code><...></code> dans l'entête</p></li>
<li><p><code>@scope</code> : En gros idem que tout cela, mais spécifiquement au contenu <a href="http://daringfireball.net/projects/markdown/">markdown</a>. Cela permet d'avoir accès aux valeurs de l'entête du contenu ainsi que celles de l'entête du <a href="http://haml.info">haml</a></p></li>
<li><p><code>content</code> : contenu html à insérer (généré à partir du <a href="http://daringfireball.net/projects/markdown/">markdown</a> ou à partir du <a href="http://haml.info">haml</a>)</p></li>
</ul><p>D'autres propriétés existent, mais entre ça et les exemples ça devrait permettre de commencer <code>;-)</code></p>
<h3 id="toc_15">Et donc, comment que ça marche en pratique ?</h3>
<p>Quelques petites commandes au niveau de <code>wlt</code> :</p>
<h4 id="toc_16">
<code>wlt assets</code>
</h4>
<p>Compilation des css et javascript.</p>
<h4 id="toc_17">
<code>wlt build</code>
</h4>
<p>Vide le répertoire de sortie et génère l'intégralité des données.</p>
<h4 id="toc_18">
<code>wlt clean</code>
</h4>
<p>Vide le répertoire de sortie</p>
<h4 id="toc_19">
<code>wlt gollum</code>
</h4>
<p>Lance <a href="https://github.com/github/gollum">gollum</a> afin de visualiser et éditer les fichiers markdown du projet. Attention, seuls les fichiers ajoutés à <a href="http://git-scm.com">git</a> sont gérés.</p>
<h4 id="toc_20">
<code>wlt serve</code>
</h4>
<p>Compile l'ensemble des données en changeant l'url de destination et le rend disponible sur http://localhost:4000</p>
<h4 id="toc_21">
<code>wlt scaffold</code>
</h4>
<p>Permet de générer une version de base, simple ou déjà relativement complexe, facilitant le démarrage avec <code>wlt</code>.</p>
<p>Les deux commandes sont <code>wlt scaffold basic</code> et <code>wlt scaffold full</code>.</p>
<p>La version basique contient le strict minimum pour bien commencer :</p>
<ul><li>fichier css de base</li>
<li>fichier js de base</li>
<li>une page d'index listant tous les billets</li>
<li>un template pour les billets</li>
<li>un header contenant les infos twitter, opengraph, etc</li>
<li>un atom, un sitemap</li>
<li>un fichier <a href="http://rake.rubyforge.org/">rake</a> et un fichier <a href="https://github.com/guard/guard">guard</a></li>
</ul><p>La version complète rajoute :</p>
<ul><li>un css déjà correct (couleurs, mise en page, etc)</li>
<li>tags, pages</li>
<li>quelques partiels</li>
</ul><h3 id="toc_22">Getting started</h3>
<p>Pour finir, voici un mini tuto pour prendre en main <code>wlt</code>.</p>
<ol><li><p>Créer un répertoire destiné à recevoir vos sources, dans notre cas <code>mon_supair_blog</code></p>
<pre><code class="sh">mkdir mon_supair_blog
<span class="nb">cd </span>mon_supair_blog
</code></pre></li>
<li><p>On échafaude en version basique (pour la version full je vous laisse regarder)</p>
<p>Attention, <code>wlt scaffold</code> nécessite un répertoire vide.</p>
<pre><code class="sh">wlt scaffold basic
</code></pre>
<p>Vous vous retrouvez donc avec tout ce qu'il faut pour commencer.</p></li>
<li><p>Vous pouvez déjà voir le rendu tout de suite :</p>
<pre><code class="sh">wlt serve
</code></pre>
<p>Puis rendez-vous sur http://localhost:4000</p>
<p>Et voilà, votre blog est en route !</p></li>
<li><p>Créer un dépôt git (utile pour plein de raisons, entre autre pour l'édition)</p>
<pre><code class="sh">git init
git add .
git ci -m <span class="s2">"Initial scaffold"</span>
</code></pre></li>
<li><p>Un peu de configuration</p>
<p>Editez le fichier <code>config.yaml</code>. La configuration est plutôt simple et claire.</p>
<p>Editez le fichier <code>_pub/robots.txt</code> pour changer l'adresse du fichier sitemap.</p>
<p>Si vous voulez utiliser le déploiement via <a href="http://rake.rubyforge.org/">rake</a> ajoutez une clé <code>deploy_to</code>. Vous pouvez voir l'usage dans le fichier <code>Rakefile</code>.</p></li>
<li><p>Editez le contenu, ajoutez un post, etc.</p>
<p>Si vous voulez éditer un contenu existant (et versionné dans git) le plus simple est d'utiliser <a href="https://github.com/github/gollum">gollum</a> :</p>
<pre><code class="sh">wlt gollum
</code></pre>
<p>Puis rendez-vous sur http://localhost:4567/pages</p>
<p>Vous pouvez aussi éditer le fichier <a href="http://daringfireball.net/projects/markdown/">markdown</a> à la main.</p>
<p>Si vous voulez créer un nouveau post, facile :</p>
<pre><code class="sh">touch _posts/2013-01-29-web-log-today-say-cool.md
git add _posts/2013-01-29-web-log-today-say-cool.md
git ci -m <span class="s2">"Add new post"</span>
wlt gollum
</code></pre>
<p>Ha oui, faites attention à un point : <a href="https://github.com/github/gollum">gollum</a> commit dans git lorsque vous enregistrez.</p></li>
<li><p>Un peu plus loin ?</p>
<pre><code class="sh">wlt serve &
guard
</code></pre>
<p>Comme ça, vous pouvez éditez vos fichiers, et voir le rendu en même temps sans relancer les commandes à la main.</p></li>
<li><p>Publication</p>
<p>Si votre serveur permet de faire du rsync, facile :</p>
<pre><code class="sh">rake deploy
</code></pre>
<p>Et voilà, c'est dispo !</p></li>
</ol><p>Alors, trop facile, non ?</p>
<h3 id="toc_23">Mot de la fin</h3>
<p>Et voilà, c'est la fin de la prez. Alors, vous voyez bien que le html c'est surfait !</p>
<p>Comme quoi, on part d'un besoin tout bête, faire une page web tout simple, et on arrive à un générateur de site et blog statique top moumoute à base de <a href="http://ruby-lang.org">ruby</a>, <a href="http://daringfireball.net/projects/markdown/">markdown</a> et plein de trucs trop cool.</p>
<p>Ha oui, le tout est sous licence BSD, donc faites vous plaisir.</p>
<p>Il reste pas mal de taff, par exemple améliorer vraiment la partie ruby, enfin les objets utilisés côté <a href="http://haml.info">haml</a> surtout. Et rajouter des tests aussi, j'aimerais bien le blinder de rspec.</p>
<p>Donc voilà, je ne sais pas comment ce petit soft évoluera, la principal étant qu'il répond à mon propre besoin.</p>
<h3 id="toc_24">Il ne manquerait pas un truc ?</h3>
<p>Ha oui, l'url à laquelle trouver tout cela : <a href="https://github.com/CrEv/wlt">https://github.com/CrEv/wlt</a></p><div><a href="https://linuxfr.org/users/crev/journaux/web-log-today-est-juillet-ecrire-un-blog-de-nos-jours.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/97246/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/crev/journaux/web-log-today-est-juillet-ecrire-un-blog-de-nos-jours#comments">ouvrir dans le navigateur</a>
</p>
CrEvhttps://linuxfr.org/nodes/97246/comments.atomtag:linuxfr.org,2005:Diary/331552012-09-21T20:15:27+02:002012-09-21T20:15:27+02:00Torque passe open sourceLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>
<img src="//img.linuxfr.org/img/687474703a2f2f7777772e676e6f6d65746563682e636f6d2f746f727175652f696d616765732f626c6f672d323031322d30392d31332f323031322d30392d31332d546f727175654c6f676f2e6a7067/2012-09-13-TorqueLogo.jpg" alt="T" title="Source : http://www.gnometech.com/torque/images/blog-2012-09-13/2012-09-13-TorqueLogo.jpg" />
</p>
<h2 id="toc_0">Torque ?</h2>
<p>Torque est un <a href="http://fr.wikipedia.org/wiki/moteur de jeu" title="Définition Wikipédia">moteur de jeu</a> qui est développé depuis une dizaine d'année.</p>
<p>À l'origine, il fut développé pour le FPS Tribes 2.<br />
Par la suite, il a servi dans divers projets, notamment quelques jeux indépendants tels que <a href="http://spacepiratesandzombies.com/">S.P.A.Z</a> ou <a href="http://www.frozensynapse.com/">Frozen Synapse</a>.</p>
<p>Il fonctionne sur Linux, Mac-OSX et MS-Windows.</p>
<p>Pour l'utiliser, vous devrez parler C++.<br />
Il est également possible de le scripter, à l'aide d'un langage interne au moteur (TorqueScript).</p>
<p>L'affichage se fait via Direct3D (MS-Windows) ou OpenGL (reste du monde).</p>
<p>Vous pouvez faire appel à des middlewares tels que fmod (pour le son) ou PhysX (par défaut sous MS-Windows).</p>
<p>Pour en savoir plus sur ses possibilités, <a href="http://www.garagegames.com/products/torque-3d">consultez le site officiel</a></p>
<p> <br />
</p>
<h2 id="toc_1">L'annonce</h2>
<p>Conséquence de la percée de <a href="http://en.wikipedia.org/wiki/Unigine" title="Définition Wikipédia">Unigine</a> ?</p>
<p>Toujours est-il que le blog de Garage Games a annoncé le 20 septembre : <a href="http://www.garagegames.com/community/blogs/view/21886">Torque passe open-source</a> <a href="http://fr.wikipedia.org/wiki/Licence_MIT" title="Définition Wikipédia">(Licence MIT)</a>)</p>
<p>Les derniers acheteurs de la licence commerciale Torque (100$) peuvent se faire rembourser. Il suffit de demander à <em><a href="mailto:support@garagegames.com">support@garagegames.com</a></em>.</p>
<p>Vous pouvez charger les sources <a href="https://github.com/GarageGames/Torque3D">sur GitHub</a></p>
<p>Les outils annexes vendus séparément ne passent pas sous licence MIT, sauf mention contraire.</p><div><a href="https://linuxfr.org/users/jseb/journaux/torque-passe-open-source.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/95702/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/jseb/journaux/torque-passe-open-source#comments">ouvrir dans le navigateur</a>
</p>
jsebhttps://linuxfr.org/nodes/95702/comments.atomtag:linuxfr.org,2005:Diary/328352012-07-15T18:21:06+02:002012-07-15T18:21:06+02:00Première release du framework et moteur graphique 3dNovacLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Bonjour à tous,</p>
<p>J'ai le plaisir de vous présenter enfin <a href="http://3dNovac.eu">3dNovac</a>.<br />
Celui-ci est un framework C++ open source et multiplateforme, ayant pour but premier de fournir les outils nécessaires au développement de Jeux vidéo tout en restant portable et léger.</p>
<p>La première release du framework vient d’être publiée en version 0.1, de nombreuses choses restent à faire mais les bases sont là.<br />
La release fournit les binaires d'un Demo Viewer pour Linux et Windows, je vous encourage à la tester et me faire des retours… positifs ou non :P</p>
<p>
<img src="//img.linuxfr.org/img/687474703a2f2f33646e6f7661632e65752f56414144494e2f7468656d65732f4e63576562736974657468656d652f6c6f676f4e635472616e73706172656e742e706e67/logoNcTransparent.png" alt="3dNovacLogo" title="Source : http://3dnovac.eu/VAADIN/themes/NcWebsitetheme/logoNcTransparent.png" />
</p>
<h2 id="toc_0">Fonctionnalités</h2>
<p>Le framework est totalement opérationnel sur Linux et Windows. <br />
Il est composé de différentes librairies C++:</p>
<ul><li><strong>Nc-Core</strong>: intégrant de nombreuses abstractions systèmes et autre. Ne dépendant d’aucune bibliothèque externe. </li>
<li><strong>Nc-Graphics</strong>: intégrant un moteur graphique utilisant OpenGL 3.</li>
<li><strong>Nc-GUI</strong>: Surcouche à Nc-Graphics intégrant un moteur de GUI.</li>
<li><strong>Nc-Audio</strong>: intégrant un moteur audio pour le moment utilisant sfml-audio.</li>
<li><strong>Nc-Contrib</strong>: intégrant quelques autres fonctionnalités n'ayant pas leur place dans les autres packages.</li>
</ul><p>Vous pourrez trouver une liste complète des fonctionnalités de ces librairies dans le <a href="http://ks386668.kimsufi.com/~ponpon/Packages/Releases3dNovac/v0.1%20-%2012.07.2012%20-%20%5BRelease%5D/3dNovacChangelog-0.1.txt">changelog</a> de la release.</p>
<h2 id="toc_1">Remise en contexte</h2>
<p>Étant étudiant, j'ai commencé à développer le moteur graphique deux ans auparavant dans un souci d'apprentissage personnel. <br />
Je suis pour le moment seul à travailler sur le projet, mais les contributeurs sont les bienvenus ;)<br />
Maintenant mon objectif serait de proposer un véritable framework permettant de créer un jeu facilement et offrant des possibilités sans limite aux développeurs expérimentés. <br />
De mon côté je compte bien évidemment concevoir mes propres jeux avec le framework.</p>
<h2 id="toc_2">Futures versions</h2>
<p>Pour la prochaine version j'ai l'intention de recoder complètement le moteur audio en utilisant OpenAL. Une liste complète des fonctionnalités espérées est disponible dans la section "<a href="http://3dnovac.eu/DevelopmentInProgress">Development in progress</a>" du site.<br />
Cependant de nombreuses milestones viendront compléter la release.</p>
<h2 id="toc_3">Documentation</h2>
<p>Je tiens à fournir une documentation expliquant dans les détails le framework et ses mécanismes. Aussi bien pour le développeur souhaitant apprendre comment utiliser au mieux 3dNovac, mais aussi et surtout pour lui permettre de comprendre son fonctionnement.<br />
C'est pourquoi j'ai commencé la rédaction du "<a href="http://ks386668.kimsufi.com/~ponpon/Packages/Releases3dNovac/v0.1%20-%2012.07.2012%20-%20%5BRelease%5D/3dNovacBook-0.1.pdf">Book</a>" disponible avec la release. Notamment un rapide coup d’œil sur le <a href="http://3dnovac.eu/VAADIN/Doc/UML.svg">Diagramme UML</a> vous permettra déjà d'avoir une bonne visibilité.<br />
La documentation est encore loin d’être parfaite, mais je compte bien faire de gros efforts sur ce point.</p>
<h2 id="toc_4">Problèmes</h2>
<p>Actuellement le moteur 3d ne fonctionnera pas si vous avez une version OpenGL inférieure à 3. Il vous faudra donc peut être mettre à jour vos drivers graphiques.<br />
J'ai recensé un problème sur les cartes NVIDIA Quadro, celles-ci présenteraient un scintillement de l'image au niveau des framebuffers. Ainsi que les GPU d'Intel qui ne supporteraient qu'une version de GLSL 1.3 (A vérifier).<br />
Je tenterais de corriger ces problèmes dans la prochaine milestone pour faire fonctionner le moteur sur un maximum de machines. <br />
Si vous rencontrez des difficultés avec le Demo Viewer, n’hésitez pas à m'en faire part.</p>
<h2 id="toc_5">Liens</h2>
<p>Site officiel - <a href="http://3dNovac.eu">http://3dNovac.eu</a><br />
Changelog - <a href="http://ks386668.kimsufi.com/~ponpon/Packages/Releases3dNovac/v0.1%20-%2012.07.2012%20-%20%5BRelease%5D/3dNovacChangelog-0.1.txt">3dNovacChangelog-0.1.txt</a><br />
Diagramme UML en format svg - <a href="http://3dnovac.eu/VAADIN/Doc/UML.svg">UML.svg</a> - (Je vous conseille de télécharger l'image pour pouvoir la zoomer.)<br />
Binaire du Demo Viewer pour Linux - <a href="http://ks386668.kimsufi.com/~ponpon/Packages/Releases3dNovac/v0.1%20-%2012.07.2012%20-%20%5BRelease%5D/3dNovacDemoViewer-Linuxi686-0.1.zip">3dNovacDemoViewer-Linuxi686-0.1.zip</a><br />
Binaire du Demo Viewer pour Windows - <a href="http://ks386668.kimsufi.com/~ponpon/Packages/Releases3dNovac/v0.1%20-%2012.07.2012%20-%20%5BRelease%5D/3dNovacDemoViewer-Win32-0.1.zip">3dNovacDemoViewer-Win32-0.1.zip</a></p><div><a href="https://linuxfr.org/users/poncin-matthieu/journaux/premiere-release-du-framework-et-moteur-graphique-3dnovac.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/94842/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/poncin-matthieu/journaux/premiere-release-du-framework-et-moteur-graphique-3dnovac#comments">ouvrir dans le navigateur</a>
</p>
poncin.matthieuhttps://linuxfr.org/nodes/94842/comments.atomtag:linuxfr.org,2005:Diary/319382011-12-09T18:15:36+01:002011-12-09T18:15:36+01:00Linux fait même le café, en open-source et open-harwareLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Salut cher Journal !</p>
<p>Aujourd'hui, sans doute une excellente nouvelle pour tous les fainéants : une firme du fin fond de l'Allemagne (entre Paderborn et Bielefeld) vient de mettre sur le marché des petites briques encastrables qui ne sont que des microcontrôleurs qui peuvent asservir n'importe quel moteur ou lampe que vous mettrez au bout (entre 5 et 30 V environ, n'exagérons pas quand même). Des briques-extensions pour le wifi, pour de l'éthernet et pour un port série (RS485) existent. </p>
<p>L'intérêt essentiel ? Ça vous permettra d'asservir à moindre frais la machine à café de la cuisine à partir du salon (quoique l'asservissement risque de coûter plus cher que la cafetière, en plus de vous faire gagner des calories inutilement)</p>
<p>Des composants similaires existent sans doute déjà, mais ce qui m'a paru intéressant/particulier, c'est que :<br />
- ces composants ne semblent pas encore excessivement chers (chaque brique coûte 40 €, à part un «master» qui coûte 30 €, et les extensions sont entre 6 et 17 €)<br />
- la connectique est standard (Usb, wifi, port série, éthernet) <br />
- c'est du 32 bit ARM<br />
- le matériel est sous licence CERN Open Hardware<br />
- les logiciels pour faire fonctionner les pièces (firmware comme ceux qui tournent sur l'ordi) m'ont aussi l'air libres, ou tout cas sont en ligne. Tout ou partie (j'ai pas vérifié) du code est sous GPL.<br />
- le site comporte de nombreux exemples de code, et ce en C/C++/C#/Java/Python<br />
- la programmation des jouets peut se faire à différents niveaux d'abstraction<br />
- les quelques extensions déjà existantes permettent de faire plein de capteurs et de contrôler plein de petites machines de votre invention<br />
- ça s'interface avec du linux, du windows, de l'android, et bientôt de l'iOS/ Mac OS</p>
<p>Pour compléter la pub, voilà une petite vidéo pour voir la démo par l'entreprise : <a href="http://www.youtube.com/watch?v=3DwzskCmTgE">http://www.youtube.com/watch?v=3DwzskCmTgE</a> En anglais, désolé pour les anglophobes. </p>
<p>Je ne sais pas si de telles initiatives sont très répandues, donc si c'est déjà bien implanté là où vous habitez et que ce n'est qu'une entreprise de plus à se lancer dans l'aventure, prière de moinsser et de m'indiquer là où l'herbe est plus verte.</p>
<p>Sinon, je ne suis pas sûr que les particuliers aient toujours vraiment envie de construire leurs légos électroniques, mais comme outils de test dans des labos, ou pour développer la domotique, ce genre d'appareil semble utile.</p>
<p>Source et liens utiles :</p>
<p>
<a href="http://www.golem.de/1112/88320.html">http://www.golem.de/1112/88320.html</a>
<br />
<a href="http://www.tinkerforge.com/doc/Product_Overview.html">http://www.tinkerforge.com/doc/Product_Overview.html</a>
<br />
<a href="http://www.tinkerforge.com/doc/Source_Code.html">http://www.tinkerforge.com/doc/Source_Code.html</a>
</p><div><a href="https://linuxfr.org/users/paladar/journaux/linux-fait-m%C3%AAme-le-caf%C3%A9-en-open-source-et-open-harware.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/88585/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/paladar/journaux/linux-fait-m%C3%AAme-le-caf%C3%A9-en-open-source-et-open-harware#comments">ouvrir dans le navigateur</a>
</p>
paladarhttps://linuxfr.org/nodes/88585/comments.atom