![]() |
|||
|
Bienvenue sur le forum de Grospixels : [ S'Enregistrer ] Déjà inscrit ? [ Connexion ] |
|||
|
|||
| Rappel des 10 derniers messages du topic (les plus récents en haut) | |
| Mew Pixel de bonne taille ![]() |
Ok merci |
| RainMakeR Chef de Rubrique Nécrologique |
pour pas t'embeter au debut et pas rentrer dans les details, choppe director y'a un environnement 3d basique que tu peux utiliser et coder ton moteur viteuf
[] |
| Wild_Cat Anarchy in the UK ![]() |
Bon... La théorie du rendering 3D est un sujet très complexe, que je ne maîtrise pas assez bien pour écrire un article de 15 pages dessus, alors en attendant, tu peux commencer ici. Sinon, tu peux aussi aller chez id Software télécharger les sources de Wolfenstein 3D, Doom, et Quake 1 à 3. Bon appétit.
En gros, ce que fait un moteur 3D, c'est calculer à chaque image une projection sur un plan (l'écran) d'une partie d'un espace tridimensionnel, généralement définie par une pyramide tronquée ou un parallélépipède. Ca se fait principalement avec des calculs matriciels. Pour l'accélération des calculs, c'est simple à comprendre si tu sais comment fonctionne un ordinateur. Le processeur ne calcule pas, il exécute des instructions. Ce faisant, il communique avec le reste du hardware de l'ordinateur (sans quoi il ne servirait pas à grand-chose: même les lectures/écritures en RAM sont des communications avec le hard). Quand tu appelles une fonction OpenGL, le processeur envoie des instructions à la carte graphique, qui se charge de les exécuter. C'est exactement la même chose que quand tu utilises une calculatrice: tu lui donnes l'opération, et elle l'effectue à ta place. Oh, et très honnêtement, coder un renderer 3D en partant de zéro est un travail long, compliqué, chiant et inutile. Si tu veux programmer des jeux, commence par apprendre à programmer, à designer des programmes (une toute autre paire de manches), et enfin à utiliser quelques API et frameworks "standard", comme SDL. (notez -- fait suffisamment rare pour qu'il mérite d'être signalé -- que ce post tient entièrement sur votre écran!) |
| Mew Pixel de bonne taille ![]() |
Tu t'es fait mal ? |
| mickmils Gros pixel ![]() |
Aïe. |
| Mew Pixel de bonne taille ![]() |
J'imagine que c'est possible de créer un moteur 3d sans lib graphique, mais à ce moment là, comment je devrais accéder à l'écran ? par vesa pour que mon moteur soit multi-plateforme ou autre chose ? Mais si je voudrais le faire que pour windows, je devrais utiliser les API de windows ? Bien sûr il faudra que je créé tout: mouvement de caméra, rotation des objets, etc. Je m'y connais un peu en matrice et en math, mais j'ai du mal à visualiser comment je peux calculer un objet 3d sur une surface 2d(écran) De plus, il y a les lumière, j'imagine que en quelque part je devrais garder mes objets en mémoire dans une structure pour apliquer la lumière(augmenter la luminosité des pixels) tout en calculant les faces cachés, car il est inutile qu'une face caché soit illuminé .. Encore une chose, concernant les cartes graphiques. J'ai de la difficulté à visualiser comment la carte peux accélérer les calculs ? quand on utilise opengl par exemple, c'est le cpu qui calcule notre programme, comment le cpu sait ce qu'il doit calculer et ce qu'il doit envoyer au gpu ? Merci |
Forum www.grospixels.com (© 2011-2019 Grospixels)





