FAQ GameMaker 3D
Traduit et modifié par daminetreg pour:
http://www.gamemaker.fr/
http://www.lecbna.org/
Ecrite par:
http://www.gamemaker.nl
http://forums.gamemaker.nl

(c) 2006-2007 - Le CBNA

Bienvenue sur la FAQ 3d. Elle est traduite du site officiel et améliorée sans cesse par Le CBNA pour qu’enfin les utilisateurs Francophone puissent avoir accès aux connaissances des techniques de 3d pour GameMaker. Nous la mettons à jour sans cesse pour que vous puissiez créer de merveilleux jeux, que nous nous ferons une joie de tester. La Communauté Francophone sous GameMaker vous souhaite une bonne utilisation de cet outil et vous enjoint à le faire découvrir. Nous espérons que vous y trouverez des réponses, sinon vous pouvez toujours passer sur notre forum : http://forum.lecbna.org/. La communauté se fera une joie de vous aider. Bonne chance pour tous vos projets…

C’est en regardant qu’on apprends et en aidant qu’on comprends


    Rechercher    Auteurs:  ThatGamesGuy - shad0w - daminetreg - [TheDarkTiger] - Gab666

Question:
Pourquoi mon sol est-il si sombre?
Réponse:
Le problème est que les lumières fonctionnent de deux façons différentes, qui dépendent du fait que vous ayez réglé sur true ou sur false d3d_set_shading().

    * d3d_set_shading(true)
    En résulte l'éclairage par vecteur.
    * d3d_set_shading(false)
    En résule l'ombrage par polygones (plus fort que les vecteurs).

Dans les deux cas, la distance entre les vertex et la source de lumière est ce qui détermine la force de l'ombre projeté.
Evidemment, si vous réalisez vos sols comme Mark l'a fait fait dans son tutoriel, vous vous dirigez vers un problème, car le ceiling va éclairer beaucoup (si la lumière est proche d'un coin) ou très peu (lorsque la lumière est au centre). Pour résoudre cela, vous devrez casser le sol et les ceilling dans les rooms. Cependant, cela va lagger si vous ne le faites pas correctement (soit vous faites des objets séparés, soit vous n'usez pas de modèles)

Cliquez ici pour télécharger un exemple de floor/ceiling tiles, ou regardez les codes ci-dessous.

Si vous insistez à créer le sol en tant qu'objets séparés, s'il vous plaît lisez:"Comment puis-je optimiser mon jeu?" pour plus de détails sur comment génerer des modèles basés sur les objets.
(Code):
var a,b,nz,width,height,repx,repy,xtexrep,ytexrep;
//Ces deux effets: Vitesse et qualité de l'effet
repx=30;
repy=30;
//Coordonnées des textures
xtexrep=40;
ytexrep=40;
//position/dimensions du sol
x=0;
y=0;
z=0;
width=room_width;
height=room_height;
ceiling=false;//Cela va déterminé la génération en mode normal
//N'éditez pas le code suivant
model_floor=d3d_model_create();
a=0;
b=0;
repeat repy+1
{
d3d_model_primitive_begin(model_floor,pr_trianglestrip);
repeat repx+1
{
if (ceiling=true)
{
d3d_model_vertex_normal_texture(model_floor,x+a/repx*width,y+b/repy*height,z,
0,0,-1,
a/repx*xtexrep,b/repy*ytexrep);
d3d_model_vertex_normal_texture(model_floor,x+a/repx*width,y+(b+1)/repy*height,z,
0,0,-1,
a/repx*xtexrep,(b+1)/repy*ytexrep);
}
else
{
d3d_model_vertex_normal_texture(model_floor,x+a/repx*width,y+(b+1)/repy*height,z,
0,0,1,
a/repx*xtexrep,(b+1)/repy*ytexrep);
d3d_model_vertex_normal_texture(model_floor,x+a/repx*width,y+b/repy*height,z,
0,0,1,
a/repx*xtexrep,b/repy*ytexrep);
}
a+=1;
}
d3d_model_primitive_end(model_floor);
a=0;
b+=1;
}


Il ne vous suffit plus que de l'afficher. (;

Topics:
Point lights tutorial par That Games Guy

  Questions Générales:
 
 

FAQ

 
Comment fonctionne la FAQ?
Pourquoi la FAQ est-elle violette?!
 

La 3d en général:

 
Quelle est la différence entre 2d et 3d?
Qu'est une Skybox ou un Skydome?
Qu'est ce qu'un panneau ou plan?
Où puis-je trouver plus d'informations sur la 3d?
Qu'est ce qu'un polygone ?
 

Capacités de GameMaker

 
Quels types de jeux en 3d peut réaliser GameMaker avec ses fonctions pré - conçues?
 

Créer des jeux en 3d:

 
Par quoi commencer?
Qu'est ce que 'z'?
Qu'est ce que sont les collisions?
Comment puis-je optimiser mon jeu?
  Questions entre versions 5 et 6:  
Ais-je besoin d'être enregistré GM6.x pour utiliser les fonctions 3d pré-conçues?
Quels attributs seront ajoutés dans la prochaine version de GM?
Quand sortira la prochaine version de GM?
Où puis-je faire un rapport d'erreur? Où puis-je suggérer de nouvelles fonctions pour GM?
  Questions sur l'enregistrement:  
Ais-je besoin d'être enregistré GM6.x pour utiliser les fonctions 3d pré-conçues?
  Questions sur les fichiers d'aide:  
Où puis-je trouver des codes pour la 3d? Où puis-je trouver des fichiers d'aide pour créer des jeux 3d?
  Questions sur les lumières:
 
Comment ajouter une lumière ambiante?
Pourquoi mon sol est-il si sombre?
Comment fonctionnent les lumières par point et directionnelles?
  Questions sur les Graphismes:
 
Est-il possible d'ajouter des effets de particule en 3d?
Comment afficher des choses sur l'écran? Qu'est ce qu'une projection orthographique? Comment puis-je faire un Hud en 2d?
Comment utiliser plusieurs vue en 3d? Comment réaliser un écran splitté?
     
Comment faire une vue suivant la souris?
Comment créer des FPS?
Comment ajouter des tirs à mon jeu?
Comment faire pour donner une rotation à mes objets/formes en 3d?
Comment faire pointer mon arme vers la souris?
Où puis-je trouver des ressources graphiques pour mon jeu en 3d?
     
Comment puis-je convertir les coordonées 3d en 2d et vice versa?
Comment ajouter une lumière ambiante?
Comment ajouter une Skybox ou un Skydome?
Comment charger des modèles 3d dans GM?
     
Quel Modeleur 3d recommandez vous?
Comment puis-je créer des ombres?
Comment créer un panneau ou plan? (Qui fait face à la caméra)
Comment éviter l'étirement ou le clignotement des murs?
  Questions sur les modèles:
 
Comment charger des modèles 3d dans GM?
Comment puis-je faire pointer mon arme là où je le désire?
Quels types de modèles sont compatibles avec GM?
Comment charger un modèle exporté par Marzipan?
  Questions sur les mouvements:
 
Comment gérer l'inclinaison du terrain? Comment obtenir l'angle entre deux points?
Comment faire sauter mon personnage?
  Questions sur les librairies:
 
Où puis-je trouver les librairies d'action 3d?