Forums Casio - Vos tutoriels et astuces

Index du Forum | Vos tutoriels et astuces | Tutoriels d'utilisation de gint (commentaires)
Lephenixnoir
Hors ligne
Administrateur
Niveau: Confirmé
Points: 10155
Défis: 130
Message
Posté le 15/07/2017 13:54

Tutoriels d'utilisation de gint (commentaires) :


Les tutoriels d'utilisation de gint sont sur ce topic.

Pour garder les tutoriels ensemble dans les posts du topic d'origine (et surtout pas créer un topic par tuto...), je vous propose de poster vos questions/commentaires/etc ici. Merci !


Watch me, as I build my empire with my own hands.



Hackcell
Hors ligne
Membre
Niveau: Intermédiaire
Points: 516
Défis: 4
Message
Citer : Posté le 17/07/2017 01:07 | #
Vu que le fxSDK n'est pas un IDE, c'est quoi du coup, un linker, une sorte de bibliothèque, un regroupement d'alias, etc ?
----------------------------------
<3 Keep calm <3
<3 and <3
<3 read shoujo <3
Zezombye
En ligne
Membre
Niveau: Confirmé
Points: 695
Défis: 7
Message
Citer : Posté le 17/07/2017 01:26 | #
Un SDK

C'est comme le sdk de casio : tu écris ton code sous ton éditeur préféré et tu compiles avec le sdk. (enfin j'imagine)
----------------------------------
Divers jeux : Puissance 4 - Chariot Wars - Sokoban
Ecrivez vos programmes basic sur PC avec BIDE
Lephenixnoir
Hors ligne
Administrateur
Niveau: Confirmé
Points: 10155
Défis: 130
Message
Citer : Posté le 17/07/2017 09:09 | #
SDK signifie « Software Development Kit », c'est-à-dire un ensemble d'outils permettant de développer des programmes. Ça, c'est ce que le fxSDK est. Le fxSDK est en ligne de commande mais ce n'est pas nécessaire à la définition.
IDE signifie « Integrated Development Environment », c'est-à-dire un environnement (logiciel graphique) de développement qui intègre tous les outils nécessaires au développement dans son interface. Le Projet Unicorn d'Intelligide est un IDE, malheureusement je ne trouve plus le topic (des choses ont été supprimées).

Le linker, non, c'est GNU ld. La bibliothèque, c'est plutôt gint, pour gérer l'exécution sur la calculatrice. le fxSDK est plus proche d'un groupe d'alias, mais ça fait quand même un peu plus : conversion, désassemblage, des choses comme ça. Il contient des programmes entièrement « nouveaux ».
----------------------------------
Watch me, as I build my empire with my own hands.
Hackcell
Hors ligne
Membre
Niveau: Intermédiaire
Points: 516
Défis: 4
Message
Citer : Posté le 17/07/2017 14:58 | #
Le premier tuto etait vraiment sympa (si tu crois que l'on a pas vu que c'etait de la propagande pour nous apprendre à coder proprement x) ), de plus il permet dirrectement de cerner les possibillités de gint du fait de l'utilisation d'un exemple concret.

Et puis encore bravo au vu de la quantité de travail que ça représente pour toi, alors que tu pouvais simplement balancer gint sans plus d'explication.
----------------------------------
<3 Keep calm <3
<3 and <3
<3 read shoujo <3
Lephenixnoir
Hors ligne
Administrateur
Niveau: Confirmé
Points: 10155
Défis: 130
Message
Citer : Posté le 17/07/2017 15:02 | #
En vérité, je comptais en parler plus tard mais le tuto est aussi un peu sur la programmation de jeux vidéos. J'ai que des connaissances empiriques dessus, issues de mes propres tests, donc je voulais pas affirmer ouvertement que ce que je propose est une exemple à suivre, mais l'idée est de montrer des méthodes simples pour effectuer des tâches classiques sans utiliser IsKeyDown() et affiliés.

Je sais bien que quasiment personne n'aura envie de se coltiner la doc dans les headers alors si je veux que la lib' soit utile, il faut bien que j'y mette les moyens. Merci !
----------------------------------
Watch me, as I build my empire with my own hands.
Theprog
Hors ligne
Membre
Niveau: Intermédiaire
Points: 1435
Défis: 20
Message
Citer : Posté le 01/08/2017 23:56 | #
Salut,

En tant que débutant sur Linux et donc dans les lignes de commande je galère un peu
Donc voilà en suivant le tutoriel (qui est d'ailleurs très bien fait), je me suis surtout rendu compte de l'importance du Makefile Seulement, c'est assez compliqué de bien comprendre les tutoriels qui parte vite loin et que j'ai du mal a comprendre en tant que débutant ou qui traitent souvent de cas (trop) simple (un fichier, voir deux, mais pas tout ce qui est engendré ici comme les assets ou autre).
Du coup, est-ce que ça serait possible d'avoir un petit topo ou en tout cas un exemple de Makefile histoire que j'ai un peu une idée de vers où aller en connaissant les commandes puisque je les ai utilisée dans le tutoriel ?
----------------------------------
Ninestars
Hors ligne
Membre
Niveau: Confirmé
Points: 1808
Défis: 22
Message
Citer : Posté le 02/08/2017 00:11 | #
+1 ^^'
----------------------------------
Cakeisalie5
Hors ligne
Administrateur
Niveau: Confirmé
Points: 1467
Défis: 8
Message
Citer : Posté le 02/08/2017 01:02 | #
Voilà un tutoriel rapide sur GNU make.
----------------------------------
Lephenixnoir
Hors ligne
Administrateur
Niveau: Confirmé
Points: 10155
Défis: 130
Message
Citer : Posté le 02/08/2017 17:01 | #
Passage rapide ; merci pour le tuto, Cake, ça aide (beaucoup, tu me sauves la vie en fait ) !

Pensez-vous qu'ajouter une fonctionnalité au fxSDK pour genrérer des Makefile à partir de fichiers de projets (indiquant où sont les sources, headers, assets, etc) soit utile ou intéressant ?
----------------------------------
Watch me, as I build my empire with my own hands.
Theprog
Hors ligne
Membre
Niveau: Intermédiaire
Points: 1435
Défis: 20
Message
Citer : Posté le 04/08/2017 12:40 | #
Personnellement, je trouve ça intéressant de faire son propre Makefile avec l'aide d'un tutoriel, mais bon après c'est vrai que c'est un certain confort d'avoir un Makefile généré automatiquement. Après, je vois pas trop ce qui change d'un projet à l'autre dans le makefile en dehors des noms, versions, date...
----------------------------------
Cakeisalie5
Hors ligne
Administrateur
Niveau: Confirmé
Points: 1467
Défis: 8
Message
Citer : Posté le 04/08/2017 12:45 | #
La structure du projet, notamment dans l'organisation des données. Est-ce que tu veux permettre les src/sousdossier/coucou.c ? Est-ce que tu préfères avoir les fichiers source dans la racine ? Est-ce que tu veux avoir un dossier objet séparé ou non ? Est-ce que tu veux utiliser .font.bmp ou plutôt avoir un dossier fonts/ où tous les .bmp sont des fonts ? Et si tu veux générer un index automatiquement (comme moi dans Tu Quoque) ? Ou même des fichiers source dans un langage que t'inventes (comme les niveaux dans Tu Quoque, qui sont une grille de caractères représentant les tiles) ?

Y a plein de choses que tu peux faire. Après, tout le monde ne veut pas forcément se casser la tête.
----------------------------------
Lephenixnoir
Hors ligne
Administrateur
Niveau: Confirmé
Points: 10155
Défis: 130
Message
Citer : Posté le 04/08/2017 13:35 | #
Si je reprends les exemples que tu as donnés, Cake :
- Permettre un parcours récursif des dossiers de sources (potentiellement individuel) ;
- Permettre le recoupement des dossiers de sources et d'en-têtes ;
- Utiliser une wildcard pour repérer les polices parmi les assets ;
- Configurer des scripts pour convertir des ressources additionnelles (si j'ai bien compris) ;
Le coup de l'index, j'ai pas tout suivi. Tu peux préciser ?

Tout ceci sont des fonctionnalités de base d'un tel outil, s'il est bien conçu. À l'inverse, le Makefile en question peut gérer les dépendances automatiques, afficher des messages sympa, gérer le numéro de version via un fichier, tout plein de trucs fastidieux à faire soi-même quand on sait les faire, et passablement compliqués dans le cas contraire.
----------------------------------
Watch me, as I build my empire with my own hands.
Cakeisalie5
Hors ligne
Administrateur
Niveau: Confirmé
Points: 1467
Défis: 8
Message
Citer : Posté le 04/08/2017 13:55 | #
Le coup de l'index, c'est pour générer des index d'objets. Donc par exemple, on a fait trois maps, avec les symboles _map_a_data, _map_a_entities, _map_b_data, ..., _map_c_entities, bah il est utile de générer un index (en C par exemple) :

#include <gen_index.h>

struct index_entry map_entries = {
    {"a", _map_a_data, _map_a_entities},
    /* ... */
    {"c", _map_c_data, _map_c_entities}
};


Mais pour préparer le coup des ressources additionnelles, bon courage, parce que c'est chaud, surtout si tu veux "optimiser" le Makefile final
----------------------------------
Lephenixnoir
Hors ligne
Administrateur
Niveau: Confirmé
Points: 10155
Défis: 130
Message
Citer : Posté le 04/08/2017 14:00 | #
C'est pas si compliqué. Il te suffit de déclarer dans le fichier du projet une commande de conversion pour un type de fichier identifié par un dossier d'entrée et une wildcard, et de mettre un script shell derrière la commande pour générer l'index. Il n'y a pas de dépendances à mettre à jour car l'index n'a besoin d'être régénéré que si une des maps change, et si elle change elle devra être reconvertie, ce qui régénérera l'index comme side-effect.
----------------------------------
Watch me, as I build my empire with my own hands.
Cakeisalie5
Hors ligne
Administrateur
Niveau: Confirmé
Points: 1467
Défis: 8
Message
Citer : Posté le 04/08/2017 14:14 | #
Bon courage alors \o/
----------------------------------
Lephenixnoir
Hors ligne
Administrateur
Niveau: Confirmé
Points: 10155
Défis: 130
Message
Citer : Posté le 13/08/2017 22:32 | # | Fichier joint
Désolé de faire attendre les gens intéressés par la suite des tutos. Je suis pris à réfléchir sur un gameplay à la fois simple à mettre en oeuvre (histoire qu'il n'y ait pas 30 pages de code à chaque post), et suffisamment complet pour être intéressant.

Je dois aussi faire les spritesheets et les maps si on vaut pouvoir sortir du menu principal, et comme vous pouvez le voir, c'est pas de tout repos... x)





Donc je suis pas mort, mais je nage un poil niveau délais !
----------------------------------
Watch me, as I build my empire with my own hands.


Index du Forum | Vos tutoriels et astuces | Tutoriels d'utilisation de gint (commentaires)
Publicité et partenaires
Casio Education
Casio éducation

TI-Planet
Casiopeia
Casiopeia
CasioFan, la communauté ClassPad
CasioFan
CodeWalrus
CodeWalrus

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2015 | Il y a 47 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements
Rugby Manager | Jeu de basket | Jeu de handball | Jeu de tennis | Nova Raider | Réparation téléphone | Soccer Rush | Tasty Tale

Planète Casio est un site communautaire indépendant, géré bénévolement et n'est donc pas affilié à Casio | Toute reproduction de Planète Casio, même partielle, est interdite
Les fichiers, programmes et autres publications présents sur Planète Casio restent la propriété de leurs auteurs respectifs et peuvent être soumis à des licences ou des copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd