Fichier texte en cours : démo portfolio recrutement.txt
Visibles :
Utilisation de DirectX 10.1 et du C++11
(présenter une partie des éléments dans une sorte de caverne texturée avec deux trous dans le plafond + plusieurs différentes skyboxes !!)
1 - présentation du site (french website with more than 90 articles on the game programming subject) / blog anthroponaute.fr / 10-15 articles présentés - OK
- au début de la vidéo
2 - portals / téléportation (bb volume trigger) + le modèle d'un portail (qui pivote sur l'axe Y) en .obj + textures
- le portail possède 3 cercles qui font des pivots autour de leur centre (comme dans le film Contact)
- amène le joueur ou la caméra sur d'autres portails d'une autre couleur
3 - GUI : widgets, fenêtre, scrollbar, boutons, draggable window, dialog, textarea, label, image, menu popup - OK
+ belles images et textures !!
4 - eau de type I, II, III, IV et V (à l'intérieur d'une piscine mesh) - réfraction ; bump mapping ; vague ; et le tout combiné
- eau simple normal map - OK
- eau avancée add waves (sin + cos + time) - OK
- eau displacement
- eau refraction + reflection - OK
- eau displacement + refraction + reflection
- eau avancée avec flow map -
5 - billboard text (au-dessus de beaucoup d'unités placés en procédurale) - OK
6 - skybox / skysphere (changeable avec l'appuie d'une touche) - OK
7 - afficher la console et s'en servir, type taille I & type taille II - OK
8 - barre de sorts à la WoW (par Cremuss et avec les GUIButton) + différents effets
- effets de particles quand on appuie (notamment neige & pluie) par exemple
- ou d'autres effets...
9 - changement d'icone de souris en fonction de la selection (picking / raycast) (d'un modèle d'unité (ex : Optimus) ou d'un cube) - OK
10 - icone du programme - OK
11 - plein de cubes texturés qui tourne dans tous les sens (comme dans un projet Irrlicht avec 3 matrices de rotations combinées) et qui change de texture régulièrement avec fade out / in (translucide) - OK
- first_texture - second_texture
12 - tracés de lignes en couleur (affichage de normales, binormales et tangentes d'un mesh) - OK
- en utilisant aussi un geometry shader
13 - caméra 1ère personne avec fin de mouvement en fondu / désaccelération (avec fonction amortissante et limitée) -
14 - système de chat par la messagerie (vidéo séparée avec client et serveur par sockets, écran splité) -
15 - multi-labyrinthe superposé en 3D (+ algorithme cube vertices merger) -
16 - caméra 3ème personnne trigo - OK
17 - lancer de cubes par un moteur physique dans la salle texturée (Newton Dynamics) - OK
18 - moteur physique par mouvements réalistes (objets posés sur une table ajoutées de manière procédurale) -
19 - glasse avec reflection et refraction - OK
- avec un objet importé et chargé en .obj - OK
20 - chargement de fichier .obj - OK
21 - nuages (CloudSceneNode) - OK
22 - caméra spline trajectory (avec affichage de la trajectoire ; construits par bouts de Draw3DLine) - OK
- mettre une cannette de coca-cola !!
23 - utilisation de commandes dans la console - OK
24 - evenements sonores
- DirectSound
25 - static m2 importer (WoW) - OK
26 - animation M2 -
27 - système de particules rudimentaire -
- pluie - neige - feu
28 - plan qui pivote et tourne sur lui-même avec un modèle RTT à l'intérieur (portrait d'unité 3D à la Starcraft)
29 - unité (personnage) qui s'assombrie (fx shader out fade effect) progressivement avec le personnage en format .obj - OK
30 - lecture de vidéo sur un gros plan (écran / télé mesh / haut-parleurs) + son (avec la librairie ffmpeg)
- écran importé et chargé en .obj - haut-parleurs géants importés et chargés en .obj
31 - viewports / multiscreen - OK
32 - FXAA shader + quad - OK
33 - 3 scroll bars pour changer la couleur du back buffer - OK
34 - text font system - with AngelCode font format support - OK
35 - planète et sphère qui tourne en révolution avec la formule de Rodriguez - OK
36 - terrain avec multi-texture -
37 - gestionnaire d'effets post-process - OK
38 - Fog (dont les 3 types) - avec clear color adaptée - OK
39 - Motion blur -
40 - Depth Buffer visualizer - OK
41 - XFileFormatLoader - OK
42 - Hardware Instancing - OK
43 - Rim lighting - OK
44 - Mouse Tooltip - OK
45 - Procedural Tree Generator -
- les arbres seront disposés et placés sur un terrain de façon aléatoire !
- utilisation de TinyXML !
46 - Soft Smoke Particles -
47 - Blp Texture Format Viewer -
- avec une UI correcte de sélection et d'affichage
- scroll + textarea
- folder viewer
48 - Implémentation de AntTweakBar - OK
- présentation de tweaking de shaders avec des modèles, etc...
49 - Screenshot saved - OK
- sans utiliser D3DX10
- en utilisant la lib PNG, c'est-à-dire images enregistrées sous format .png
50 - SplashScreen - OK
51 - Lecture et écriture de fichiers textures de type .png et .tga et .bmp - OK
- à faire : .tga
52 - Multiple Lights
- Spots, Directionnals and Points lights
- light being rendered as billboard of a certain color - OK
- RevolutionAnimator avec mouvement circulaire - OK
53 - Movable Text Overlay sur des unités issues d'un même modèle .obj -
54 - Arrow Quest Billboard - OK
55 - SwapChain change - OK
56 - Affichage de la police à l'écran - OK
57 - Brouillard - OK
58 - Ouverture et écriture avec Zlib - OK
59 - CPUInfo - OK
60 - poussée d'archimède d'un baril dans l'eau ; avec bullet ou newton dynamics - OK
------------------------------------------------
Optionnels (ou pas besoin) :
- arc de rotation caméra comme quand on appuie sur la touche Z dans Diablo 3 + fondu déaccélérant
- Quaternion SLERP
- génération d'herbes sur un terrain (xna billboarding example)
- perturbation d'herbes après passage par les pieds
------------------------------------------------
Musique :
- musiques douces
Durée de la vidéo portfolio :
- 22 min
Nombre d'idées présentées :
- à peu près 60 (22 secondes par idée présentée)
Refactoring :
- Réorganiser un peu tout le code des projets présentés !
Site web associé :
- énumérer les 60 idées en une seule page !
------------------------------------------------
Eléments non visibles :
- système d'events (avec delegates & std::function)
- gestionnaire de textures
- entrées clavier avec WndProc
- performance timer
- classe DataParameters + GUIParamaters (et ses dérivées)
- classe BoundingVolumeTrigger
- AlphaPass pour la transparence (RAII)
- render targets
- schémas et notation / graphique de modèles UML
- TextureArray support
- Geometry Shader
- Le FrameWork (fw::) que j'utilise pour mes démo -