Showing posts with label Modélisation. Show all posts
Showing posts with label Modélisation. Show all posts

06 September 2009

"The Scorpio" enfin finalisé!

Enfin! Ces derniers mois, il ne m'a pas été possible de me consacrer pleinement à ma passion pour le développement de jeux vidéo, et je n'ai pu que très peu avancer dans ma prise d'expérience. La faute à d'autres projets sur le feu, des vacances en demi-teinte, beaucoup de sport, une grosse fatigue, et bien d'autres choses encore. Mais loin de moi l'idée d'abandonner mes envies d'exprimer ma créativité vidéo-ludique! Le projet du "Scorpio" était au frigo, bien protégé dans son emballage .blend (l'extension de fichier des projets Blender). Je l'ai resorti il y a deux semaines, et me suis remis à la tache en vue de le terminer. Aujourd'hui, c'est chose faite.

Ce vaisseau se veut plus complexe que le précédent. D'emblée, on peut remarquer qu'il est moins polygonal, plus doux, plus courbé, plus "smooth" en somme (les amateurs comprendront). Sa géométrie est aussi plus complexe, et j'ai passé un peu de temps sur le travail des textures. J'ai tenté, tout au long de ce projet, de ne pas réitérer mes erreurs passées avec Blender, tout en essayant d'en apprendre davantage. A l'heure actuelle, je pense avoir acquis de très bonnes bases, bien qu'il me reste de nombreuses choses à découvrir sur Blender et son interface si particulière. Un grand nombre de fonctionnalités me sont encore étrangères, et leur maîtrise m'aurait sans doute permis d'obtenir un résultat plus charismatique et plus détaillé que ce que je vous présente à la suite de cet article. Le prochain projet sera, je l'espère, encore plus joli.

En effet, pour tout dire, je ne suis toujours pas satisfait du résultat. Il est vrai que j'ai tout de même appris de nouvelles choses avec Blender, et que ce second vaisseau est plus joli que le premier. De plus, j'ai réussi à retranscrire plus ou moins bien l'engin à partir d'un croquis que j'avais réalisé à la main et épinglé près de mon écran de travail. J'ai aussi acquis une certaine méthodologie de travail avec ce fantastique outil libre de modélisation 3D. Mais je souhaiterais conceptualiser un engin vraiment surprenant, au design novateur, qui ne laisse pas indifférent. Je souhaiterais pouvoir fournir un meilleur niveau de détail au vaisseau, notamment au niveau des textures que je trouve encore assez pauvres. Je suis peut-être dur avec moi-même, me direz-vous, mais cette discipline me permettra sûrement de me perfectionner encore et encore! ;-)

A l'aide de ce (tout de même) joli modèle 3D, je souhaiterais continuer le développement de mon petit moteur 3D OpenGL/C++. La prochaine étape de ce dernier pourrait être l'utilisation de déplacements, et peut être la détection de collisions. J'aimerais développer un petit "simulateur" où ce vaisseau pourrait être dirigé avec le clavier et/ou la souris. Cela pourrait être un chouette démonstrateur. Oui, je pense que je vais m'y attarder... Wait & see!









07 June 2009

Nouveau projet 3D: "The Scorpio"

Je suis actuellement occupé à modéliser un nouveau vaisseau spatial, dans le but d'améliorer une fois de plus mes compétences en modélisation 3D tout en approfondissant mes connaissances des rouages de Blender. Mon but est de créer un vaisseau plus complexe que le précédent, en utilisant de nouvelles techniques que j'ai récemment assimilées. Parmi celles-ci, le Proportional Editing Tool, le mode Sculpt, les scripts Python (notamment Geomtool), les courbes NURBS et les modificateurs associés, ou encore les vertex specials, edge specials et face specials.

Le vaisseau se nomme "The Scorpio", soit le Scorpion en Français. C'est mon signe astrologique, n'y voyez aucune source d'inspiration... Les caractéristiques de ce vaisseau sont son nez plongeant, son cockpit légèrement surélevé et coulissant vers l'arrière, ses deux réacteurs avant, sa pointe arrière courbée vers l'intérieur (comme la queue du scorpion) mais aussi et surtout ses deux ailes posées juste à la base de cette queue (pas encore modélisées sur la photo présentée ci-dessous). J'ai commencé le design du vaisseau par un dessin au crayon sur papier, ce qui m'a permis de garder à l'esprit la silhouette générale de l'engin pendant toute la phase de modélisation (laquelle n'est pas terminée).

Je souhaiterais par ailleurs intégrer cette réalisation, si elle est à la hauteur de mes espérances, dans une première démonstration technique de mon API 3D temps-réel (running demo).


25 April 2009

Le vaisseau 3D finalisé!

Le vaisseau 3D est enfin modélisé. Cette première réalisation de bout en bout m'a permis d'aborder les bases de Blender et de la modélisation quadratique. Après avoir assez bien joué avec la modélisation de surface (méthode SubSurf), j'avais en effet vraiment besoin de m'attarder sur l'utilisation des quadratiques et des maintes fonctionnalités qui permettent de transformer ceux-ci.

Pour terminer le vaisseau, j'ai ajouté quelques tuyaux représentant la machinerie. Ces tubes ont été modélisés à partir de simples cylindres, puis subdivisés de nombreuses fois et courbés grâce au modifieur curve de Blender, qui permet d'appliquer la forme d'une courbe NURBS ou de Bézier à tout objet de la scène. Ensuite, j'ai testé de nombreuses textures avant de choisir celles que vous pouvez admirer sur les images ci-dessous. Le choix a été difficile et n'est probablement pas optimal, mais c'est une première réalisation. Par la suite, je suis sûr que les résultats s'amélioreront... Il me reste encore de nombreuses fonctionnalités de Blender à apprendre, et celles-ci me permettront de modéliser plus efficacement mes idées. J'ai d'ailleurs découvert en fin de modélisation une fonctionnalité qui m'aurait grandement aidé pour le vaisseau: le proportional editing tool. Bah, cela sera pour le prochain engin!

La prochaine étape consistera bien sûr à exporter le vaisseau en Wavefront et à l'utiliser en temps réel à l'aide de l'API C++/OpenGL que j'ai développée et gardée bien au chaud. Je risque cependant de me heurter à une tâche complexe: la création d'une unique texture "UV" pour le vaisseau, qui présente tout de même une géométrie complexe... wait & see!






14 April 2009

Modélisation 3D en cours: toujours le vaisseau

Ces dernières semaines, je n'ai pas eu beaucoup de temps à consacrer à l'écriture d'articles complets sur ce blog. Pour autant, cela ne signifie pas que je suis en perte de régime. D'ailleurs, la modélisation du vaisseau suit son cours et atteint un niveau de détails plus complexe que dans le billet précédent. Voyez par vous-même: la forme carrée et simpliste du vaisseau présenté dans le dernier article est désormais épurée. On peut constater que dans un premier temps, j'avais donné les grandes lignes de l'objet, la tendance, la silhouette. Dans l'image que je présente aujourd'hui, on peut voir pas mal de progrès!

Le nez a été affiné et le cockpit a une forme plus fine et plus élancée, se prolongeant quelque peu sur l'arrière du vaisseau. Les ailes ont été assez travaillées, que d'heures passées! Sur le dessus de ces ailes, on distingue trois stries qui tendent à rejoindre le nez; l'extrémité des ailes a quant à elle été coiffée d'une prise d'air béante. Sur les flancs, les excroissances verticales et les petites ailes ont été travaillées et arrondies. Enfin, la partie arrière du vaisseau a également été bien modélisée, restent quelques tuyaux faisant office de machinerie visible à créer et à placer.

A l'arrière du vaisseau, les réacteurs ont également été modélisés, mais ils ne sont pas visibles sur la copie d'écran ci-dessous. Patience, de nouvelles prises de vue arriveront bien assez tôt!


04 March 2009

Modélisation 3D en cours: vaisseau

Après avoir passé pas mal de temps sur le développement d'une API 3D combinant C++ et OpenGL (API qui est bien sûr loin d'être terminée), j'ai décidé de me replonger un peu dans l'utilisation de Blender. Après avoir acquis les réflexes de base de ce logiciel très performant, et après avoir lu quelques didacticiels pour débuter, je disposais de l'expérience nécessaire pour commencer à réaliser de véritables projets avec ce merveilleux programme de modélisation 3D, libre et gratuit.

Comme vous avez pu le constater sur ce devblog, j'ai commencé mon apprentissage de Blender par quelques scènes plutôt jolies mais géométriquement simples et/ou faciles à réaliser: le salon (simples quadratiques correctement ombragés et texturés), les trois sphères (simples objets de type UVsphere correctement ombragés et texturés) ou le verre de bière (aisément modélisé en combinant les techniques de Spin et de Subsurf). Il était dès lors opportun de mixer les différentes techniques et fonctionnalités apprises lors de mon étude de Blender dans un nouveau projet de modélisation 3D un peu plus complexe, et qui bien sûr pourrait être utilisé conjointement avec mon API de programmation 3D dans le but d'esquisser un premier jeu vidéo (le but ultime...)!

Ayant en tête depuis quelques temps maintenant la réalisation d'un jeu de type Shoot 'em up (où l'on dirige un vaisseau ou avion et que l'on tire sur les assaillants), je me suis décidé à tenter la modélisation d'un engin à mi-chemin entre l'avion de chasse et la navette spatiale, en tentant de lui donner une petite touche de style propre, ce qui est très difficile pour un débutant en modélisation 3D. Le vaisseau pourra être, une fois terminé, exporté en objet Wavefront et inséré dans un programme grâce à mon API C++/OpenGL.

Le vaisseau a été conçu à partir d'un simple cube, c'est-à-dire le quadratique Cube de base fourni dans Blender (six faces, huit sommets, douze arêtes... vous avez compris). En combinant plusieurs fonctionnalités, j'ai réussi à modéliser une première forme brute de base donnant la silouhette générale du vaisseau. On distingue un nez relativement pointu comportant un cockpit (vitre bleue) via lequel le pilote peut prendre place; deux excroissances verticales à l'arrière qui conduisent à deux réacteurs de puissance moyenne (un gros réacteur circulaire est prévu à l'arrière, au centre des deux réacteurs moyens); deux petites ailes horizontales positionnées sur les excroissances verticales; enfin la partie située au delà du cockpit et quelque peu entassée servira à modéliser une partie visible de la machinerie, un peu comme sur certaines supercars/musclecars où le moteur est partiellement visible.

Pour la réalisation, les techniques suivantes ont été utilisées à partir d'un simple cube:
  • Utilisation des Mesh tools (menu Specials)
    • Subdivision de surface
    • Création de bords doux (Bevel)
    • Adoucissement de surface (Smooth et Subdivide Smooth)
    • etc.
  • Extrusions multiples
  • Shrink/Fatten
  • Outils booléens (Boolean Tools)
  • Transform properties (spécification de coordonnées exactes)
  • Duplicate & mirroring (pour la symétrie du vaisseau, je ne travaille que sur la moitié de ce dernier)
  • Separate tools
  • Face specials
  • Faces join
  • Loop/cut
  • etc.
Vous pourrez suivre sur ce blog l'évolution de la modélisation de ce vaisseau.

Lien: La 3D libre avec Blender, livre que mon père m'a acheté et qui est un très bon outil de travail pour apprendre à modéliser en 3D... avec Blender bien sûr. A conseiller!


31 January 2009

Le verre de bière 3D est de retour !

Voici le grand retour tant attendu du verre de bière 3D, positionné dans un environnement plus coquet mettant davantage en valeur la réfraction de la lumière. Les plus malins auront remarqué qu'il s'agit d'une ancienne scène que j'avais déjà réalisée par le passé, à laquelle j'ai ajouté le fameux verre. De plus, j'ai appliqué une plus belle texture à la table et aux chaises. Au risque d'en décevoir certains, le verre est toujours vide !


15 January 2009

Le verre de bière 3D

Parmi les nombreux objets représentant un parfait exercice de modélisation, le verre est toujours une composition requérant de l'adresse, de la compétence et un peu d'originalité. Bien que la géométrie résultante de cette modélisation soit complexe, cette dernière ne le fut pas tant. En effet les verres, ainsi que tout objet circulaire dont les points sont équitablement et uniformément répartis autour d'un centre, sont faciles à créer grâce aux fonctions de Spin.

Pour créer ce verre, je l'ai tout d'abord dessiné de profil, et de moitié. En regardant le profil depuis une vue du dessus, on aperçoit ce dernier comme étant un simple tracé droit: c'est le rayon d'un cercle! En appliquant un Spin, ce rayon (et donc, ce profil) est dupliqué un nombre déterminé de fois, par rotation autour d'un axe, pour former un objet rond qui peut ensuite être affiné (Subsurf, Smooth).

Reste les caractéristiques de réfraction à spécifier, ceux-ci sont d'ailleurs souvent bien difficiles à définir, et de nombreux essais ont été nécessaires. D'ailleurs, sur ce rendu, j'ai volontairement désactivé les ombres portées, sans quoi je risquais bien de m'arracher les cheveux! Et oui, la modélisation s'apprend pas à pas.

Pour le choix du verre, je n'ai pu m'empêcher de penser à mes nombreux amis amateurs de bonnes bières belges. Pour un prochain rendu, promis, j'essaierai d'y mettre une belle blonde!


06 December 2008

Modélisation 3D d'objets de la vie courante

Afin d'apprendre au mieux à modéliser des objets en trois dimensions, quoi de plus naturel que de chercher à reproduire les choses qui nous entourent, les éléments qui nous fascinent, les phénomènes qui nous interpellent et nous paraissent jolis? Tout artiste dans l'âme reproduit d'abord le monde qui l'entoure, en composant ses dessins des objets qu'il croise le plus souvent du regard. Par la suite, une fois le dessin maîtrisé (qu'il soit fait au crayon ou en image de synthèse), il est plus aisé de s'attaquer à des objets complexes qui sortent de l'imagination de leur créateur. C'est le raisonnement que j'ai souhaité suivre pendant mon apprentissage de la modélisation en 3D avec Blender. Dès lors, je modélise actuellement des scènes ou objets de ma petite vie, toute en cherchant à afficher un certain trait artistique.

Un simple objet ne me suffisait pas, je nourrissais l'envie de reproduire une ambiance, un sentiment, un état. Une lampe de chevet, pourquoi pas? Sa forme se veut plus complexe qu'une table ou des chaises: celle-ci a dû être retravaillée maintes fois à l'aide de la technique de SubSurf (Subdivision surfaces) à partir d'une simple sphère de huit anneaux et huit segments. A force de subdiviser certaines parties et d'en reserrer d'autres, le résultat obtenu est assez joli au regard. Mais le plus important est que l'objet 3D créé est relativement proche de son modèle d'origine: une lampe de chevet posée près de mon lit...




19 November 2008

Modélisation 3D: Trois sphères

Petit à petit, je continue l'apprentissage de la modélisation 3D avec ce merveilleux logiciel qu'est Blender. Dans la scène que j'ai conçue ici, l'accent a été mis sur les propriétés des matériaux, afin de mettre en pratique ce que j'ai pu apprendre ces derniers temps. Une fois de plus, la scène est géométriquement assez simple, mais utilise des paramètres de matériaux et de lumière plus avancés.

Le sol est un plan en deux dimensions, carré, où seule une texture de bois est plaquée. Sur celle-ci est appliqué un faible bump map avec comme source l'image de la texture elle-même (ce n'est pas optimal). Le monde est décoré d'une texture représentant un ciel garni de quelques nuages. Venons-en aux trois sphères, toutes possèdent une géométrie de 64 segments et 64 anneaux, et sont rendues en mode smooth (lisse). La première sphère ne possède qu'une couleur de matériau unie, pour laquelle la réflection miroir est définie au maximum (1.0) et la puissance de Fresnel à 1.5. Ces paramètres suffisent à la sphère pour lui donner son aspect métallique et cet effet miroir. La seconde sphère ne possède également qu'une couleur unie pour laquelle la réfraction transparente, cette fois, est activée. La puissance de Fresnel est à 4.0 et l'indice de réfraction à 1.10. Ceci donne à la sphère un aspect de verre qui était recherché. Ce matériau possède la caractéristique de déformer l'image qui se forme en son centre à cause de l'indice de réfraction de la lumière qui lui est propre. Enfin, la dernière sphère possède une texture représentant du marbre blanc auquel un léger bump map est appliqué (toujours avec la texture d'origine). Avec une lumière bien placée, le résultat donne ce que vous pouvez voir dans cet article (la photo de grande taille se trouve juste en dessous).


16 November 2008

Modélisation 3D: mes débuts



Je suis actuellement entrain d'apprendre à modéliser des scènes en 3D. La 3D est mon vieux rêve, et c'est une étape clé à appréhender obligatoirement dans le cadre du développement de jeux vidéo. Dans un premier temps, les scènes clés, personnages, modèles et objets sont conçus en 3D à l'aide d'un logiciel de modélisation. Ensuite, on reproduit au mieux possible ces scènes clés en 3D temps réel, avec une API (Application Programming Interface) de programmation telle que OpenGL. Grâce à cette API, on développe le moteur physique permettant de mettre les objets 3D en mouvement et de les faire interagir entre eux.

Avant de pouvoir créer un jeu vidéo 3D, je me suis donc attelé à la tâche: j'apprends à modéliser des scènes en trois dimensions à l'aide du logiciel libre Blender. Une fois toutes les bases acquises, je pourrai donner libre cours à ma créativité pour commencer à créer des personnages à part entière, des vaisseaux, des décors, des objets complexes, etc. Et le tout sera par la suite mis en scène à l'aide d'OpenGL.

L'image attachée à cet article présente le fruit de mon apprentissage de la modélisation 3D à l'heure d'aujourd'hui. Cela fait trois semaines que je m'y suis mis environ, et le résultat est, selon moi, vraiment prometteur.

Stay tuned for more 3D pictures!



Lien: Le didacticiel que j'ai suivi jusqu'à présent