Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Discussions


Index du Forum » Discussions » Comment faire un jeu en C pour Graph 75 et 35+ ?
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Comment faire un jeu en C pour Graph 75 et 35+ ?

Posté le 27/11/2019 15:12

Bonjour à tous,
Récemment j'ai voulu commencé à faire un jeux en C mais le souci c'est que je ne parvient pas à trouver les alternatives de certaines fonction présente en BASIC comme par exemple:
-Pxlon
-F-Line
-Getkey
-Text

Tout ce qui relève à des fonction spécifique de la calculatrice, dont ces fonctions (celles que je viens d’énoncé au dessus) qui me semble indispensable.

Merci d'avance pour votre aide


Précédente 1, 2, 3 ··· 8, 9, 10, 11, 12 Suivante
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Citer : Posté le 29/08/2022 17:10 | #


J'ai fait un make de libSerial mais je doit mettre où le "libserial.a" après ?
"La créativité est contagieuse faites la tourner"
Albert Einstein
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Citer : Posté le 29/08/2022 18:27 | #


Ha c'est bon j'ai réussi quel galère, à installer tout ça
"La créativité est contagieuse faites la tourner"
Albert Einstein
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Citer : Posté le 29/08/2022 18:57 | #


Alors j'ai un petit soucis, je veux envoyer un message et quand mets cette ligne :
gint_world_switch(GINT_CALL(Serial_Write, 'a'));

Ma casio s'éteint
"La créativité est contagieuse faites la tourner"
Albert Einstein
Lephenixnoir En ligne Administrateur Points: 23513 Défis: 149 Message

Citer : Posté le 29/08/2022 19:00 | #


Attends alors une seconde. Ce que tu essaies de faire est assez compliqué, faut y aller doucement.

Déjà c'est quel modèle ? Les numéros de syscalls de la libSerial sont pour la Graph 90+E.
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Citer : Posté le 29/08/2022 19:04 | #


C'est pour la Graph 90+E
et j'ai utilisé cette config : unsigned char config[] = { 0, 5, 0, 0, 0, 0 };
"La créativité est contagieuse faites la tourner"
Albert Einstein
Lephenixnoir En ligne Administrateur Points: 23513 Défis: 149 Message

Citer : Posté le 30/08/2022 14:50 | #


Pour ne pas laisser le topic en plan : SlyVTT indique ne pas avoir réussi à envoyer pour l'instant. Il doit y avoir un bug ou deux à chercher ; je n'ai pas eu le temps de m'y intéresser personnellement.
Slyvtt En ligne Community Manager Points: 1645 Défis: 1 Message

Citer : Posté le 30/08/2022 15:06 | #


Comme j'ai fini de remettre au propre la SDL, je vais regarder.
Je me remets dessus
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Citer : Posté le 28/05/2023 17:05 | #


Hello hello !
Je voulais savoir si il existe une lib bruit de perlin déjà présente dans la casio, car j'en ai fait une mais elle est très longue à généré un bruit.
S'il n'y en a pas dans la casio, est-ce que vous aurez pas une version "lite" du code ?
"La créativité est contagieuse faites la tourner"
Albert Einstein
Fcalva En ligne Membre Points: 243 Défis: 0 Message

Citer : Posté le 28/05/2023 17:09 | #


De la génération aléatoire je sens....
Je pense que ça peut se trouver en ligne. En puis tu peux reprendre un truc déja fait et le simplifier/l'optimiser pour ton usage
Pc master race - Apréciateur de Noctua moyen
Caltos : G90+E, FX-92+ (x2)
Lephenixnoir En ligne Administrateur Points: 23513 Défis: 149 Message

Citer : Posté le 28/05/2023 17:17 | #


J'ai cette implémentation : https://gitea.planet-casio.com/Lephenixnoir/Nooncraft/src/branch/main/src/world.cpp#L56-L172

Si tu n'as pas de type en point fixe tu peux juste remplacer num par float et vec2 par struct { float x, y; } vec2.
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Citer : Posté le 28/05/2023 17:40 | #


Merci ! Alors du coup j'ai fait toute les modification cependant je ne suis pas sûr de bien l'utiliser (parce que ça marche pas), j'ai fait ça, est-ce que c'est correct ?

    int * sp = perlinNoise(123, 3);
    for (size_t x = 0; x < 396; x++)
    {
        for (size_t y = 0; y < 224; y++)
        {
            img[y*w+x] = samplePerlin(sp,123,x,y,100);
        }
        
    }
    free(sp);

En supposant que N c'est la seed que levels c'est la valeur max et pour PERLIN_CELL_SIZE je ne sais pas
"La créativité est contagieuse faites la tourner"
Albert Einstein
Fcalva En ligne Membre Points: 243 Défis: 0 Message

Citer : Posté le 28/05/2023 17:43 | #


Je saurais dire, mais il y a ce bout là :
int * sp = perlinNoise(123, 3);

Qui m'intrigue, vu que tu fait int fois sp = [..]
Pc master race - Apréciateur de Noctua moyen
Caltos : G90+E, FX-92+ (x2)
Lephenixnoir En ligne Administrateur Points: 23513 Défis: 149 Message

Citer : Posté le 28/05/2023 17:45 | #


Alors...

- La map de bruit de perlin est de type int8_t * pas int * (les valeurs aléatoires vont de -128 à 127)
- N=123 c'est la taille de la texture, tu récupères N*N valeurs aléatoires
- 3 c'est la taille des cellules, je conseille un truc du genre N/8 environ (donc 15-16 ici)
- levels c'est le nombre d'octaves ça doit varier entre genre 1 et 4 grosso modo, 100 c'est délirant
- x, y doivent être inférieurs à N
- Libérer sp avec delete[] plutôt que free
Lephenixnoir En ligne Administrateur Points: 23513 Défis: 149 Message

Citer : Posté le 28/05/2023 17:46 | #


Ah et finalement la valeur donnée par samplePerlin() varie entre -128 et 127 c'est à toi de te débrouiller pour en faire une couleur utile.
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Citer : Posté le 28/05/2023 18:48 | #


Ok Merci ça marche nickel maintenant
"La créativité est contagieuse faites la tourner"
Albert Einstein
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Citer : Posté le 30/05/2023 23:12 | #


Hello !
J'ai une question, je souhaite créé un script en python qui converti une image en fichier binaire et qui pourra être lu et alloué par la casio.
Par conséquent, quelques points m'échappent :
- Existe t'il déjà un script qui fait cela ?
Sinon :
- Comment ont fait pour créé une nouvelle bopti_image avec une format et une dimension définie ?
- Quelles sont les information à stocker dans le fichier binaire et de quel tailles (dimension des tableau comme la palette par exemple) ?
"La créativité est contagieuse faites la tourner"
Albert Einstein
Mb88 En ligne Labélisateur Points: 941 Défis: 3 Message
Lephenixnoir En ligne Administrateur Points: 23513 Défis: 149 Message

Citer : Posté le 30/05/2023 23:26 | #


Pour ce qui est de gint...

- fxconv sert exactement à ça
- image_alloc()
- Tout ce qu'il y a dans image_t, de près ou de loin
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Citer : Posté le 30/05/2023 23:27 | #


Mb88 a écrit :
limg

Merci !
Mais du coup il y a un moyen d'avoir un type bopti_image parce que j'ai regardé liblimg.h et je ne vois aucune fonction qui retourne de ce type
"La créativité est contagieuse faites la tourner"
Albert Einstein
Mb88 En ligne Labélisateur Points: 941 Défis: 3 Message

Citer : Posté le 31/05/2023 13:36 | #


Non, mais tu peux utiliser la struct Limg pour dessiner l'image directement, en récupérant les pixels avec limg_getpixel, qui retourne un uint16 que tu peux directement mettre en argument à dpixel, ou dans la vram.

Tu regarder https://github.com/mibi88/limg/blob/main/limgview/sdl1_2/main.c .

Bonne chance !
Farhi Hors ligne Membre Points: 1258 Défis: 0 Message

Citer : Posté le 31/05/2023 13:50 | #


Merci ! J'ai réussi finalement depuis, j'ai finalement utilisé fxconv comme Lephenixnoir me l'a conseillé. C'était plus facile à implémenté, mais merci quand même
"La créativité est contagieuse faites la tourner"
Albert Einstein
Précédente 1, 2, 3 ··· 8, 9, 10, 11, 12 Suivante

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2023 | Il y a 80 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