Projet personnel : moteur de Voxels avec OpenGL

Je développe depuis quelques semaines et selon mes disponibilités un moteur de jeu 3D à l’aide d’OpenGL. Il a la particularité d’être un moteur de voxels (~ des pixels 3D), le jeu le plus connu utilisant les voxels est Minecraft.

Ce moteur est développé en collaboration avec Valentin Manceaux-Panot. Il développe notamment le moteur du gameplay, pendant que je m’occupe principalement du moteur 3D.

À l’heure actuelle, le moteur est en développement, voici les points d’implémentation réalisés :
– Configuration d’un serveur SVN pour versionner le projet.
– Découpe en class et namespace du projet :

  • namespace Engine
    • Voxel
    • Shape
    • Cube
    • Sphere
    • World
    • Window
    • OpenGL
    • Command
    • Keyboard
    • Terrain
  • namespace Tools
    • Point3D
    • Speed3D
    • Defines
  • namespace Actors
    • Actor
    • IdleState
    • Pawn
    • PawnState
    • WeaponItem
  • namespace VObject
    • Experience
    • Hero

– Création de cube et de sphère composé de Voxel avec point source et rayon (ou dimension).

CE_Sphere
– Ajout de la couleur d’une Shape (class mère abstraite de Cube et Sphere).

CE_color
– Début de scene graph : on attach les Shape à un World pour les afficher.

– Amélioration des performances OpenGL, environ 60 FPS. (Perte de FPS quand il y a trop de Voxels à l’écran)

CE_SphereInside

CE_Terrain002

CE_Terrain003

CE_1

 

 

Bientôt plus :

– Génération de terrain à l’aide de Voronoi + seed (pour l’aléatoire).

– opération de translation/rotation/scale en tant que noeud dans le scene graph

– ajout de shaders / réduction du CPU au profit du GPGPU, …

Présentation et objectifs

Hello,

Ce site n’a pas forcément pour vocation première d’être un blog. J’y mettrais peut être des liens vers mes travaux personnels. Je pourrais également proposer des articles sur des sujets qui me tiennent à cœur. Vous aurez certainement plus d’informations en me suivant sur Twitter 🙂

Je suis Thibault Fouquart. Je suis ingénieur en informatique. Je me suis spécialisé dans le traitement d’images (et par extension vidéo) avec une expérience en 3D. J’aimerai bien travailler dans le secteur du jeux vidéo (orienté 3D).

Pour toutes leurs réalisations et leurs apports à la technologie, j’admire l’entreprise Google. J’ai eu la chance de me balader sur le campus de Google Mountain View (en Californie) lors de mes études aux USA. Mon rêve est de travailler pour eux. On peut notamment parler du projet le plus récent et révolutionnaire : les Google Glass. Vrai révolution ou gadget ? Je dirai révolution. Je pense que si les Glass s’impose, les smartphones vont progressivement être vu comme une extension des Glass et non l’inverse. Bien sur la clé de leur succès est une prix assez attractif (moins de 500€). Google s’illustre également par leurs projets un peu hors norme, tels que les voitures auto-pilotés.
N’hésitez pas à me contacter pour une opportunité chez Google.

En ce moment je bidouille un moteur de voxels en OpenGL (C++) avec un ami. Je vous présenterai surement quelques screenshots. Je ne suis pas fermé à une contribution extérieure, si vous pensez avoir les compétences nécessaires et que le projet vous intéresse, vous pouvez postuler en me contactant par email avec vos motivations. Pourquoi pas un éventuel portage sur Android/iOS.