|
@@ -73,7 +73,8 @@
|
|
|
Jeu vidéo réalisé en C++
|
|
|
</h2>
|
|
|
<p class="lead">
|
|
|
- Derrière ce nom un peu bourrin se cache un shooter à la <em>Space Invader</em> où les joueurs peuvent concevoir
|
|
|
+ Derrière ce nom un peu bourrin se cache un shooter à la <em>Space Invader</em> où les joueurs peuvent
|
|
|
+ concevoir
|
|
|
leur propre vaisseau avant de partir à l'aventure.
|
|
|
</p>
|
|
|
</div>
|
|
@@ -100,24 +101,35 @@
|
|
|
Principe
|
|
|
</h4>
|
|
|
<p>
|
|
|
- <strong>ASCII Space Destroyer</strong> est un jeu de de tir. Il s'inspire de <em>SpaceInvader</em>, le pionnier du genre. Les flottes de vaisseau ennemies se rapprochent, et vous devez tous les abattre avant qu'ils ne franchissent le bord droit de l'écran.
|
|
|
+ <strong>ASCII Space Destroyer</strong> est un jeu de de tir. Il s'inspire de <em>SpaceInvader</em>, le pionnier
|
|
|
+ du genre. Les flottes de vaisseau ennemies se rapprochent, et vous devez tous les abattre avant qu'ils ne
|
|
|
+ franchissent le bord droit de l'écran.
|
|
|
</p>
|
|
|
<p>
|
|
|
- La particularité de ce jeu est que votre vaisseau est composé de caractères ASCII, ces 127 caractères standards qui se retrouvent dans tous les jeux de caractères. Ainsi, chaque caractère forme une <em>brique</em> pour votre vaisseau, et elle peut être détruite. Votre vaisseau se détruit au fur et à mesure selon les dégâts subis. Si votre cockpit (représenté par le caractère <code>m</code>) est détruit, c'est Game Over.
|
|
|
+ La particularité de ce jeu est que votre vaisseau est composé de caractères ASCII, ces 127 caractères standards
|
|
|
+ qui se retrouvent dans tous les jeux de caractères. Ainsi, chaque caractère forme une <em>brique</em> pour votre
|
|
|
+ vaisseau, et elle peut être détruite. Votre vaisseau se détruit au fur et à mesure selon les dégâts subis. Si
|
|
|
+ votre cockpit (représenté par le caractère <code>m</code>) est détruit, c'est Game Over.
|
|
|
</p>
|
|
|
<img class="rounded img-fluid mx-auto d-block" src="../images/projets_ascii_game1.png" alt="cv flat icon"/>
|
|
|
<p>
|
|
|
- Le joueur peut choisir la planète où il souhaite batailler à partir du menu. Pour chaque planète, une courte description permet de comprendre la raison de l'attaque et d'estimer les défenses de l'adversaire. Pour chaque planète pacifiée, le joueur obtient une récompense qui lui permet d'utiliser de meilleurs vaisseaux. Soit la limite du nombre de blocs sur son vaisseau augmente (apelée <code>CPU</code> dans le jeu) soit il débloque une arme ou le bouclier de combat.
|
|
|
+ Le joueur peut choisir la planète où il souhaite batailler à partir du menu. Pour chaque planète, une courte
|
|
|
+ description permet de comprendre la raison de l'attaque et d'estimer les défenses de l'adversaire. Pour chaque
|
|
|
+ planète pacifiée, le joueur obtient une récompense qui lui permet d'utiliser de meilleurs vaisseaux. Soit la
|
|
|
+ limite du nombre de blocs sur son vaisseau augmente (apelée <code>CPU</code> dans le jeu) soit il débloque une
|
|
|
+ arme ou le bouclier de combat.
|
|
|
</p>
|
|
|
<img class="rounded img-fluid mx-auto d-block" src="../images/projets_ascii_menu.png" alt="cv flat icon"/>
|
|
|
<h4>
|
|
|
Faire son propre vaisseau
|
|
|
</h4>
|
|
|
<p>
|
|
|
- L'avantage de ce genre de graphisme, c'est que n'importe quel joueur peut créer son propre vaisseau : il suffit pour cela d'un éditeur de texte.
|
|
|
+ L'avantage de ce genre de graphisme, c'est que n'importe quel joueur peut créer son propre vaisseau : il suffit
|
|
|
+ pour cela d'un éditeur de texte.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Lors du chargement du vaisseau, le programme va automatiquement reconnaître les combinaisons de caractères utilisées pour placer le cockpit et les divers équipements disponibles.
|
|
|
+ Lors du chargement du vaisseau, le programme va automatiquement reconnaître les combinaisons de caractères
|
|
|
+ utilisées pour placer le cockpit et les divers équipements disponibles.
|
|
|
</p>
|
|
|
<p>
|
|
|
Voici une courte description de l'arsenal à disposition.
|
|
@@ -127,7 +139,9 @@
|
|
|
Le Gun <code>[-</code>
|
|
|
</h5>
|
|
|
<p>
|
|
|
- Le tir le plus classique. Pour l'équiper sur votre vaisseau, il suffit d'écrire <code>[-</code> quelque part dans sa structure. Cette arme tire en ligne droite jusqu'à toucher sa cible. Les projectiles sont en forme de <code>+</code>.
|
|
|
+ Le tir le plus classique. Pour l'équiper sur votre vaisseau, il suffit d'écrire <code>[-</code> quelque part
|
|
|
+ dans sa structure. Cette arme tire en ligne droite jusqu'à toucher sa cible. Les projectiles sont en forme de
|
|
|
+ <code>+</code>.
|
|
|
</p>
|
|
|
<p>
|
|
|
À l'impact, le Gun fait des dégâts localisés autour du point de contact.
|
|
@@ -137,10 +151,13 @@
|
|
|
Le Cutter <code>[|</code>
|
|
|
</h5>
|
|
|
<p>
|
|
|
- Similaire au Gun dans sa manière de tirer, c'est à l'impact que le cutter se diférencie. Lorsque le projectile en forme de <code>|</code> touche une structure ennemie, tous les blocs situés sur la même ligne verticale prennent 50 points de dommages (maxi : 100).
|
|
|
+ Similaire au Gun dans sa manière de tirer, c'est à l'impact que le cutter se diférencie. Lorsque le projectile
|
|
|
+ en forme de <code>|</code> touche une structure ennemie, tous les blocs situés sur la même ligne verticale
|
|
|
+ prennent 50 points de dommages (maxi : 100).
|
|
|
</p>
|
|
|
<p>
|
|
|
- Ainsi, si deux projectiles de ce type frappent au même endroit, il est possible de couper un vaisseau ennemi en deux. Soyez donc attentifs, ils peuvent s'avérer particulièrement efficaces sur certains types de structure ...
|
|
|
+ Ainsi, si deux projectiles de ce type frappent au même endroit, il est possible de couper un vaisseau ennemi en
|
|
|
+ deux. Soyez donc attentifs, ils peuvent s'avérer particulièrement efficaces sur certains types de structure ...
|
|
|
</p>
|
|
|
|
|
|
<h5>
|
|
@@ -150,10 +167,12 @@
|
|
|
Les joueurs reconnaîtront dans cette arme le classique fusil à pompe présent dans la plupart des jeux de tir.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Ainsi, le Disper tire plusieurs balles en même temps, mais les tirs sont dispersés et la portée réduite. Il faut savoir que le tir de Disper fait davantage de dégâts au contact.
|
|
|
+ Ainsi, le Disper tire plusieurs balles en même temps, mais les tirs sont dispersés et la portée réduite. Il faut
|
|
|
+ savoir que le tir de Disper fait davantage de dégâts au contact.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Très efficace pour détruire les ennemis proches de la limite, mais le corps à corps est toujours un paris risqué qui se conclue souvent par la perte de deux ou trois éléments de vaisseau ...
|
|
|
+ Très efficace pour détruire les ennemis proches de la limite, mais le corps à corps est toujours un paris risqué
|
|
|
+ qui se conclue souvent par la perte de deux ou trois éléments de vaisseau ...
|
|
|
</p>
|
|
|
|
|
|
<h5>
|
|
@@ -163,10 +182,13 @@
|
|
|
Lorsqu'on le voit en fonctionnement, on a l'impression que le Protoseeker est un pistolet à eau ...
|
|
|
</p>
|
|
|
<p>
|
|
|
- Ce qui n'est pas très loin de la réalité. En effet, le Protoseeker est l'arme la plus faible du jeu. Elle compense sa faible puissance par une fréquence élevée et un ciblage automatique. Le tir est toujours orienté vers le vaisseau ennemi le plus proche.
|
|
|
+ Ce qui n'est pas très loin de la réalité. En effet, le Protoseeker est l'arme la plus faible du jeu. Elle
|
|
|
+ compense sa faible puissance par une fréquence élevée et un ciblage automatique. Le tir est toujours orienté
|
|
|
+ vers le vaisseau ennemi le plus proche.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Ce genre d'arme est très aprécié dans les situations confuses, ou l'on passe son temps à esquiver les proejectiles ennemis. Pendant ce temps là, le Protoseeker continue à toucher sa cible, infaillible.
|
|
|
+ Ce genre d'arme est très aprécié dans les situations confuses, ou l'on passe son temps à esquiver les
|
|
|
+ projectiles ennemis. Pendant ce temps là, le Protoseeker continue à toucher sa cible, infaillible.
|
|
|
</p>
|
|
|
|
|
|
<h5>
|
|
@@ -176,35 +198,45 @@
|
|
|
Le lanceur de missiles est sans doute l'arme la plus dangereuse du jeu.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Ses caractéristiques : des dégâts puissants et localisés, une fréquence réduite ... Mais surtout un autoguidage fatal. Ce système de guidage permet au missile de modifier sa trajectoire lors de son vol et de viser directement le cockpit de l'ennemi le plus proche.
|
|
|
+ Ses caractéristiques : des dégâts puissants et localisés, une fréquence réduite ... Mais surtout un autoguidage
|
|
|
+ fatal. Ce système de guidage permet au missile de modifier sa trajectoire lors de son vol et de viser
|
|
|
+ directement le cockpit de l'ennemi le plus proche.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Si le Protoseeker arrose l'ennemi d'un tir nourri, le missile contourne les défenses et frappe directement au coeur de sa cible.
|
|
|
+ Si le Protoseeker arrose l'ennemi d'un tir nourri, le missile contourne les défenses et frappe directement au
|
|
|
+ coeur de sa cible.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Soyez donc vigilant si vous venez à affronter ce genre d'arme : la modification de trajectoire le rend très difficle à éviter. Néanmoins, si vous êtes assez attentif, vous pourrez découvrir une faille dans l'algorithme de guidage qui vous permettra d'échapper à l'impact.
|
|
|
+ Soyez donc vigilant si vous venez à affronter ce genre d'arme : la modification de trajectoire le rend très
|
|
|
+ difficle à éviter. Néanmoins, si vous êtes assez attentif, vous pourrez découvrir une faille dans l'algorithme
|
|
|
+ de guidage qui vous permettra d'échapper à l'impact.
|
|
|
</p>
|
|
|
|
|
|
<h5>
|
|
|
Brexit launcher <code>[{</code>
|
|
|
</h5>
|
|
|
<p>
|
|
|
- Nommé d'après l'événement homonyme (il semblerait que je manquai d'inspiration à ce moment là), le <strong>Brexit</strong> est une arme basée sur la division.
|
|
|
+ Nommé d'après l'événement homonyme (il semblerait que je manquai d'inspiration à ce moment là), le <strong>Brexit</strong>
|
|
|
+ est une arme basée sur la division.
|
|
|
</p>
|
|
|
<p>
|
|
|
- De puissance comparable au <strong>Gun</strong>, le <strong>Brexit</strong> tire simultanément deux tirs en diagonale.
|
|
|
+ De puissance comparable au <strong>Gun</strong>, le <strong>Brexit</strong> tire simultanément deux tirs en
|
|
|
+ diagonale.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Peut être utilisé en arme d'appoint pour couvrir de nouveaux angles d'attaques; ou bien pour faire des dégâts en évitant une attaque frontale, ce qui s'avère utile lors de l'attaque d'un vaisseau lourdement armé.
|
|
|
+ Peut être utilisé en arme d'appoint pour couvrir de nouveaux angles d'attaques; ou bien pour faire des dégâts en
|
|
|
+ évitant une attaque frontale, ce qui s'avère utile lors de l'attaque d'un vaisseau lourdement armé.
|
|
|
</p>
|
|
|
<h5>
|
|
|
Hecto combustion <code>[~</code>
|
|
|
</h5>
|
|
|
<p>
|
|
|
- L'hecto combustion est une arme assez spéciale. Cette arme tire un <code>H</code> très lent. Son atout vient du fait qu'il n'explose pas à l'impact. Il fait des dégâts et continue sa route.
|
|
|
+ L'hecto combustion est une arme assez spéciale. Cette arme tire un <code>H</code> très lent. Son atout vient du
|
|
|
+ fait qu'il n'explose pas à l'impact. Il fait des dégâts et continue sa route.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Ainsi, il peut être utilisé pour perforer des blindages épais. Mais sa lenteur le rend assez difficile à maîtriser.
|
|
|
+ Ainsi, il peut être utilisé pour perforer des blindages épais. Mais sa lenteur le rend assez difficile à
|
|
|
+ maîtriser.
|
|
|
</p>
|
|
|
|
|
|
<h5>
|
|
@@ -224,16 +256,20 @@
|
|
|
Le bouclier n'est pas une arme, mais un dispositif de défense.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Si le vaisseau possède au moins un bouclier, il apparaît bleuté et entouré d'un champ protecteur. Ce champ de force absorbe les dégâts sans endommager la structure.
|
|
|
+ Si le vaisseau possède au moins un bouclier, il apparaît bleuté et entouré d'un champ protecteur. Ce champ de
|
|
|
+ force absorbe les dégâts sans endommager la structure.
|
|
|
</p>
|
|
|
<p>
|
|
|
- À force d'encaisser les dégâts, le bouclier se vide. Une fois vide, l'enveloppe disparaît : le vaisseau n'est plus protégé.
|
|
|
+ À force d'encaisser les dégâts, le bouclier se vide. Une fois vide, l'enveloppe disparaît : le vaisseau n'est
|
|
|
+ plus protégé.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Si le vaisseau n'a pas encaissé de dégât pendant un certain laps de temps, le bouclier recommence à se régénérer.
|
|
|
+ Si le vaisseau n'a pas encaissé de dégât pendant un certain laps de temps, le bouclier recommence à se
|
|
|
+ régénérer.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Le nombre de générateurs augmente la capacité du bouclier, c'est à dire le nombre de dégâts qu'il peut encaisser avant de disparaître, ainsi que la vitesse de rechargement.
|
|
|
+ Le nombre de générateurs augmente la capacité du bouclier, c'est à dire le nombre de dégâts qu'il peut encaisser
|
|
|
+ avant de disparaître, ainsi que la vitesse de rechargement.
|
|
|
</p>
|
|
|
|
|
|
<h5>
|
|
@@ -244,92 +280,92 @@
|
|
|
</p>
|
|
|
<table class="table">
|
|
|
<thead>
|
|
|
- <tr>
|
|
|
- <th>Nom</th>
|
|
|
- <th>Symbole</th>
|
|
|
- <th>Projectile</th>
|
|
|
- <th>Catégorie</th>
|
|
|
- <th>Charge CPU</th>
|
|
|
- </tr>
|
|
|
+ <tr>
|
|
|
+ <th>Nom</th>
|
|
|
+ <th>Symbole</th>
|
|
|
+ <th>Projectile</th>
|
|
|
+ <th>Catégorie</th>
|
|
|
+ <th>Charge CPU</th>
|
|
|
+ </tr>
|
|
|
</thead>
|
|
|
<tbody>
|
|
|
- <tr>
|
|
|
- <td>Cockpit</td>
|
|
|
- <td><code>m</code></td>
|
|
|
- <td></td>
|
|
|
- <td>Structure</td>
|
|
|
- <td>1</td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td>Bloc</td>
|
|
|
- <td>Caractère ASCII</td>
|
|
|
- <td></td>
|
|
|
- <td>Structure</td>
|
|
|
- <td>1</td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td>Gun</td>
|
|
|
- <td><code>[-</code></td>
|
|
|
- <td><code>+</code></td>
|
|
|
- <td>Arme</td>
|
|
|
- <td><i>todo</i></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td>Cutter</td>
|
|
|
- <td><code>[|</code></td>
|
|
|
- <td><code>|</code></td>
|
|
|
- <td>Arme</td>
|
|
|
- <td><i>todo</i></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td>Disper</td>
|
|
|
- <td><code>[<</code></td>
|
|
|
- <td><code>*</code></td>
|
|
|
- <td>Arme</td>
|
|
|
- <td><i>todo</i></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td>Protoseeker</td>
|
|
|
- <td><code>[O</code></td>
|
|
|
- <td><code>O</code></td>
|
|
|
- <td>Arme</td>
|
|
|
- <td><i>todo</i></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td>Missile launcher</td>
|
|
|
- <td><code>[></code></td>
|
|
|
- <td><code>-></code></td>
|
|
|
- <td>Arme</td>
|
|
|
- <td><i>todo</i></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td>Brexit launcher</td>
|
|
|
- <td><code>[{</code></td>
|
|
|
- <td><code>???</code></td>
|
|
|
- <td>Arme</td>
|
|
|
- <td><i>todo</i></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td>Hecto combustion</td>
|
|
|
- <td><code>[~</code></td>
|
|
|
- <td><code>H</code></td>
|
|
|
- <td>Arme</td>
|
|
|
- <td><i>todo</i></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td>Sniper rifle</td>
|
|
|
- <td><code>[=</code></td>
|
|
|
- <td><code>=</code></td>
|
|
|
- <td>Arme</td>
|
|
|
- <td><i>todo</i></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td>Bouclier</td>
|
|
|
- <td><code>()</code></td>
|
|
|
- <td></td>
|
|
|
- <td>Défense</td>
|
|
|
- <td><i>todo</i></td>
|
|
|
- </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Cockpit</td>
|
|
|
+ <td><code>m</code></td>
|
|
|
+ <td></td>
|
|
|
+ <td>Structure</td>
|
|
|
+ <td>1</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Bloc</td>
|
|
|
+ <td>Caractère ASCII</td>
|
|
|
+ <td></td>
|
|
|
+ <td>Structure</td>
|
|
|
+ <td>1</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Gun</td>
|
|
|
+ <td><code>[-</code></td>
|
|
|
+ <td><code>+</code></td>
|
|
|
+ <td>Arme</td>
|
|
|
+ <td><i>todo</i></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Cutter</td>
|
|
|
+ <td><code>[|</code></td>
|
|
|
+ <td><code>|</code></td>
|
|
|
+ <td>Arme</td>
|
|
|
+ <td><i>todo</i></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Disper</td>
|
|
|
+ <td><code>[<</code></td>
|
|
|
+ <td><code>*</code></td>
|
|
|
+ <td>Arme</td>
|
|
|
+ <td><i>todo</i></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Protoseeker</td>
|
|
|
+ <td><code>[O</code></td>
|
|
|
+ <td><code>O</code></td>
|
|
|
+ <td>Arme</td>
|
|
|
+ <td><i>todo</i></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Missile launcher</td>
|
|
|
+ <td><code>[></code></td>
|
|
|
+ <td><code>-></code></td>
|
|
|
+ <td>Arme</td>
|
|
|
+ <td><i>todo</i></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Brexit launcher</td>
|
|
|
+ <td><code>[{</code></td>
|
|
|
+ <td><code>???</code></td>
|
|
|
+ <td>Arme</td>
|
|
|
+ <td><i>todo</i></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Hecto combustion</td>
|
|
|
+ <td><code>[~</code></td>
|
|
|
+ <td><code>H</code></td>
|
|
|
+ <td>Arme</td>
|
|
|
+ <td><i>todo</i></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Sniper rifle</td>
|
|
|
+ <td><code>[=</code></td>
|
|
|
+ <td><code>=</code></td>
|
|
|
+ <td>Arme</td>
|
|
|
+ <td><i>todo</i></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>Bouclier</td>
|
|
|
+ <td><code>()</code></td>
|
|
|
+ <td></td>
|
|
|
+ <td>Défense</td>
|
|
|
+ <td><i>todo</i></td>
|
|
|
+ </tr>
|
|
|
</tbody>
|
|
|
</table>
|
|
|
|
|
@@ -337,20 +373,24 @@
|
|
|
Technologies
|
|
|
</h3>
|
|
|
<p>
|
|
|
- Ce jeu a été codé en <strong>C++</strong> avec l'IDE <strong>Code::Blocks</strong>. Je suis aidé pour cela de la biblothèque SDL.
|
|
|
+ Ce jeu a été codé en <strong>C++</strong> avec l'IDE <strong>Code::Blocks</strong>. Je suis aidé pour cela de la
|
|
|
+ biblothèque SDL.
|
|
|
</p>
|
|
|
|
|
|
<h4>
|
|
|
SDL 1.2
|
|
|
</h4>
|
|
|
<p>
|
|
|
- SDL signifie <strong>S</strong>imple <strong>D</strong>irectMedia <strong>L</strong>ayer. Cette bibliothèque permet d'ajouter des fonctions élémentaires pour intéragir avec l'utilisateur.
|
|
|
+ SDL signifie <strong>S</strong>imple <strong>D</strong>irectMedia <strong>L</strong>ayer. Cette bibliothèque
|
|
|
+ permet d'ajouter des fonctions élémentaires pour intéragir avec l'utilisateur.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Véritable boîte à outils, j'ai utilisé pour ce programme le module graphique pour afficher une fenêtre, et le module de gestion d'événements pour récupérer les entrées utilisateur (clavier, souris).
|
|
|
+ Véritable boîte à outils, j'ai utilisé pour ce programme le module graphique pour afficher une fenêtre, et le
|
|
|
+ module de gestion d'événements pour récupérer les entrées utilisateur (clavier, souris).
|
|
|
</p>
|
|
|
<p>
|
|
|
- La SDL est une bibliothèque bas niveau. C'est à dire qu'elle est très primitive, il faut beaucoup de code pour arriver à un rendu correct. Cela demande au programmeur beaucoup de travil, et beaucoup d'organisation.
|
|
|
+ La SDL est une bibliothèque bas niveau. C'est à dire qu'elle est très primitive, il faut beaucoup de code pour
|
|
|
+ arriver à un rendu correct. Cela demande au programmeur beaucoup de travail, et beaucoup d'organisation.
|
|
|
</p>
|
|
|
<p>
|
|
|
Lien vers <a href="https://www.libsdl.org/">le site officiel de SDL 1.2</a>.
|
|
@@ -360,10 +400,13 @@
|
|
|
SDL GFX
|
|
|
</h4>
|
|
|
<p>
|
|
|
- SDL GFX rajoute quelques fonctions graphiques à la SDL. Je l'ai utilisée principalement ici pour sa fonction qui permet d'afficher des caractères. Sans cette fonction, difficile d'afficher ces vaisseaux faits de caractères ASCII ...
|
|
|
+ SDL GFX rajoute quelques fonctions graphiques à la SDL. Je l'ai utilisée principalement ici pour sa fonction qui
|
|
|
+ permet d'afficher des caractères. Sans cette fonction, difficile d'afficher ces vaisseaux faits de caractères
|
|
|
+ ASCII ...
|
|
|
</p>
|
|
|
<p>
|
|
|
- Et oui, SDL ne fait pas ça ... quand je vous disais que SDL est une bibliothèque bas niveau et ne faisait pas grand choses, je ne plaisantais pas.
|
|
|
+ Et oui, SDL ne fait pas ça ... quand je vous disais que SDL est une bibliothèque bas niveau et ne faisait pas
|
|
|
+ grand choses, je ne plaisantais pas.
|
|
|
</p>
|
|
|
|
|
|
<h3>
|
|
@@ -375,7 +418,8 @@
|
|
|
future version.
|
|
|
</p>
|
|
|
<p>
|
|
|
- Vous pourrez télécharger les différents exécutables du jeu, que vous ayez un ordinateur sous Linux ou sous Windows.
|
|
|
+ Vous pourrez télécharger les différents exécutables du jeu, que vous ayez un ordinateur sous Linux ou sous
|
|
|
+ Windows.
|
|
|
</p>
|
|
|
<p>
|
|
|
Repassez plus tard ...
|