[WIP] AmiDARK Basic OS4 – Tech Demo BASIC 2D – Stars
15 sujets de 1 à 15 (sur un total de 15)
-
Salut à tous,
Comme certains le savent je développe actuellement un langage de programmation orienté jeux pour l’Amiga OS 4…
Pour l’instant, il ne s’agit que de jeux de commandes utilisables directement à partir du C/C++ mais cela simplifie déjà grandement la création avec les jeux de commandes qui déjà rapprochent du basic ..
Voici un premier exemple des jeux de commandes Basic2D qu’aura le langage.
Voici le lien pour télécharger l’exécutable de démonstration :
http://amigang.odyssey-creators.com/StarScrollV1.rar
Voici aussi la partie code source utilisateur qui utilise les fonctions du système en son état actuel :
// Definition du tableau de données des étoiles.
struct StarsStruct{
float XPos, YPos;
};
struct StarsStruct Stars[100];
// fonction principale
void main( int argc, char** argv ){
int XLoop = 0;
// On définit aléatoirement les étoiles dans les dimensions d'affichage ( 640x480 )
for( XLoop = 0; XLoop<=99; XLoop++){ Stars[ XLoop ].XPos = (float)DBRnd( 640 ); Stars[ XLoop ].YPos = (float)DBRnd( 479 ); } // On initialise le moteur. DarkENGINE_Start(); SetDisplayMode( 640, 480, 32 ); // Ouverture de l'écran glutDisplayFunc( DarkLoop ); // Toujours utilisé en OpenGL. glutIdleFunc( DarkLoop ); // Idem .. glutMainLoop(); DarkENGINE_End(); }; // Boucle principale de la démo. void DarkLoop( void ){ float XSpeed = 0.0; int XLoop = 0; int SColor = 0; DBCls( 0 ); // On gère toutes les étoiles for( XLoop = 0; XLoop<=99; XLoop++){ XSpeed = (float)(XLoop+1) * 0.0025 ; // Vitesse de l'étoile Stars[ XLoop ].XPos = Stars[ XLoop ].XPos - XSpeed; // Déplacement // Recadrage dans l'écran si l'étoile sort à gauche if( Stars[ XLoop ].XPos < 0.0 ){ Stars[ XLoop ].XPos = Stars[ XLoop ].XPos + 640.0; } // Définition des couleurs + Rapide = + clair. SColor = XLoop * 2.5 ; DBInk( DBRgb( SColor, SColor, SColor ), 0 ); // on valide la couleur en Rouge, Vert, Bleu DBDot( (int)Stars[ XLoop ].XPos, (int)Stars[ XLoop ].YPos ); // Tracé du point de l'étoile }; DBSync(); // Synchro };
Voila …
Dites moi si la démo fonctionne chez vous
Merci @ +
Si !
Ca me semble très bien comme langage !
C’est rapide.. Bref, cool
@Pseudaxos : Merci pour ta réponse
En fait, la première partie de l’objectif est d’obtenir un jeu de fonctions qui rendraient la création de jeux vidéo plus facile en C/C++ sur Amiga ( un peu comme DarkGDK de TheGameCreators : http://gdk.thegamecreators.com/ )
Puis une fois que les jeux de commandes sont toutes prêtes, j’attaque la seconde partie du projet. Un Interpréteur/compilateur basic pour faire de ces commandes un langage complet et grand public.
J’espère pouvoir le rendre proche de DarkBASIC ( de TheGameCreators : http://darkbasicpro.thegamecreators.com/ ) et de l’Amos PRO…
J’ai attaqué le chargement d’images et leur utilisation en sprites / bitmaps / images …
peut pas faire un éxecutable pour Morphos ? Me suis toujours intérrèssé aux langages !
https://www.youtube.com/@sayasupa
Je n’y connais rien, mais en tous les cas, j’ai l’impression que ton projet est pertinent AmiDark.
En outre, je pense que ce genre de truc est vraiment la bienvenue pour notre Os.
Tiens nous au jus !
Si tu sais à partir du SDK de l’Amiga OS 4.0 comment compiler pour MorphOS pourquoi pas (si il faut installer des includes ou autre, trouve moi les liens et l’explication).. Cependant je n’ai aucune machine sur MorphOS je ne peux donc pas tester ce que je fais
@Pseudaxos: MerciNe t’inquiète pas, dès qu’une nouvelle démo avec d’autres commandes utilisées sera disponible, je créerais un nouveau sujet de discution et mettrais l’exécutable …
Normalement, tu doubles cliques et ça décompresse avec unarch….
15 sujets de 1 à 15 (sur un total de 15)
- Vous devez être connecté pour répondre à ce sujet.
› Forums › AmigaOS, MorphOS et AROS › Développement › [WIP] AmiDARK Basic OS4 – Tech Demo BASIC 2D – Stars