Concours de programmation #2 - Février Mars Avril Mai 2014
-
- Un jeu assez léger, il doit faire au maximum 1 Go, mais essayer d’être le plus léger possible.
J’ai bien rit xD
N’empêche on passe d’un POM tout con a un rush total sur un projet ultra complet xD
Je ne pense pas avoir pas assez de disponibilité pour un concours comme ça malheuresement, mais j’attends les rendu avec impatience xD -
Blackout, si tu as ris c’est bien, j’étais parti sur 2000 Mo max, mais on m’a dit qu’une limite était ridicule.
Et je trouve que varier les projets est bien, voir un peu le niveau global, déjà pas assez de temps pour le POM.
Après je pourrai adapter les concours au niveau et au temps global nécessaire pour faire un concours. -
Je me demande surtout qui va avoir un code qui depasserai déjà les 100 Mo x) Et encore je vois gros en disant 100 Mo x)
Je souhaite aussi bonne chance au jury, qui se tapera 30 000 lignes de code par personne x)
Un concours de ce genre ne va pas t aider a avoir une vision globale des compétences de chacun. Puisqu’il est inacessible pour beaucoup.Varier les projets, oui heureusement, si vous ne proposez que des POM ça risque de perdre tout interets.
Pour augmenter l’interet des concours vous devriez taper un peu plus dans l’originalité
-
@‘Blackout’:
Je me demande surtout qui va avoir un code qui depasserai déjà les 100 Mo x) Et encore je vois gros en disant 100 Mo x)
Je souhaite aussi bonne chance au jury, qui se tapera 30 000 lignes de code par personne x)
Un concours de ce genre ne va pas t aider a avoir une vision globale des compétences de chacun. Puisqu’il est inacessible pour beaucoup.Varier les projets, oui heureusement, si vous ne proposez que des POM ça risque de perdre tout interets.
Pour augmenter l’interet des concours vous devriez taper un peu plus dans l’originalité
Un programme de mathématiques (calculatrice, solveur d’équations, traçage de courbes dans une fenêtre, gestion d’algorithmes) serait une bonne idée. Sinon un programme de conversion d’unités (mètres, millimètres, litres, joules, pascals etc…) ou un tetris aussi. Mais là c’est vraiment difficile, même pour Blackout j’imagine (même s’il aura 120% de chances en plus que nous).
-
Oublié de dire que je participe …
Mais sinon, j’ai déjà fait la base du moteur 2d : Jump, collisions, mouvement, et player

J’utilise LibGDX ( basé sur LWJGL ) et pour les maps, Tiled
-
@Gugu42, on a eu la même idée de jeu à réaliser.
Je vais essayé de participer, mais je ne promets rien.
-
T’inquiète, les graphismes, c’est temporaire, le temps d’avoir un graphiste / de meilleures sprites
( PS : Si ça abouti a quelque chose de beaucoup plus développé, je cacherais des easter eggs pour certains membres du forum etc…
) -
@Gugu42, pour le son, tu conseilles quel librairie?
-
@‘Superloup10’:
@Gugu42, pour le son, tu conseilles quel librairie?
Paulscode ! Paulscode !
-
@‘Superloup10’:
@Gugu42, pour le son, tu conseilles quel librairie?
@‘EclipseOnFire’:
@‘Superloup10’:
@Gugu42, pour le son, tu conseilles quel librairie?
Paulscode ! Paulscode !
OpenAL est sympa pour les sons dans un environnement 3D / 2D, et il est de base dans LWJGL
http://en.wikipedia.org/wiki/Java_OpenALAprès, j’ai oublié de mentionner LibGDX qui est un énorme ajout a LWJGL, et qui propose des sons ( pas sur si ils ont fait leur propre lib ou pas pour les sons.
Paulscode, j’ai jamais testé, mais c’est ce que Minecraft utilise il me semble, donc en observant ce qui gère les sons sur Minecraft, on peut en obtenir un bon exemple d’utilisation.
-
Ok, merci.
-
@Gugu42, il vaut mieux utilisé la class Display de LWJGL ou créé une JFrame?
-
@‘Superloup10’:
@Gugu42, il vaut mieux utilisé la class Display de LWJGL ou créé une JFrame?
La classe Display est très simple a utiliser, et a des méthodes très pratiques.
Je conseille la classe Display, car la JFrame est de Java, alors que la classe Display est de LWJGL, et donc plus optimisée pour OpenGL.
PS : Je vais demander a Pchom si j’peux faire des petits exemples de base sous LWJGL + Slick_util genre collision etc… et vous donner le code.
En exemple, j’avais un système de lumières très sympatique, j’ai plus le code, mais j’ai toujours le .jar du test
Téléchargez le : http://puu.sh/6LTRN.jar
Ce a quoi ça peut ressembler en plaçant des lumières : http://puu.sh/6LU0X.jpg
Les contrôles :
ZQSD = Déplacement
F1 = Poser une lumière
F2 = Poser une boîte
C = Effacer les lumières et les boites.Cette démo a été faite en 2 heures, même pas, les lumières sont dynamiques ( Si je déplace la lumière déplaçable, les ombres vont bouger )
-
Cool, merci, là je sèche au niveau de la gestion du clavier, je ne sais pas quoi mettre dans ma class Keybinding, et Minecraft n’aide pas à comprendre.
-
http://lwjgl.org/wiki/index.php?title=LWJGL_Basics_2_(Input)
En gros :
Tu fais une méthode input() qui sera appelée a chaque tick, et dans celle ci, deux types de check :
Celui pour touche enfoncée ( Exemple : ZQSD pour les déplacements ) qui correspond a :
if(Keyboard.isKeyDown(Keyboard.KEY_[YOURKEY]){ //Ton action }Et un autre, pour les appuis “coup par coup”, genre la touche F3 dans Minecraft, qui vérifie une seule pression, fait l’action, et arrête tant que la touche n’est pas re-pressée, ce qui permet d’éviter le spam d’action ( Afficher - Cacher le menu F3 ).
Cet event correspond a ceci :
while(Keyboard.next()){ if (Keyboard.getEventKey() == Keyboard.KEY_A) { System.out.println("Touche A appuyée !"); } if (Keyboard.getEventKey() == Keyboard.KEY_E) { System.out.println("Touche E appuyée"); } }Ici, le message n’apparaît qu’une fois.
Le troisième type, c’est tenir enfoncé puis de relacher, qu’on peut lier par exemple a l’arc de Minecraft.
le code est dans la boucle “while(Keyboard.next())”
if (Keyboard.getEventKey() == Keyboard.KEY_A) { if (Keyboard.getEventKeyState()) { System.out.println("A Key Pressed"); } else { System.out.println("A Key Released"); } }Petit plus :
Le wiki ( qui buggait hier ) de LWJGL est superbe pour comprendre la base :
http://lwjgl.org/wiki/index.php?title=Main_PageJe te le conseille

-
T’inquiète, je l’avais déjà regardé mais je ne suis pas très bon en Anglais, donc j’avais pas tout compris.
-
Actuellement, voici où j’en suis : https://github.com/Superloup10/Wolf
-
Je donne mon GitHub aussi ( note : Moi c’est encore en test, surtout sur la physique )
https://github.com/Gugu42/MFF-Concours
( Si vous regardez mes repos Github, j’ai pleins de test LWJGL 3D etc… si le dev. de jeux 3d vous intéresse. )
-
@Gugu42 : Merci, grâce à ton Github, j’ai enfin compris comment fonctionne OpenGL. Par contre, je voudrais savoir à quoi servent les class Circle et CollisionLibrary.
-
Ces classes sont la pour avoir les collisions AABB ( Un rectangle ) et un cercle ( Exemple : Une entité boule de feu )
La classe CollisionLibrary elle, contient les méthodes qui comparent AABB & AABB ( pour les collisions ), Cercle et AABB, et enfin, Cercle et Cercle
En exemple :
AABB vs AABB serait pour deux entité avec une hitbox carré,
AABB vs Circle serait pour une entité qui se prend une boule de feu ( Qui aurait une hitbox en cercle ) ou un truc rond,
Circle vs Circle peut être ici pour faire par exemple deux boules de feu qui se rencontre par exemple ( On peu imaginer que la boule de feu la plus puissante détruise l’autre et continue son chemin, ou encore absorbe l’autre, ou une simple destruction des deux boules de feu ), ou deux trucs ronds
