hop, zou et … a pu !

J’ai repris le développement de l’éditeur de niveau du jeu.

J’ai installé le système de gestion des objets et je vous ai fait une belle capture toute mimi de la version 0.8 de l’éditeur.

Pour le moment ça liste les objets, sélectionne + recadrage caméra et ça les supprime sur demande, déjà pas mal pour une belle apres-midi.

06-08-25-editeur-v08

Tout commencement a une fin…

V 0.7 de l’éditeur on peut définir le début et la fin du niveau à l’aide de fleches de couleur (bleu et rouge) placable à la souris et au clavier.

Un problème à été découvert au niveau des blocs (murs) et est en cours decorrection : quand on ne dessine plus d’objet le système ne reçoit plus l’information de métériaux (à priori c’est de ça qu’il sagit) ce qui fait que soit il fait noir de chez noir (et c’est pas une question de lumière, j’ai tout testé) soit il fait clair (selon toujours que je chipote aux matériaux standard).

Donc pour le moment hors lumière il fait clairet je vais cherche une solution pour transformer les murs en objets ce qui me semble etre une bonne solution équivalente au système actuel.

A suivre donc…

Objets mondialisés

L’éditeur est capable de lire la nouvelle version des fichiers monde (fml), cad qu’ils prennent en compte les objets.

Lecture/sauvegarde et affichage sont fait et se portent bien, reste à pouvoir ajouter/supprimer/modifier les objets… encore un bazard prise de tête en perspective lol

A l’étroit

Voici 2 captures :

06-06-07-bbox 06-06-07-bsphere

Ceci illustre les englobants, ce qui permet de détecter les collisions entre-autres, ou si on est prêt d’une porte pour l’ouvrir.

La détection de collision est normallement bonne (restera à ajouter les modifications d’échelle un jour quand on en aura besoin)

Attaquons la suite…

Objection !!!

[Vidéo #2 disponible]
Attention où vous marchez !!!

Bah oui y a une baballe maintenant au sol de notre pièce, et y a pas qu’elle. On a une pierre et 2 portes dont une avec fermeture automatique.

Alors c’est bien joli mais ça ne suffit pas, listons les nouveautés :

  • Collision perso/murs et perso/objets
  • Collision objet/objets et objet/mur
  • Ciblage de l’objet devant nous pour interragir (les portes)
  • Collisionner quelque choses = peut-être qu’il faut le déplacer => déplacement avec quelques notions physique, la balle en est un bon exemple
  • Distinction entre objet solide (pierre) et objet balle (la balle)
  • Capture des mouvement de la souris

Le système de collision est V2 mais sera corrigé concernant un dernier probleme de rotation d’objet.

La suite ? arf… les exams, le boulot.. bon ok : modifier l’éditeur de niveaux pour tenir compte des objets et sauver/charger la liste de ceux-ci. Puis on s’attaquera peut-être à l’affichage des jauges, armes, etc… Y a la fin de niveau aussi à détecter et le scriptage des objets des niveaux à faire…

Un menu en cache un autre

J’ai continué le menu du jeu, quand on clic sur Jouer on arrive plus directement dans le CR jeu, on passe par un sous-menu [Nouveau, charger, sauver, retour] et si on clic sur nouveau alors zou choix de la difficulté [facile, moyen, difficile, retour] J’ai un peu regardé également directInput pour avoir des infos utiles sur la souris et donc je pense faire une bloc pour ça accessible par l’interface de GRAK qui permettrait au CR d’avoir ces infos ou alors les envoyer via les événement mousemouve, ou faire un peu des 2…, mais bon… on verra bien

aïeuh ça fait mal

Nouveautés :

  • 1er système de collision 😀 !!!
  • Chargement du monde globalisé (via dll du jeu)
  • CR init de chargement global

A faire :

  • Modifier le système de passage de niveau
  • Améliorer la méthode de chargement des niveaux

On en est à remplir le niveau d’objets divers.

Souvenir souvenir

Editeur de Liebesstein : suite 🙂

  • Sauver
  • Sauver sous
  • Ouvrir

De plus j’ai amélioré la fenêtre de plugins pour qu’elle s’adapte à une taille idéale (donnée par le plugins en dur)

Le système de texture n’a été fait qu’en partie (liste XML des fichiers à chargé) ne pouvant pas encore définir le fonctionnement générale. Nous avions parlé d’un CR de chargement générale et pour le moment c’est l’Editeur qui charge les textures. CR à mettre en place donc.

Nous nous rappellerons (pour les bon vieux fans) le moteur Y (2002 – histoire de Nahyan). La salle (en capture), sauf le renfoncement, est un clin d’oeil à la salle de test de ce moteur. Une forme en L. Mais à l’époque par face murale il y avait 2 triangle et pas 2 x bloc, comme notre système actuel.

Captures :

06-04-05-editeur-0 06-04-05-editeur-1

Un éditeur de niveau

Les niveaux de Liebesstein sont basés sur une grille fixe et un système de blocs, après plusieurs structures de fichiers différentes je suis tombé d’accord avec moi-même sur un système XML de définiton des blocs, ceux-ci ayant été corrigés quelques fois quant à leurs possibilités d’enregistremment et création.

On a donc un système de bloc ayant plusieurs parties affichable (4 murs, + sol et plafond + 2 vitres milieu) zut, j’ai oublié les portes…

On a aussi, après une petite prise de tête mathématique, un pointeur (bloc fantome) pour nous representer dans l’espace afin de faire une sélection ou une création.

Captures :

06-01-26-cr_editeur-bloc-0 06-01-26-cr_editeur-bloc-1 06-01-26-cr_editeur-bloc-2 06-01-26-cr_editeur-bloc-3 06-01-26-cr_editeur-ptr-0