Posté le 05/11/2018 21:16
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 230 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements
Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd
Citer : Posté le 11/11/2018 13:45 | #
Et tu utilises gint ou pas ?
Je précise que si vous utilisez gint (pour les prochains), la méthode est entièrement différente, il faut convertir avec fxconv et rien d'autre. Mais c'est aussi plus automatique (Makefile)
Citer : Posté le 11/11/2018 13:47 | #
mais du coup quelqu'un à la réponse de pourquoi il ne m'affiche pas le code de l'image ?
Citer : Posté le 11/11/2018 13:48 | #
Je pense, oui... ça fait un moment qu'il ne marche pas bien. Et on n'a pas accès au code car le serveur est à Ziqumu. >_<
Citer : Posté le 11/11/2018 13:59 | #
Ah d'accord xD j'ai trouvé un alternatif http://digole.com/tools/PicturetoC_Hex_converter.php qui marche bien bien sûr il n'est pas aussi complet niveau option mais ça fais l'affaire
Citer : Posté le 11/11/2018 14:01 | #
Pas mal ! Attention si c'est pour PC il encode probablement le noir par 0 et le blanc par 1, soit le contraire de la calculatrice. Si c'est le cas, il te faudra inverser les bits en sortie
Citer : Posté le 11/11/2018 14:06 | #
Je précise que si vous utilisez gint (pour les prochains), la méthode est entièrement différente, il faut convertir avec fxconv et rien d'autre. Mais c'est aussi plus automatique (Makefile)
C'est pour ça que j'avais demandé s'il utilisait gint
Ajouté le 11/11/2018 à 14:08 :
Par contre, il me semble que l'on a les sources du code de Ziqumu
Citer : Posté le 11/11/2018 14:10 | #
Il y aussi un outil de Ninestars en Java pour faire ça... quelque part sur le forum.
Citer : Posté le 11/11/2018 14:36 | #
En pièce jointe de ce topic, et au final, il semble que ce soit smashmaster l'auteur du code
Citer : Posté le 11/11/2018 14:41 | #
Pas mal ! Attention si c'est pour PC il encode probablement le noir par 0 et le blanc par 1, soit le contraire de la calculatrice. Si c'est le cas, il te faudra inverser les bits en sortie
Tout à très bien fonctionné sans manipulation
Citer : Posté le 11/11/2018 14:44 | #
Super ! Est-ce que tu as trouvé une solution pour le problème de taille des sprites, d'aileurs ?
Citer : Posté le 11/11/2018 14:58 | # | Fichier joint
Oui c'est bon en fait j'ai préféré prendre une autre source qui avait mis le sprite de ce perso avec moins de pixel et ça m'a convenu Le déplacement marche bien, la map est importé c'est importé sans problème, j'ai ajouter les collisions qui fonctionne parfaitement, il me reste juste un bémol, la perspective pour le décor :
Citer : Posté le 11/11/2018 14:59 | # | Fichier joint
si dessus tout fonctionne bien mais quand on superpose le décor et le personnage :
Je suppose donc qu'il faut que je dise que si il y a un pixel du persnnage en blanc sur le décor en noir, il devient blanc, mais je ne sais pas comment faire :/
Citer : Posté le 11/11/2018 15:05 | # | Fichier joint
Alors, il y a une technique pour ça ! Ça consiste à dire qu'une partie des pixels de ton personnages est transparente. Avec MonochromeLib, on le modélise par un masque alpha (masque de transparence). Il te faut alors deux sprites pour ton personnage :
Quand tu veux afficher ton personnage, tu dessines d'abord celui de gauche avec ML_bmp_and_*(), ce qui a pour effet d'effacer tous les pixels blancs, puis te dessines par-dessus celui de droite avec ML_bmp_or_*() pour obtenir les pixels noirs !
Citer : Posté le 11/11/2018 16:00 | #
Oui je comprend le systeme, cependant j'utilise le C-engine, je sais qu'on peut utiliser cette technique car j'ai vu dans un exemple de jeu un tile de sprite du perso avec l'alpha, si je ne me tropme pas on ne peux pas utiliser les commande que tu m'as prescrite non ?
Dans le C-engine on crée d'abord le sprite :
ensuite on le défini :
apres on crée l'animation (sur l'exemple que je donne il n'y a qu'un seul sprite mais il faut quand même faire l'animation pour l'utiliser ) :
on indique toute les animation que le perso peut utiliser :
Animation A_Perso[]={A_perso1 , A_Perso_Marche , A_Perso_Marche_bas , A_perso_bas1 , A_Perso_Marche_haut , A_perso_haut1};
et dans un autre .c on indique quand les utiliser :
{
Move(1,0);
SetIt(1);
GetObject()->GetRender()->ReverseRender(true);
isdo = true;
p = 1;
}
if(input_press(K_LEFT) and (isdo == false))
{
Move(-1,0);
SetIt(1);
GetObject()->GetRender()->ReverseRender(false);
isdo = true;
p = 2;
}
if(input_press(K_DOWN ) and (isdo == false))
{
Move(0,-1);
SetIt(2);
GetObject()->GetRender()->ReverseRender(false);
isdo = true;
p = 3;
}
if(input_press(K_UP) and (isdo == false))
{
Move(0,1);
SetIt(4);
GetObject()->GetRender()->ReverseRender(false);
isdo = true;
p = 4;
}
J'ai un peu simplifié mais en gros c'est ça x)
donc ma question est comment et ou je dois indiquer qu'il faut utiliser l'alpha ?
Citer : Posté le 11/11/2018 16:31 | #
Merci pour les explications sur le C-Engine ! Je ne connaissais pas trop le fonctionnement détaillé.
Où est-ce que tu mets l'apha ? Je n'en sais rien en principe, car je n'ai jamais utilisé le C-Engine. Par contre, j'ai été regarder dans les sources, et j'ai trouvé !
Je te mets là le lien vers le fichier Sprites.cpp, je pense que tu réussiras à trouver comment on fait !
Citer : Posté le 11/11/2018 16:37 | #
J'ai mp fife86 par email ( le créateur du C-engine) et il m'a passé toute ses sources déjà *pas que ce qu'il y a dans le git d'ailleurs* c'est même ça qui m'as permis d'arriver jusque là sinon j'était perdu x) donc oui je vais regarder un peu le code, je voulais simplement éclaircir voir si il y avait une façon plus standard et direct mais bon j'ai du boulot x) merci de ton aide
Citer : Posté le 11/11/2018 16:39 | #
La transparence alpha est pas déjà expliqué dans les tutos du C-engine ??
Citer : Posté le 11/11/2018 16:41 | #
Qu'on se comprenne bien, il y a une façon très standard et très directe pour le faire, sans toucher au C-Engine ! Il faut juste modifier un tout petit peu ton code.
C'est juste plus marrant si tu trouves tout seul !
Citer : Posté le 11/11/2018 17:10 | #
La transparence alpha est pas déjà expliqué dans les tutos du C-engine ??
Je ne pense pas x) enfin je revérifierais
Qu'on se comprenne bien, il y a une façon très standard et très directe pour le faire, sans toucher au C-Engine ! Il faut juste modifier un tout petit peu ton code.
C'est juste plus marrant si tu trouves tout seul !
ahah compliqué je ne fais encore que apprendre mais oui je vais bien voir ce que je peux faire je vais déjà en apprendre plus sur comment utiliser les fonctions de MonochromeLib et je verrais par la suite comment je peux modifier tout ça je suis content ça avance plus vite que je ne le pensais mon projet une fois que j'aurais réglé tout les petits défaut et que j'aurais recréé le système de combat alors je le publierais et le mettrais à jour au fur et à mesure
Citer : Posté le 13/11/2018 19:15 | # | Fichier joint
Nouvelles du projet :
J'ai réussi à trouver ce qu'il faut rajouter pour mettre l'alpha !
Donc maintenant,
-le déplacement est ok
-reproduction de la map : 1ere salle fini
-collision ok
-Alpha du personnage ok
Un petit aperçu par rapport au jeu original comparé à UnderCasio :
Je pense que la plupart des choses sont fait maintenant il faut que je gère la boite de dialogue et l'interface de combat
Voilà c'est tout pour les nouvelles du projet
Ajouté le 13/11/2018 à 19:56 :
Je te mets là le lien vers le fichier Sprites.cpp, je pense que tu réussiras à trouver comment on fait !
Merci grâce à cet indice j'ai trouvé comment faire
Citer : Posté le 13/11/2018 20:11 | #
As-tu essayé de faire un quadrillage en damier pour le cercle noir, plutôt que de le remplir entièrement de noir ? Comme la couleur originale est plus claire, ça pourrait être plus fidèle.