diff --git a/content/sonic/paper.md b/content/sonic/paper.md new file mode 100644 index 0000000..f9d3df3 --- /dev/null +++ b/content/sonic/paper.md @@ -0,0 +1,38 @@ +--- +layout: layouts/base.njk +eleventyNavigation: + key: Paper Sonic + parent: Sonic the Hedgehog + order: 5 +--- + +# Paper Sonic + +Le projet "Paper Sonic" était une évolution de mon projet Sonic Xtreme, ou j'avais un peu abandonné l'aspect Sonic Xtreme, pour tenter de réutiliser des sprites de megadrive dans un environnement 3D en caméra fixe. Ça devait être un jeu de plateforme avec des composantes action-RPG, à la manière de Super Paper Mario sur Wii, mais dans un environnement plus "blocky" à la Sonic Xtreme. + +![Sonic, en sprite megadrive, dans un environnement blocky un peu futuriste/utopique](/img/xtreme/paper/utopia.png) + +Le projet était fait en parallèle de celui Sonic Xtreme et les deux se nourissaient un peu. Il a été abandonné vers 2013, quand j'ai commencé à manquer de temps et n'avait plus de PC Windows pour utiliser Game Maker. + +## Pourquoi ? + +Passer de Sonic Xtreme à un Paper Sonic peut sembler, étrange, et ça vient d'une envie que j'avait et que je ne pouvais pas faire avec le jeu de base : ajouter du multi-personnages. L'idée du coup était qu'en utilisant les sprites des perso sur MD, ou en style MD, ce serait plus simple pour moi de faire du multi-personnage, là ou Xtreme n'avait des sprites que pour Sonic. + +![Screenshot d'un menu de ou on voit deux niveau accessible, Techno Paradise et Floating stones, et Sonic, Tails et Knuckles jouable](/img/xtreme/paper/menu.png) + +L'aspect plus RPG est venu rapidement, mais n'a jamais vraiment été implémenté. Le plus que j'ai mis, c'est un sprite de Shadow dans l'un des niveaux de tests. + +![Sonic, face à Shadow dans un environnement de neige](/img/xtreme/paper/icelevel.png) + +## Soucis rencontrés + +Encore une fois, quelques soucis dans ce projet : +- Je galérait à l'époque à bien gérer mes courbes d'acceleration, du coup mes perso était super lourd et patinettes +- J'avais tendance à réfléchir le jeu en "vue de devant" alors qu'avec les sprites la vue de côté était de mise +- Les collisions étaient pleines de soucis, parce que j'avais séparé les "murs" et les sols, ce qui provoquait des collisions pas hyper bien finies + +De plus, le code source s'est retrouvé dispersé dans deux fichier .gmk, (du à un ou j'expérimentait une refactorisation du moteur) ce qui fait que j'ai jamais vraiment pris le temps de tout réunir et adapter. + +En plus, y'avait quelques bugs graphique sur la première version du moteur… qui était aussi celle qui avait le plus de contenu. + +![Knuckles, face à un fragment de la Master Emerald dans un environnement désolé](/img/xtreme/paper/floating.png) diff --git a/content/sonic/xtreme.md b/content/sonic/xtreme.md index e7c8229..5ee1497 100644 --- a/content/sonic/xtreme.md +++ b/content/sonic/xtreme.md @@ -1,3 +1,11 @@ +--- +layout: layouts/base.njk +eleventyNavigation: + key: Sonic Xtreme + parent: Sonic the Hedgehog + order: 4 +--- + # Sonic Xtreme Remake Comme beaucoup de jeunes fans de Sonic un peu dev, j'ai été fasciné par Sonic Xtreme quand j'étais plus jeune, et j'ai fait plusieurs tentatives de le recréer ou de partir de ses principes. J'ai fait quelques tentatives de recréation du jeu, chacune avec leurs qualités et défauts. J'avais plusieurs projets d'histoire, un qui mélangeait notamment pas mal d'élément de "titre oublié", et une autre ou je fusionnais toutes les histoires, notamment les trucs lié à la sorte de "Virus" qui contamine Sonic. @@ -6,6 +14,8 @@ Comme beaucoup de jeunes fans de Sonic un peu dev, j'ai été fasciné par Sonic La première tentative avait un défaut particulier, le fait d'être en vue de derrière. Si cela peut parraitre pas tant à première vue, en fait cela provque pleins de complexité, et a fait que je savait que je devais passer en caméra fixe à côté de cela. Le moteur utilisait Game Maker avec un faux système de 3D pour les collisions : une collision 2D pour savoir si j'étais dans la zone de la plateforme, puis un check de la valeur z pour savoir ou je me situait sur l'axe en plus. +![Sonic, de dos, dans un terrain très "blocky" typé green hill](/img/xtreme/screen.png) + Plusieurs trucs m'ont fortement handicapé dans ce projet (outre mon manque de connaissance à l'époque mdr) : - Les soucis de caméra (surtout que c'était full clavier avec juste une caméra tank, soit un peu incontrolable) - Ce n'était pas possible de faire des éléments par dessus des autres @@ -13,21 +23,16 @@ Plusieurs trucs m'ont fortement handicapé dans ce projet (outre mon manque de c Mon plan pour gérer ça était de passer en caméra fixe, et de build les niveaux à partir de ça. Pour le second aspect, il me fallait un éditeur de niveau custom. Pour le premier aspect, le plan à rapidement évolue vers un autre projet, "Paper Sonic". -## Paper Sonic - -Une autre tentative que j'ai fait était une approche plus "Paper-Mario-esque". C'était le même moteur, mais j'étais sortie de l'idée "refaire Sonic Xtreme" et plus "chercher des idées pour faire un Sonic en caméra fixe". L'idée derrière le jeu était qu'en utilisant les sprites des anciens personnages, ce serait plus simple pour moi de faire du multi-personnage, là ou Xtreme n'avait des sprites que pour Sonic. - -Encore une fois, quelques soucis dans ce projet : -- Je galérait à l'époque à bien gérer mes courbes d'acceleration, du coup mes perso était super lourd et patinettes -- J'avais tendance à réfléchir le jeu en "vue de devant" alors qu'avec les sprites la vue de côté était de mise -- Les collisions étaient pleines de soucis, parce que j'avais séparé les "murs" et les sols, ce qui provoquait des collisions pas hyper bien finies - -Je comptais commencer à rajouter des éléments "RPG-esque" à la Paper Mario, mais je ne l'ai finalement jamais fait. - -## Moteur de création de niveaux +## Editeur de niveaux Un petit projet de création de niveau. Il générait un modèle qui serait utilisé par Game Maker avec un moteur de collision 3D que je comptais réutiliser. Ce projet a été plutôt fonctionnel en tant qu'éditeur, et l'export/import marchait pas trop mal. +![Un éditeur de niveau, pour faire des niveaux très blocky. Sonic y est visible de dos, quelques anneaux sont placé.](/img/xtreme/editor.png) + +L'itnerface devait permettre de modifier la texture de l'appreil du block posé (c'était pas encore fonctionnel), et de poser différents types de blocs et objets + ## Création d'un fisheye -En parallèle de ça, j'avais tenté de coder un système de fisheyes, basé sur un exemple de distortion d'écran pour Game Maker. À l'époque, je connaissais pas tout ce qui était vertex shader, donc ça avait été géré de manière plus dégueux. \ No newline at end of file +En parallèle de ça, j'avais tenté de coder un système de fisheyes, basé sur un exemple de distortion d'écran pour Game Maker. À l'époque, je connaissais pas tout ce qui était vertex shader, donc ça avait été géré de manière plus dégueux. + +![Un test de caméra en fisheyes, déformant les côté pour donner un aspect sphérique.](/img/xtreme/fisheyes.png) diff --git a/public/css/index.css b/public/css/index.css index 48c4435..a188d6c 100644 --- a/public/css/index.css +++ b/public/css/index.css @@ -210,3 +210,9 @@ footer { margin:12px; } +#page img { + max-width:100%; + height:auto; + display:block; + margin:auto; +} \ No newline at end of file diff --git a/public/img/xtreme/editor.png b/public/img/xtreme/editor.png new file mode 100644 index 0000000..d538c6f Binary files /dev/null and b/public/img/xtreme/editor.png differ diff --git a/public/img/xtreme/fisheyes.png b/public/img/xtreme/fisheyes.png new file mode 100644 index 0000000..07007f5 Binary files /dev/null and b/public/img/xtreme/fisheyes.png differ diff --git a/public/img/xtreme/screen.png b/public/img/xtreme/screen.png new file mode 100644 index 0000000..08909a8 Binary files /dev/null and b/public/img/xtreme/screen.png differ diff --git a/public/img/xtreme/screen10.png b/public/img/xtreme/screen10.png deleted file mode 100644 index c1ac7ca..0000000 Binary files a/public/img/xtreme/screen10.png and /dev/null differ diff --git a/public/img/xtreme/screen11.png b/public/img/xtreme/screen11.png deleted file mode 100644 index d193276..0000000 Binary files a/public/img/xtreme/screen11.png and /dev/null differ diff --git a/public/img/xtreme/screen12.png b/public/img/xtreme/screen12.png deleted file mode 100644 index 346c7d8..0000000 Binary files a/public/img/xtreme/screen12.png and /dev/null differ diff --git a/public/img/xtreme/upgrade.jpg b/public/img/xtreme/upgrade.jpg deleted file mode 100644 index df07fe8..0000000 Binary files a/public/img/xtreme/upgrade.jpg and /dev/null differ