logo Homepage
+  NewbieContest
|-+  Programmation» Langages compilés» [C] Jeux-vidéo
Username:
Password:
Pages: [1] 2
  Imprimer  
Auteur Fil de discussion: [C] Jeux-vidéo  (Lu 12383 fois)
neoflo
Profil challenge

Classement : 8176/55106

Membre Complet
***
Hors ligne Hors ligne
Messages: 171


Voir le profil WWW
« le: 12 Juin 2006 à 15:31:27 »

J'avais promi ya qqn mois de faire un cours sur la programmation de jeu-vidéo en C avec SDL, je vais juste donner le lien du jeu en question : http://neoflo.free.fr/boulder2/.

C'est une sorte de reproduction d'un vieux jeux amstrad CPC: boulder dash
J'ai utilisé les librairies SDL et SDL_ttf, mais j'ai crée un module graphique à part pour pouvoir changer de moteur assez rapidement, les sources du moteur sont dans /src/moteur_graphique et la documentation est dans: /doc/index.html

Il compile sous linux (si vous avez bien les librairies SDL et SDL_ttf) et sous windows (avec DevC++, il n'y a pas de problème, le fichier de tout le projet est dans: ./Boulder 2.dev, cela genère automatiquement le makefile.

C'est juste pour vous donner une idée d'un assez gros programme découpé en modules indépendants, avec des programmes de tests, et où le jeu est développé indépendemment du graphique.

En vérité, de passer à un graphisme bien mieux n'est pas très complexe, il n'y a qu'un module à modifier. Mais je voulais garder les graphismes originaux.
Journalisée

Folcan

Profil challenge

Classement : 513/55106

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1520


Voir le profil
« #1 le: 12 Juin 2006 à 16:18:53 »

Arf le nombre de fichier ^^

Sinon jolie...Faut que je me penche sur le code...
Journalisée

-=[FoLc@N]=-

Citation :
* Le futur appartient à ceux qui croient à la beauté de leurs rêves, je crois au miens, NewbieContest aura un bon futur.
* Il y'a seulement 10 categories de gens dans la vie : ceux qui comprennent le binaire, et les autres.
neoflo
Profil challenge

Classement : 8176/55106

Membre Complet
***
Hors ligne Hors ligne
Messages: 171


Voir le profil WWW
« #2 le: 12 Juin 2006 à 16:44:25 »

A chaque dossier correspond un module:

Liste: j'ai implementé une liste qui est utilisé par un peu tous (liste de joueurs, liste d'ennemis, de diamants...)

Joueur: contient les fonctions d'initialisation des joueurs, permet de connaitre la position d'un joueur, savoir dans quelle direction il veut aller), lire le nombre de vie, le nombre de diamant qu'il a pris...

Pierre, diamant...: contient les opérations permettant de lire les directions (si ils sont à l'arrêt, si ils tombent), le type de diamant, le type de pierre, leur position...

slim : c'est une sorte de truc qui grossit dans le jeu, ya toutes les opérations dessus

evenement: contient les modules pour la gestion des touches et du temps

moteur_graphique: contient les opérations du moteur graphique de base

boulder_graphique: contient les opérations graphiques plus complexe directement en rapport avec le jeu,  contient les structures contenant tous les sprites, fonction pour calculer les origines du niveau, pour raffraichir l'image de tous le niveau, pour charger un sprite en mémoire vidéo...

niveau: conteient les opérations de chargement du niveau avec initialisation des structures

fichier: contient les opérations de bases sur les fichiers pour les niveaux

....
Journalisée

Nebelmann

Profil challenge

Classement : 472/55106

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1357


Voir le profil
« #3 le: 13 Juin 2006 à 07:27:25 »

Boulder dash !!!!
toute mon enfance ca, je teste ce soir ^^
Journalisée

-- Nebelmann -- Registered linux user #429186
«Si les lecteurs étaient des compilateurs, les posteurs feraient peut-être davantage attention à ce qu'ils écrivent...»
neoflo
Profil challenge

Classement : 8176/55106

Membre Complet
***
Hors ligne Hors ligne
Messages: 171


Voir le profil WWW
« #4 le: 13 Juin 2006 à 20:05:40 »

Je viens de changer une ligne dans un fichier car yavait une erreur de compilation sous linux, j'avais fini la programmation sous windows et je n'avais pas fait attention à ça sous linux, mais C bon, c'est réglé maintenant
Journalisée

Ge0

Profil challenge

Classement : 16/55106

Membre Senior
****
Hors ligne Hors ligne
Messages: 378


Voir le profil WWW
« #5 le: 17 Juin 2006 à 21:54:31 »

bravo neoflo ! ça à dû te demander beaucoup de boulot !
Journalisée

L’art saisit une vérité intérieure. Les mathématiques décrivent une vérité universelle.
Nebelmann

Profil challenge

Classement : 472/55106

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1357


Voir le profil
« #6 le: 18 Juin 2006 à 09:17:00 »

t'es un dieu neoflo
exactement le même que sur mon amstrad (que j'ai abandonné au profit d'un portable 200 MHz)

par contre y'a pas de son, je me trompe ?
ah oui, et y'a aucun commentaire ausi... c'est très amusant à comprendre
Journalisée

-- Nebelmann -- Registered linux user #429186
«Si les lecteurs étaient des compilateurs, les posteurs feraient peut-être davantage attention à ce qu'ils écrivent...»
Haldan

Profil challenge

Classement : 2825/55106

Néophyte
*
Hors ligne Hors ligne
Messages: 26


Voir le profil
« #7 le: 18 Juin 2006 à 15:38:40 »

trop trop bien...
et dire que je me suis fait chier à acheter un nouveau PC pour faire tourner Oblivion...
Journalisée

Ceci est un forum, pas un téléphone portable. Vous ne paierez pas plus cher en écrivant bien. Vous n'êtes pas limités en nombre de caractères. Vous aurez des réponses plus rapides car les lecteurs mettront moins de temps pour vous décoder.
Nebelmann

Profil challenge

Classement : 472/55106

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1357


Voir le profil
« #8 le: 18 Juin 2006 à 15:49:10 »

j'peux même pas y jouer moi...
juste le plaisir de le cracker, et encore ca fait plus ou moins planter olly...
Journalisée

-- Nebelmann -- Registered linux user #429186
«Si les lecteurs étaient des compilateurs, les posteurs feraient peut-être davantage attention à ce qu'ils écrivent...»
Haldan

Profil challenge

Classement : 2825/55106

Néophyte
*
Hors ligne Hors ligne
Messages: 26


Voir le profil
« #9 le: 18 Juin 2006 à 15:54:16 »

euh.. normal si tu as marqué T05 sur la boite à côté de ton écran
Journalisée

Ceci est un forum, pas un téléphone portable. Vous ne paierez pas plus cher en écrivant bien. Vous n'êtes pas limités en nombre de caractères. Vous aurez des réponses plus rapides car les lecteurs mettront moins de temps pour vous décoder.
neoflo
Profil challenge

Classement : 8176/55106

Membre Complet
***
Hors ligne Hors ligne
Messages: 171


Voir le profil WWW
« #10 le: 19 Juin 2006 à 15:10:12 »

non, il n'y a pas de son ! c'était pas super marrant à récuperer !

Sinon, vi les commentaires, yen a dans le .doc/index.html, sur certains module comme: moteur_graphique, liste, touche et je sais plus quoi. J'ai commenté que les trucs que je pensais pouvoir réutiliser plus tard.

Mais si vous avez un pb avec un truc pr comprendre, vous pouvez me demander.


En fait, ce n'est pas si long à programmer quand on sait déjà programmer en C et utiliser SDL. Faut bien découper les tâches, et ça se fait assez "facilement"
Journalisée

Nebelmann

Profil challenge

Classement : 472/55106

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1357


Voir le profil
« #11 le: 19 Juin 2006 à 20:43:06 »

à quand Harrier Attack ?
Journalisée

-- Nebelmann -- Registered linux user #429186
«Si les lecteurs étaient des compilateurs, les posteurs feraient peut-être davantage attention à ce qu'ils écrivent...»
Invit
Invité
« #12 le: 19 Juin 2006 à 21:00:04 »

ou Bomb Jack
Journalisée
s3th
Relecteur

Profil challenge

Classement : 422/55106

Membre Héroïque
*
Hors ligne Hors ligne
Messages: 645


Voir le profil WWW
« #13 le: 19 Juin 2006 à 21:53:29 »

bobble bubble
Journalisée

..\m/..  Tout n'est qu'illusion ..\m/..

http://backtrack-fr.net/

3NJ0Y et non pas enjoy comme certaine tapz
Nebelmann

Profil challenge

Classement : 472/55106

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1357


Voir le profil
« #14 le: 20 Juin 2006 à 13:15:41 »

Oblivion... mais qui passe sur une GeForce 4 MX440
Journalisée

-- Nebelmann -- Registered linux user #429186
«Si les lecteurs étaient des compilateurs, les posteurs feraient peut-être davantage attention à ce qu'ils écrivent...»
Pages: [1] 2
  Imprimer  
 
Aller à: