Ajout

  • Remplacement de tous les modèles 3D assemblés avec plusieurs formes géométriques par leur équivalent en un seul bloc au format 3ds

  • Hit visible avec coloration rouge des modèles 3D

  • Pan sound sur press L et R dans database

  • Modification de ground en plus de atmosphere avec la touche debug 4

  • Manœuvre d'évitement si on se dirige dans la même direction que le barrel roll

  • Nouvel obstacle : Torii


Réglages

  • Texture Background (stars) en 4096 au lieu de 1024

  • Réduction de la taille des particules d'étoiles

  • Couleur de la charge

  • Lotus life passe de 50 à 100

  • Réglage du pan sound des boutons de l'écran titre

  • Colorisation des ombres en fonction de la couleur de ground

  • Couleurs classic VGA pour les Space Invaders

  • Mise en place de la durée des niveaux (SET_INSIDESHIP était interminable...)


Optimisations

  • Suppression du double affichage mine green/red dans database

  • Fusion des models Enemy et Asteroid

  • SkyBitmap passe de 64x64 à 1x3

  • GroundBitmap passe de 128x128 à 2x2

  • ShadowBitmap passe de 16x16 à 1x1

  • StarsBitmap passe de 4096x4096 à 2048x2048

  • FlatBitmap et TransparentBitmap passent de 8x8 à 1x1

  • Simplification ombre/sol/sous sol avec transparence en ombre/sol flat

  • Fusion de Nebulae, Stars et Gradiant Sky en un seul model

  • Simplification code détection Gamepad


Debug

  • Problème de Z order sur Android réglé : le viseur et le virtual gamepad ne disparaissent plus derrière le décor !

  • Scale automatique du background pour qu'il s'affiche correctement quel que soit le ratio de l'écran

  • Le visor ne passe plus à travers le sol

  • Plus de clipping dans les modèles 3D depuis l'import des fichiers 3ds

  • Le FX barrel roll s'affiche correctement par-dessus ground

Ajout

  • Nouveaux weapons : Laser ennemi

  • Nouveaux ennemis : Training Target

  • Nouveaux décors : Tower, WaterPlan, Pine Tree, Larch Tree

  • Remplacement des sphères astéroïdes small et big, visor, capsule et blimp par des modèles 3DS

  • Nouvelle icône vectorielle pour Android

  • Remplacement du pourcentage Hull par une jauge HUD

  • La touche debug sky gère maintenant la nébuleuse et le wormhole en plus du ciel

  • Nouveau bouton debug Sky pour Android

  • SoundTik sur bouton pause



Réglages

  • Suppression des touches haut/bas sur les menus de type gauche droite, c'était beaucoup trop dérangeant

  • Il manquait un Space Invader dans la database

  • Agrandissement de la collision box de Lotus Heart

  • Placement automatique des boutons du Virtual Gamepad en fonction de la résolution de l'écran

  • Réduction du volume du son d'activation du mode Debug

  • Les lasers bleus du joueur ne collisionnent plus avec son propre vaisseau

  • Ralentissement de la vitesse des lasers de Stalker et Moskito

  • Ajout des  groupes de collision COL_LASERPLAYER et COL_LASERENEMY et des MASK qui vont avec

  • Petite passe sur les couleurs

  • Enfin le retour du fullscreen sans barre de navigation Android

  • Le quadrillage au sol est devenu de simples lignes

  • Vitesse de rotation du Lotus divisée par 4

  • Réécriture des Scraps en mode shape aléatoire

  • Meilleur positionnement des explosions et des scraps

  • Inside Ship devient Mothership

  • Réglage optimum pour la taille de Lotus Heart

  • On ne peut plus désactiver l'affichage FPS en mode debug

  • Taille de la collision box de SpaceInvader

  • Meilleure précision de tir

  • Augmentation de la limite de déplacement en X de -12/12 a -15/15

  • Suppression de CHIPTUNE NO.52 BY FRANK E.LARSEN, la musique était bien, mais  beaucoup trop métallique et aiguë



Optimisations

  • Ajout de la phrase

  • Suppression de VGDebugText sur Virtual Gamepad

  • Suppression de fonction InitVirtualButton et clean code sur Virtual Gamepad

  • Suppression de la variable SoundData Array<String>

  • Une seule fonction pour le rendu des mesh player, enemy, onstacles, weapons et shadows afin d'éviter de modifier plusieurs fois le nom des mesh

  • Suppression des anciens modèles non utilisés

  • La prise de screenshot (touche F2) est maintenant instantanée alors qu'il fallait plusieurs longues secondes auparavant

  • Nouvelle gestion de la vitesse et du positionnement en Z du vaisseau durant les SmokeModel repassent en RenderOrder DepthSorted

  • Suppression de ScrapColor et ExplosionSphere

  • Le spawn debug boucle en fin de tableau



Debug

  • La zone de collision du vaisseau tourne enfin correctement avec sa rotation sur l'axe Z

  • Sur la dernière version de ZGE, on ne pouvait plus faire boucler les menus vers la gauche

  • Le jeu plantait si on affichait Lotus dans la database

  • La musique continuait de jouer quand le jeu perdait le focus sur Android

  • Suppression du warning

  • java.source=1.8

  • java.target=1.8

  • dans ant.properties ( ça correspond à jdk1.8.0_281 )

  • Le vaisseau du joueur continuait à fumer même lorsque son Hull repassait au-dessus de 25%

  • L'interface de jeu apparaissait en mode photo

  • Blimp arrête de tirer s'il est en train d'exploser

Ajout

  • Nouveau building et gateway pour plein de nouveaux paternes pour l'environement Town


Réglages

  • Réglage de la hauteur des ombres pour éviter le clipping sur Android


Debug

  • Les impacts lasers ne s'affichaient pas sur Android

  • Les bonus ne collisionnent plus par magie avec player lors de leur apparition. En fait il fallait set leur zbtSetPosition avant d'activer la collision zbtSetCollisionFilterGroupAndMask et zbtSetSleepingThresholds

Ajout

  • Randomisation du placement des étoiles de BackgroundStars au démarage. Je ne le fais pas à chaque génération de Background parce que la génération de BackgroundStars en 2048 freeze le jeu sur machine peu puissante


Réglages

  • Scale de 0 à 1 sur l'apparition des weapons

  • Positionnement initial de player laser en retrait

  • Réduction de la taille des particules de fumées du missile

  • L'affichage des ailes cassées du vaisseau dans la database n'apparait qu'en mode debug

  • Les mines font apparaitre 20 nails au lieu de 10


Optimisations

  • Mise à jour de la librairie SunVox de 1.9.4c à 1.9.6c

  • Mise à jour d'Android targetSdkVersion de 26 à 29

  • ZGameEditor utilise maintenant la librairie SDL2 au lieu de l'antiquité SDL1.2

  • ZGameEditor détecte maintenant l'unit LINUX pour ne pas avoir à gérer le chemin des librairies externes manuellement

  • Réduction du nombre de points BackgroundStars de 64 à 16

  • Simplification de la création de rigid body pour les ennemis

  • Remplacement du numéro de l'objet ayant un problème lors de la création de son Body par son nom, plus facile pour débugger


Debug

  • La génération du background et son affichage est géré quelle que soit la taille de l'écran et l'OS

  • Test pour empêcher le logo Txori de s'afficher à l'envers sur certain devices

  • Atténuation de la visibilité du bug des fonts sur Android en remplaçant le Transparency de BitmapFromFile en BlackColor plutôt que AlphaLayer

  • Les éléments de décors apparaissaient penchés en fonction de l'orientation du tir laser de player

  • La taille du virtual joystick influait sur la rotation maximum du vaisseau lors de ses déplacements

  • La position du virtual gamepad était mal récupérée au loading de la sauvegarde

  • La texture BackgroundStars se répétait sur un écran avec trop grande résolution

Ajout

  • Nouveaux modèles 3DS : SonicBoom

  • Database: Key repeat sur les boutons Previous et Next


Réglages

  • Le jeu est maintenant en mode 64bits et utilise la librairie ZgeBullet_x64.dll

  • Agrandissement de background pour ne pas afficher du noir en coin d'écran lors du camera shake

  • Ralentissement de EnemyLaser de 200 à 150

  • Après avoir vu le gars sur Twitch activer le mode debug par erreur, j'ai passé l'activation à 4 clicks et la désactivation à un seul click

  • La couleur du Visor s'adapte à la couleur d'arrière-plan


Optimisations

  • Simplification de l'export TEXT en vue de l'update classes de ZGameEditor

  • GroundColor passe de vec3 a mat4 pour le transfert des couleurs du sol au shader shadow

  • Suppression de SkyRenderSetColor maintenant que l'alpha de sky est géré par le shader

  • Remplacement de tous les =. en =0.

  • Désactivation des fonctions et const OpenGL non utilisées

  • Désactivation des fonctions ZgeBullet non utilisées


Debug

  • Une ligne de texte sur deux avait un problème de fond non transparent sur Android

  • Réparation du Camera shake qui n'avait jamais fonctionné

  • Problème de boite de collision non réinitialisée dans database

  • Les ombres s'affichent correctement !

  • Database: l'affichage du boss Lotus en mode debug cassait la rotation de l'affichage de la boîte de collision sur les autres modèles

  • La forme des montagnes et stalagmites générée aléatoirement ne l'était plus depuis la version 210331

Ajout

  • Nouveaux modèles 3DS : Canon, Blimp, Scrap, Stalagmite small & big, Ruin Pillar, Moai

  • Nouveau pattern : Torii gates

  • Nouveau set : Forest

  • Affichage du pourcentage d'ennemis abattus par niveau

  • Le pourcentage d'ennemis abattus se cumule au score en fin de niveau % x 10

  • Ajout de la table de HighScores et de l'écran NewHighScore

  • Le Power-up Shield colore la jauge de vie et l'Omeganaut

  • Légende d'utilisation sur l'écran Setup Virtual Gamepad

  • Timer sur l'écran Disclaimer pour passer à l'écran Title

  • Timer sur l'écran Title pour passer  à l'écran HighScores

  • Option d'activation/désactivation des vibrations Gamepad dans l'écran Setup

  • Fonction Google Doc d'export de la liste des models affichables dans Database

  • Coloration rouge du cockpit et/ou wings de l'Omeganaut lors d'un hit

  • Apparition d'un Boss tous les trois Stages

  • Rotation de la lampe dans la Database pour mieux apprécier les volumes

  • Pas de temps de transition pour le premier Stage en mode Debug

  • Animation d'apparition du titre Omeganaut


Réglages

  • L'Omeganaut n'est plus bloqué dans le couloir. On peut forcer un peu pour sortir du couloir

  • Ralentissement de la vitesse des lasers ennemis : 150 → 130

  • Meilleur timing pour l'apparition de la fumée sur l'Omeganaut

  • Le tir chargé est moins OP (il ralentit et finit par disparaitre à force de collisions)

  • Réduction du damage cockpit 5 → 2

  • Suppression des noms aléatoires des niveaux

  • Modification taille et forme du missile

  • Réduction de la distance d'apparition sur les axes X et Y du MineField 40 → 32

  • Réglages Shake gamepad pour la fumée et le BarrelRoll

  • Suppression du triple tir → Charge facilitée

  • Réglage volume sur les sons Tick et Validation

  • Le Boss Lotus tire quatre fois plus de missiles

  • EnemyWasHit est indexé sur App.DeltaTime

  • Apparition des Weapons, Enemis et Decorium avec un Scale = 0

  • La collision des Weapons ne s'active qu'après qu'elles ont atteint leur Scale == 1

  • Réactivation de l'apparition des astéroïdes en tant que décors dans AsteroidField

  • Réglage de la distance caméra sur tous les objets de Database

  • Temps de transition entre niveaux différents selon le numéro de Stage et le Sector

  • Probabilité d'apparition de PowerUp différent selon le type d'ennemi détruit

  • Disparition du Fire Charge au-delà d'une distance de 300

  • Le son du Fire Charge se lance quand il est chargé au lieu du moment de son apparition

  • Interceptor 1.5x plus gros

  • Animation de rotation du logo Txori

  • Remplacement de tous les sound_vaildation par sound_tick


Optimisations

  • Le dégradé du ciel de Background n'est pas rendu dans les menus

  • Simplification de l'affichage du viseur

  • Réécriture totale de la fumée

  • Amélioration du déplacement des explosions et Scraps

  • Renommage de toutes les variables pour s'y retrouver plus facilement

  • Conversion des int qui ne peuvent dépasser 256 ou être négatifs en byte

  • Réécriture totale du spawn object sous la forme

    Dummy.Position = vector3(0,0,10);
    createModel(Dummy);

    au lieu de

    model m = createModel(Dummy);
    m.Position = vector3(0,0,10);
  • Utilisation des paramètres RGB au lieu de XYZ pour les vector3

  • Clean des Mesh, Materials, Textures et Shaders non utilisés

  • Enemy.Behavior devient un int au lieu d'un Array, parce que les Array ne sont pas nominatifs aux Models

  • Réduction du shape AsteroidSmall par x0.5

  • Pas de création de Scraps au-delà d'une distance de 250

  • Réécriture de la gestion du spawn des obstacles en intérieur et la détection de la fin de ce genre de niveau

  • Réécriture de la gestion du tir chargé

  • Simplification de la coloration des particules catch PowerUp

  • Optimisation du nombre de tests Raycasting pour le Visor


Debug

  • La musique se relance dans l'écran setup si on fait "Music: On" ou "Reset Settings"

  • Le spawn Invader, Lotus et Mine sur une planète ne fait plus planter le jeu à cause de la fonction renderMesh. Tout se passe dans CreateShadow (à améliorer)

  • Réinitialisation des Timer.CurrentRelativeTime pour éviter les surprises d'apparition d'objets au mauvais moment

  • Réinitialisation des paramètres Camera en début de jeu pour éviter les problèmes

  • AsteroidSmall explosait instantanément à son apparition après destruction de AsteroidMedium

  • Le PowerUp pouvait entrer en collision avec autre chose que l'Omeganaut. Bug incompréhensible... Donc j'ai limité ce test de collision a une courte distance

  • Le patern Mine n'apparaissait que sur OnPlanet

  • La sortie de Corridor cachait le Virtual Gamepad

  • Les objets disparaissaient par le haut ou le bas de l'écran alors qu'ils étaient encore dans le champ de vision

Ajout

  • Nouveaux modeles colorés pour Interceptor, Moskito, Stalker et Blimp

  • La touche Debug permet de passer directement de l'écran Disclaimer au mode debug

  • Respawn rapide de l'Omeganaut en mode debug simplement en tirant

  • Fonction Google Doc d'export de la liste des models que l'on peut spawn en mode Debug

  • Petit shake gamepad quand le tir chargé est prêt

  • Les Power-Ups sont attirés vers l'Omeganaut lorsqu'il charge un tir

  • Son d'accélération de l'Omeganaut

  • Son woosh stéréo (axe X, il faut voir comment je vais faire pour Y) des objets environnants

  • Variable debug pour prendre des photos avec ou sans UI

  • Ajout du rollover souris sur tous les menus

  • Légère rotation aléatoire des arbres sur leur axe X et Z

  • Prise en compte du bouton Back sur les manettes Xbox


Réglages

  • Sur clavier, la touche Back [Z] disparait au profit de la touche [ESC]

  • Suppression de la détection de la touche Back dans Setup Keyboard

  • Basculement entre les channel 0 à 3 à chaque lecture d'un son pour éviter de saturer un seul channel

  • Désactivation du son de validation bouton sur le spawn Explosion en mode Debug

  • Limite threshold joystick pour les menus (0 → 0.2)

  • Réduction du shake gamepad pour la fumée (0.2 → 0.12)

  • Réduction du shake gamepad pour le roll (0.4 → 0.1)

  • Augmentation du nombre de particules Stars ([50,500] → [100,1000])

  • Suppression de l'accélération de l'Omeganaut lors du Game Over. Remplacé par un simple éloignement sur l'axe Z

  • Renommage Invader B. en Invader C.

  • Réglages vitesse de déplacement et caméra lors des transitions entre niveaux

  • Texture au sol pour délimiter la zone de déplacement sur l'axe X

  • Utilisation d'un shader basic pour l'affichage du Sonic Boom

  • Réduction de la longueur des Stages (25 → 20)

  • Division de la vitesse des Scraps à leur apparition par 4

  • Seules les ailes cassées de l'Omeganaut subissent des dommages de collision

  • Réduction du volume son Laser Hit (0.8 → 0.6)

  • La destruction des Asteroids medium et big donnent un nombre fixe de rejetons, au lieu d'un chiffre au hasard comme avant. Les règles doivent être strictes !

  • Les touches clavier ENTER et SPACEBAR ne sont plus prise en compte lors du setup clavier. Avant elle faisaient un Backbec

  • Suppression de la touche Back pour valider le nouveau highscore

  • À l'écran nouveau HighScore, le bouton Fire permet de valider une lettre ou de valider le nom si la dernière lettre est sélectionnée

  • Ajout du ButtonEscape pour différencier de ButtonBack, permettant plus de finesses entre UI clavier, gamepad et écran tactile

  • Lors du setup clavier, n'importe quelle touche clavier enclenche la détection, par contre les touches réservées ne sont plus prise en compte une fois le setup lancé

  • On peut maintenant quitter le Setup Gamepad ou Clavier en appuyant sur bouton Escape

  • Réglage de la précision du clic souris sur tous les menus

  • Blimp et Moai peuvent apparaitre sur le set Plain

  • Les Mountains n'apparaissent plus sur le set Plain

  • Suppression du spawn AsteroidBig sur Set_Moon

  • Réduction du nombre d'astéroïdes sur le set Moon

  • Beaucoup plus d'arbres dans la forêt

  • Arbres plus massifs


Optimisations

  • Les Shadow ne sont plus des Models, du coup le nombre de models affichés a été divisé par deux. Les Shadow sont directement affichées sur le onRender des Enemy, Objects et Weapons. Le seul model Shadow restant concerne le Player, à cause de sa rotation sur l'axe Z (Barrel Roll)

  • Simplification de la gestion des contrôles Virtual gamepad qui se trouvaient sur player au lieu de onUpdate du jeu

  • Suppression du contrôle souris

  • Simplification du code onUpdate de CatchPowerUp

  • Suppression de lookAtCamera(CurrentModel) sur CatchPowerUp et Explosion, apparemment il n'y a pas besoin de le tourner vers la caméra

  • Suppression du vieux model Manta qui trainait dans le projet depuis le début

  • Suppression de la collision physique sur le power-up. La collision se fait avec un simple CalculateDistance3D

  • Simplification de l'affichage PowerUp

  • Division du model Enemy en sous modèles EnemyState, comme pour le model Weapon

  • Suppression de CalculateEnemyMove et utilisation de CalculateVelocity à la place en passant l'EnemySpeed en négatif

  • Simplification du calcul de ralentissement de la rotation du ModelViewer

  • Simplification de l'animation basée sur le calcul du temps dans ModelViewer

  • Séparation des Obstacles et des Décors, ces derniers n'ont pas besoin de HitBox ni de Shadow

  • Le sprite Boost ne s'affiche que si Speed > SpeedMax

  • Réécriture totale de la gestion du rebond de l'Omeganaut lors d'une collision sur les ailes

  • Simplification du Database Render Mesh

  • Suppression du model SonicBoom. Maintenant, c'est un effet directement intégré dans l'affichage de l'Omeganaut

  • Simplification du code du FX hit

  • Réduction de la texture des planètes/lunes de 256x128 à 128x64 pour éviter la saute sur petite config

  • Plus qu'une seule fonction Google Doc pour exporter VARS et DATA au même endroit

  • Apparition Invaders avec 2 boucle "for" au lieu de 5...

  • Déplacement de la gestion des boutons de navigation du model Database au state Database


Debug

  • La note passée dans la fonction PlaySound3D n'était absolument pas prise en compte...

  • Réinitialisation du Roll et BarrelRoll au respawn de l'Omeganaut

  • La collision entre Omeganaut et un bonus ne se faisait plus pendant le Game Over

  • L'App.DeltaTime n'était pas pris en compte dans la réduction des scraps

  • On ne pouvait pas mettre le jeu en pause à la fin d'un niveau avant l'affichage de "PRESS FIRE"

  • Les scraps et la charge tir n'avaient pas d'ombre

  • LevelCleared n'était pas réinitialisé en début de partie, si bien que le LEVEL CLEAR s'affichait en mode debug si on a avait quitté à ce moment-là

  • Suppression de la gestion de l'axe Y pour le volume du son parce qu'il était inaudible dans l'espace et trop fort au sol...

  • Même cassées, la collision des grandes ailes étaient toujours prises en compte

  • Reset des Timers sur le OnLeave de GameState pour éviter d'avoir un immeuble qui passe sur l'écran HighScore

  • Il manquait la signature TGA en fin de fichier de capture photo pour produire une image vraiment compatible

  • Pour éviter plusieurs problèmes, la sauvegarde des settings se fait à chaque fois qu'on revient à l'écran Setup

  • Le changement de taille du Virtual Gamepad n'était pris en compte que pour le cercle externe

Ajout

  • Suppression des musiques MOD temporaires. J'aurais dû le faire avant, mais maintenant que le moteur de musique fonctionne, il faut que je me remette à l'écriture de ma propre partition !

  • Ajout d'un HeartShape en plus du BodyShape pour les Ennemis

  • L'activation du mode debug photo permet de prendre des photos avec le bouton X de la manette XBOX

  • La touche photo permet de prendre des screenshots sur tous les écrans, pas seulement pendant le jeu

  • Jauge de vie pour les Boss

  • Tige de collision sur les modèles dans Database en mode Debug

  • Transition de rotation du Visor pour éviter les sautes lors d'un Barrel Roll


Réglages

  • Le Barrel Roll annule le tir chargé

  • Suppression du délai KeyTime sur l'écran Setup VG

  • L'Omeganaut revient à son scale Z normal durant les transitions si ce n'est pas un wormhole

  • Le Lotus tire 2x plus de lasers

  • Gros boulot sur les boites de collisions

  • La taille du pointage laser dans Database varie en fonction de la distance de la caméra, pour que ce soit toujours bien visible


Optimisations

  • Suppression du support Android OUYA


Debug

  • Le physic body des ailes de l'Omeganaut était en vrac...

  • L'icon de l'exe ne prenait pas en compte la nouvelle icon pour Android