dimanche, février 27, 2005

premier croquis

J'ai retrouvé dans mes affaires le premier croquis que j'ai fait de mon jeu. Notez que les trucs de math sur la feuille n'ont pas rapport (c un devoir de math). En gros, c un brain storming graphique d'idées que j'ai fait avec Étienne. On note aussi que le nom a changé parce que Kanon existe déjà (c'est un anime) et j'ai trouvé d'autres nom temporaires. Mais évidemment tout ça reste temporaire.

Donc! Ce qu'on voit sur le dessin : le rebond de la balle sur la pallette (en haut à gauche) et l'organisation du jeu avec les différentes inclinaisons de la palette (en dessous du panneau Exit) et les autres trucs que je vais peut-être mettre si j'ai le temps... ^-^

yay! ça va être hot mon projet! \(^o^)/
Posted by Hello

tutoriels de OpenGL

liens vers des tutoriels de openGL pour débutants finis
Je pense sérieusement m'enligner avec openGL. J'ai pas vraiement de raisons valables, juste que c là dessus que j'ai trouvé le plus d'information rapidement. Et c'est open source faque ça m'a achevé...

lundi, février 21, 2005

liens moteurs graphique

pour OpenGL:
pour DirectDraw:

choix de moteur graphique

Je me renseigne présentement sur les 2 moteurs graphiques que je connais pour faire du graphique en C++ soit DirectDraw et OpenGL. Le but est d'évantuellement faire un choix entre les 2. Évidemment, je préfèrerais utiliser OpenGL parce que c'est du code libre mais je vais probablement m'enligner vers ce qui est le plus simple et donc, vers ce qui est déjà installé sur nos merveilleux ordinosaures scolaires.

Et je n'ai toujours pas d'idée pour un 2ème projet. Ça devient problématique... Ça me prend une idée simple, de préférence qui fonctionne dans la console, parce que ça reste un projet de secours... Mais en même temps, je veux pas un projet plate parce que ça me tentera pas de rien faire sinon.

Je dois prendre rendez-vous avec Denis vu qu'on viens de rentrer dans la semaine des rencontres individuelles. Il faudra lui parler de mon dernier courriel avec plein de question dedans et discuter des possibilités comme 2ème projet.

vendredi, février 11, 2005

Projet #2

Je n'ai pas encore l'idée pour mon deuxième projet.

J'ai pensé que ça serait bien d'avoir un programme qui roule dans la console pour avoir une porte de secours si DirectDraw est trop complexe à utiliser. Mais faut que je continue à réfléchir à la question.

jeudi, février 10, 2005

idée de pointage

je viens de penser à une autre idée de pointage pour mon Pong extrême :

au lieu de rammasser des vulgaires «points» plates, on pourrait rammasser du cash! Juste parce que c'est hot.

Et genre le but du jeu serait d'atteindre
1 million de dollars !!!
ça pourrait débloquer un bonus genre.

Et comme je pense à ceux qui n'aime pas l'argent, je pourrais rajouter une configuration pour changer les $ en points ordinaires.

ou en biscuits

ou en roche

tsé tant qu'à faire!

Projet 1 : NdC Pong deluxe

J'ai trouvé la première idée de projet et je lui ai donné le nom de code (NdC) temporaire de Pong Extrême ou Pong Deluxe. Ça serait un genre de Pong ou de Arkanoid mais plus bizarre.

D'abord, l'orientation. Le vrai Pong présente 2 «joueurs de tennis/ping pong/autre» et le terrain est vue de haut. Pour mon jeu, on verrait l'action de côté : le ciel en haut de l'image et le plancher en bas genre.

On ajoute à ça le principe de gravité. La balle ne fait pas que rebondir, elle est aussi constamment attiré vers le bas.

Le problème qu'on voit tout de suite : comment on fait pour faire «remonter la balle»? On pourra faire ça de deux manières :
  1. Les pallettes seront inclinables pour faire rebondir la balle par en haut et
  2. On pourra faire un smash lorsque la balle est sur notre pallette, genre en pesant sur la barre d'espacement.
De ces 2 manières, on s'assure que la balle a assez d'énergie cinétique verticale positive.

Il est aussi à noter qu'il y aura présence d'un plafond et d'un plancher pour pas que la balle ne sorte.

Je ne pense pas ajouter un deuxième joueur humain parce que les claviers (surtout les claviers PS2 ou USB) ont de la difficulter à gérer plus de 2 touches en même temps. Je ne pense pas ajouter non plus de joueur contrôlé par l'ordinateur sauf peut-être à la fin si j'ai le temps. Le joueur sera positionné à gauche et un mur sera à droite ce qui fait que le joueur jouera contre lui-même. Le but sera de faire un maximum de points. Mais cette tâche sera complexifiée par des obstacles.

J'ai pensé à différents types d'obstacles:
  • Des trucs rebondissants qui sont indépendants du vide sous la pallette de gauche et qui se déplassent selon un angle au semi-hasard après un impact avec les murs.
  • des trucs fixes
  • des trucs qui enlèvent des points si on les touches
  • des worms holes (trou de vers) qui téléportent la balle
  • etc
Évidemment, il faudra être capable de faire des points. Voici comment (avec une ébauche des valeurs de points) :
  • mur de droite, plafond, plancher (1 point)
  • grandes cibles fixes (2 points)
  • petites cibles fixes (3 points)
  • cibles qui se déplacent selon un parcours (5 pts)
  • cibles qui se déplacent au hasard (6 pts)
  • des cibles qui se pètent (mot français pour collapsable scenery?) genre comme Arkanoid
  • etc
Pour ce qui est des contrôles, il y aurait genre 5 boutons :
  • 2 pour monter/descendre la palette verticalement
  • 2 pour contrôler l'orientation
  • 1 pour le smash
Pour ce qui est de l'orientation, on ne pourrait que l'incliner de 90º pour ne pas envoyer la balle par en bas. Genre :
- \ |
et toutes les positions entre celles-là. Une position du genre / serait impossibles parce que ça envois la balle par en bas et je cherche à éviter ça.

Qu'est-ce qui arrive si on n'arrive pas à donner assez d'énergie verticale positive? Et bien, la balle se met tout simplement à «rouler» sur le plancher (oh! faut pas qu'elle acumule de point dans ce cas.... ça demande réflexion) et, comme il n'y a pas de friction, elle finit par arriver à la pallette qui peut alors lui donner un smash à 45º pour l'envoyer bien haut et bien loin.

Pour ce qui est des notions des autres matières qui serait utilisées, j'ai pensé à :
  • Physique - Gravité
    • Je pourrais la rendre configurable : vers le bas, à 45º, etc
  • Physique - Collisions
    • J'ai pensé à rendre configurable les matériaux :
      • Pallettes
        • normale
        • en élastique
        • en marbre
        • en mou
        • etc
      • Balles
        • normale
        • Superball
        • Boule de quille
        • etc
Le déroulement du jeu serait peut-être sous forme de tableau (level) qui serait activé si on a passé un nombre de points ou rammassé un gugusse quelconque. Ça permet de passer un message avec des instructions entre les tableaux, de sauvegarder, etc. Sinon, sans interuptions et le tableaux se transforme au fur et à mesure et les instructions sont affichées en transparence.

La gestion des pertes sera probablement typiquement arcade : des vies qu'on perd quand on échappe la balle mais qu'on peut gagner avec des 1-UP et des continues pour continuer quand on a pu de vie mais il faut indérer un jeton et on recommence un avant l'endroit où on était mort. Il faudra aussi penser à un système de sauvegarde pour continuer plus tard, soit par mots de passes ou par blocs de sauvegarde. Mais j'aime bien l'idée des mots de passes parce que ça fait très classique et que c'est une excellente occasion de plogger des niaiseries!

Faque c'est ça en gros pour mon projet #1.

Commencement

Ce blogue a été créé dans le but de servir de journal de bord durant toute la prériode d'élaboration de mon projet intégrateur.

Pour l'instant, j'ai seulement une idée de projet et il m'en faut deux alors je cherche et j'y pense. (voir entrés de blogue suivantes)

Je met ce blogue publique. Donc, j'ai mis les configurations pour qu'il accepte les commentaires de n'importe qui et je vais mettre des liens vers ce blog sur mon site.

-- ouverture de parenthèse --
Pour ceux qui arrive justement du Super narF Web ou du forum de narF ou d'ailleurs, j'apporte quelques précisions quant à la nature de ce projet:
Il s'agit de faire un projet intégrateur, c'est-à-dire qui combine plusieurs matières, qui s'échelonne sur toute ma dernière session de cegep. Il faut réussir ce projet pour que j'aie mon diplôme de cegep (dont le nom exact m'échappe). Évidemment, mon projet sera principalement basé sur la science informatique (ghe!) mais il doit quand même intégrer une autre matière au moins. Ah et ça sera en C++. Ça on a pas le choix et ça m'écoeure un peu; j'aurais préféré java ou Python ou de la programmation web, flash, javascript, ou n'importe quoi d'autre. J'ai une dent contre C++ et contre ses compilateurs. Mais bon. C'est sûrement injustifié et je vais m'y faire...
-- fermeture de parenthèse --

Notez que, pour ceux que ça intéresse, j'ai mis un lien dans la sidebar vers le fichier RSS (format Atom) pour votre aggrégateur. Message aux autres du groupe : moi je vais m'abonner à vos RSS si vous en offrez!