Corrections en attentes | Corrections effectuées | Corrections refusées

Historique des corrections effectuées(195)

texte initial correction date

Hum... Intéressant!! Dommage que j'ai aucune connaissance en pour la prog C++, j'orai aimé t'aider. Bonne continuation quand même^^!

Hum... Intéressant!! Dommage que j'ai aucune connaissance pour la prog C++, j'aurais aimé t'aider. Bonne continuation quand même^^!

12-09-2010 21:02:46

Salut TUpac, tu utilise quoi comme fonction ? et avec quels paramètres ? j'ai bien envi de tester smile je te promet rien mais sais t'on jamais.

Salut TUpac, tu utilises quoi comme fonction ? et avec quels paramètres ? j'ai bien envie de tester smile je te promets rien mais sait-on jamais.

12-09-2010 21:02:04

Salut, je suis en train de faire un petit moteur 3d utilisant des VBO avec des Index partagés. Pour ceux qui ne conaissent pas, c'est une méthode pour limiter la quantité de données envoyées à la carte graphique.
Mon soucis est que les coordonées de texture s'appliquent à un vertex et non un index. Du coup j'ai deux faces sur mon cube qui ne sont pas correctes car elle ont deux (1.0, 1.0) ou deux (0.0, 0.0). De plus, les autres faces (qui sont texturées) sont inversée une face sur deux.
Une solution m'est venue imédiatement, c'est d'ajouter des vertex pour que les triangles ne partagent plus leurs vertex, mais ça augmente la quantité de données.
Je file mes buffers pour mon cube déssiné avec des triangles :

Code:

GLfloat CubePosData[] = { // Les vertex de 0 à 7 avec le logo des index -1.0f,-1.0f, 1.0f, -1.0f,-1.0f,-1.0f, -1.0f, 1.0f,-1.0f, -1.0f, 1.0f, 1.0f, // 7----3 // /| /| 1.0f,-1.0f, 1.0f, // 6-4--2-0 1.0f,-1.0f,-1.0f, // |/ |/ 1.0f, 1.0f,-1.0f, // 5-----1 1.0f, 1.0f, 1.0f,}; GLubyte CubeIndexData[] = { // les index 1,0,2, 3,2,0, 5,6,4, 7,4,6, 7,3,4, 0,4,3, 6,1,2, 5,1,6, 3,7,2, 6,2,7, 1,5,0, 4,0,5,}; GLfloat CubeCoordsData[] = { // Coordonées dans le même ordre que les vertex 0.0f,0.0f, 1.0f,0.0f, 1.0f,1.0f, 0.0f,1.0f, 1.0f,0.0f, 0.0f,0.0f, 0.0f,1.0f, 1.0f,1.0f, 1.0f,0.0f, 0.0f,1.0f, 1.0f,0.0f, 1.0f,0.0f, 0.0f,0.0f, 0.0f,1.0f, 1.0f,1.0f, 1.0f,0.0f,};

Merci d'avance pour vos conseils.

Salut, je suis en train de faire un petit moteur 3d utilisant des VBO avec des Index partagés. Pour ceux qui ne connaissent pas, c'est une méthode pour limiter la quantité de données envoyées à la carte graphique.
Mon soucis est que les coordonnées de texture s'appliquent à un vertex et non un index. Du coup j'ai deux faces sur mon cube qui ne sont pas correctes car elle ont deux (1.0, 1.0) ou deux (0.0, 0.0). De plus, les autres faces (qui sont texturées) sont inversée une face sur deux.
Une solution m'est venue immédiatement, c'est d'ajouter des vertex pour que les triangles ne partagent plus leurs vertex, mais ça augmente la quantité de données.
Je file mes buffers pour mon cube dessiné avec des triangles :

Code:

GLfloat CubePosData[] = { // Les vertex de 0 à 7 avec le logo des index
   -1.0f,-1.0f, 1.0f,
   -1.0f,-1.0f,-1.0f,
   -1.0f, 1.0f,-1.0f,    
   -1.0f, 1.0f, 1.0f, //   7----3
                      //  /|   /|
    1.0f,-1.0f, 1.0f, // 6-4--2-0
    1.0f,-1.0f,-1.0f, // |/    |/
    1.0f, 1.0f,-1.0f, // 5-----1
    1.0f, 1.0f, 1.0f,};

GLubyte CubeIndexData[] = { // les index
    1,0,2,
    3,2,0,
    5,6,4,
    7,4,6,
    7,3,4,
    0,4,3,
    6,1,2,
    5,1,6,
    3,7,2,
    6,2,7,
    1,5,0,
    4,0,5,};

GLfloat CubeCoordsData[] = { // Coordonnées dans le même ordre que les vertex
    0.0f,0.0f, 1.0f,0.0f, 1.0f,1.0f, 0.0f,1.0f,
    1.0f,0.0f, 0.0f,0.0f, 0.0f,1.0f, 1.0f,1.0f,
    1.0f,0.0f, 0.0f,1.0f, 1.0f,0.0f, 1.0f,0.0f,
    0.0f,0.0f, 0.0f,1.0f, 1.0f,1.0f, 1.0f,0.0f,};

Merci d'avance pour vos conseils.

12-09-2010 21:00:54

sa dépend si tu utilise la physique ou pas, et encore, pasque globalement si tu utilise un systeme de frame ton perso ne change pas de place enfin juste les polygone qui "bouge"
perso c'est le plus simple pour commencer, après oui c'est sur il vaut mieux faire une détection du sols, tout dépend de ton niveaux

ça dépend si tu utilises la physique ou pas, et encore, parce que globalement si tu utilises un système de frame ton perso ne change pas de place enfin juste les polygones qui "bougent"
perso c'est le plus simple pour commencer, après oui c'est sûr il vaut mieux faire une détection du sol, tout dépend de ton niveau

01-09-2010 21:11:07

il faut bien que tu utilise PressedDown mais remettre "sauter" a false seulement quand ton animation "sauter" est finie
soit tu définie le temps qu'il mais, sait tu fix un numero de frame utiliser par tout tes perso, une sorte de norme, et quand l'animation arrive a tell frame, tu stop "sauter"

il faut bien que tu utilises PressedDown mais remettre "sauter" à false seulement quand ton animation "sauter" est finie
soit tu définis le temps qu'il met, soit tu fixes un numéro de frame utilisé par tout tes perso, une sorte de norme, et quand l'animation arrive à telle frame, tu stop "sauter"

01-09-2010 21:10:23

bon commençons, le main .. oui c'est vrais c'est déjà un soucis pour les system portable, mais il suffie d'utiliser #if defined ...
en rêgle général on utilise sa ... avec des variante mais c'est le même principe

Code c++ :


#if (defined WIN32 || defined WIN64) && !defined SDL_DEVICE
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance, LPSTR lpCmdLine,int nCmdShow)
#else
int main(int argc, char **argv)
#endif



après j'ai vu que tu initialises la fenêtre win32 dans la main, bon je pense que ce sera que temporaire mais go -> device spécifique ... enfin moi je vois ça comme ça smile
géométrie c'est pas trop mal, mais j'aurais pas tout à fait fait comme cela ... je suis pas sûr que t'aies bien compris, c'est peur-être ta vision des choses je n'ai rien contre wink

Code c++ :


struct Mesh
{
     float *vertices;
     float *indices;
     float *TCoord;
     float *normales;
};
class Geometry
{
     public:
         Mesh* makeSphere(flaot radiusX, float radiusY, unsigned int countX, unsigned int countY); // un peut compliqué peut-être pour un simple rendu "raytracing", mais si tu veux partir sur un moteur ...
         Mesh* makeCube(Position3f);
};


pour le reste rien à dire mais
- 1: pourquoi il n'existe pas de Node ? qui relie Sphere, Lumiere, Camera ? tu n'aurais donc plus besoin de faire un array pour chaque type ....

example:

Code c++ :


class A
{
      A(){}
      virtual int function() { return 0; }
}
class B : public A
{
      A(){}
      virtual int function() { return 1; }
}
int main()
{
      A *test = new B();
      printf("A return: %d", test->fuction());
}


resulta ...

Code:

A return: 1

donc si tu fais dériver Sphère, Lumière, Camera d'une classe plus "haute"
tu n'as besoin que d'un seul array pour stocker plusieurs types de "node" différents ...

ps 1: pas très pratique de coder sur le forum wink
ps 2: je pense que tu as encore quelque difficultés avec le poo, c'est pas facile pour beaucoup de personnes, mais qu'est-ce que c'est bien tongue
         donc si tu veux je peux te faire une base de ma base de "moteur", du moins pour le device et l'architecture ? mais ne tard pas trop, je reprends les cours jeudi et je serai interne toute la semaine

bon commençons, le main .. oui c'est vrai c'est déjà un soucis pour les systèmes portables, mais il suffit d'utiliser #if defined ...
en règle générale on utilise ça ... avec des variantes mais c'est le même principe

Code c++ :


#if (defined WIN32 || defined WIN64) && !defined SDL_DEVICE
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance, LPSTR lpCmdLine,int nCmdShow)
#else
int main(int argc, char **argv)
#endif



après j'ai vu que tu initialises la fenêtre win32 dans la main, bon je pense que ce sera que temporaire mais go -> device spécifique ... enfin moi je vois ça comme ça smile
géométrie c'est pas trop mal, mais j'aurais pas tout à fait fait comme cela ... je suis pas sûr que t'aies bien compris, c'est peur-être ta vision des choses je n'ai rien contre wink

Code c++ :


struct Mesh
{
     float *vertices;
     float *indices;
     float *TCoord;
     float *normales;
};
class Geometry
{
     public:
         Mesh* makeSphere(flaot radiusX, float radiusY, unsigned int countX, unsigned int countY); // un peut compliqué peut-être pour un simple rendu "raytracing", mais si tu veux partir sur un moteur ...
         Mesh* makeCube(Position3f);
};


pour le reste rien à dire mais
- 1: pourquoi il n'existe pas de Node ? qui relie Sphere, Lumiere, Camera ? tu n'aurais donc plus besoin de faire un array pour chaque type ....

example:

Code c++ :


class A
{
      A(){}
      virtual int function() { return 0; }
}
class B : public A
{
      A(){}
      virtual int function() { return 1; }
}
int main()
{
      A *test = new B();
      printf("A return: %d", test->fuction());
}


resulta ...

Code:

A return: 1

donc si tu fais dériver Sphère, Lumière, Camera d'une classe plus "haute"
tu n'as besoin que d'un seul array pour stocker plusieurs types de "node" différents ...

ps 1: pas très pratique de coder sur le forum wink
ps 2: je pense que tu as encore quelque difficultés avec le poo, c'est pas facile pour beaucoup de personnes, mais qu'est-ce que c'est bien tongue
         donc si tu veux je peux te faire une base de ma base de "moteur", du moins pour le device et l'architecture ? mais ne tard pas trop, je reprends les cours jeudi et je serai interne toute la semaine

01-09-2010 21:08:20

Merci pour l'exemple de hiérarchie wink  je devrais arriver à faire quelque chose de "propre" d'ici quelque jours.
Sinon pour les textures, j'suis un fou moi j'avais pas vu que c'était expliquer dans le tuto http://www.massal.net/article/raytrace/page3.html , en fait le tuto est en 6 parties, et il décrit les principales notion à savoir, mais n'est pas optimisé pour du temps reel. donc ça promet tout ça smile

ps: tu revient vendredi ?

Merci pour l'exemple de hiérarchie wink  je devrais arriver à faire quelque chose de "propre" d'ici quelque jours.
Sinon pour les textures, j'suis un fou moi j'avais pas vu que c'était expliqué dans le tuto http://www.massal.net/article/raytrace/page3.html , en fait le tuto est en 6 parties, et il décrit les principales notions à savoir, mais n'est pas optimisé pour du temps réel. donc ça promet tout ça smile

ps: tu reviens vendredi ?

01-09-2010 21:07:20

bon voila le minimal, sans les fonctions de rendue/raytracing et autre, j'ai pas euh le temps, et puis sa na plus d'intérais si je fait tout wink
http://www.mediafire.com/?1fb1zqyyv520c1q

mais pour l'architecture sa devrait déjà t'aider je pensse, ceci dit ... comme tu le sais je suis sous linux, donc ... a toi de mettre les otions de compilation smile
of et y a des commentaire un peut partout ... si sa peut t'aider ... j'en sais rien ..., tu a juste beusoin de rajouter sdl

bon voilà le minimal, sans les fonctions de rendu/raytracing et autre, j'ai pas euh le temps, et puis ça n'a plus d'intérêt si je fais tout wink
http://www.mediafire.com/?1fb1zqyyv520c1q

mais pour l'architecture ça devrait déjà t'aider je pense, ceci dit ... comme tu le sais je suis sous linux, donc ... à toi de mettre les options de compilation smile
of et y a des commentaires un peut partout ... si ça peut t'aider ... j'en sais rien ..., tu as juste besoin de rajouter sdl

01-09-2010 21:06:29

bon alors pour les textures c'est pas très compliquer opengl fait casiment tout
sa se fait en deux étapes:
allocation mémoire en vram et création d'une id pour la texture
utilisation de la texture a pellant l'id ...

bon je supose que tu sais déjà comme est les principe d'une texture ? enfin ... c'est pas compliquer tu crée un tableau "1D", ou tu y stocke les donner, de dimention width*height+1
pour se localiser, la position = x+height*y plus ou moin, faut prendre uassi en compte que tu utilise 3 ou 4 "channel" on va dire le format ( 8, 16, 24, 32 restpectivement, noir/blanc, noir/blanc/alpha, rgb oou yuv, argb ou rgba) donc ton tableau est égales a width*height*(format/8)+1, c'est toujours pareil pour se localiser (x+hieght*y)*(format/8), et pour retrouver les couleurs tu fait juste position+x ou x < format/8, pas trop compliquer jusque la ? wink
c'est juste la partie software ( chargement ) après pour passer a opengl:

Code c++ :


            glEnable(GL_TEXTURE_2D);
            glGenTextures (1, & gl); // gl est de type GLuint soit l'id de la texture
            glBindTexture (GL_TEXTURE_2D, gl);
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); // option a la screunieugnieuh sa marche bien dans mais example donc ...
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
            glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
            glDisable(GL_TEXTURE_2D);
            //spécification suivant le format
            switch(format)
            {
                case TXFMT_LUMINANCE:
                    glTexImage2D(GL_TEXTURE_2D, 0, fmt, original.width, original.height, 0, GL_LUMINANCE, GL_UNSIGNED_BYTE, buffer);
                break;
                case TXFMT_LUMINANCE_ALPHA:
                    glTexImage2D(GL_TEXTURE_2D, 0, fmt, original.width, original.height, 0, GL_LUMINANCE_ALPHA, GL_UNSIGNED_BYTE, buffer);
                break;
                case TXFMT_RGB:
                    glTexImage2D(GL_TEXTURE_2D, 0, fmt, original.width, original.height, 0, GL_RGB, GL_UNSIGNED_BYTE, buffer);
                break;
                case TXFMT_RGBA:
                    glTexImage2D(GL_TEXTURE_2D, 0, fmt, original.width, original.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, buffer);
                break;
            }


supression de la texture:

Code c++ :


            !glIsTexture(gl)) ? glDeleteTextures(1,&gl) : void(); // plus rapid qu'un if, il parais que sa utilise des instruction asm ...
            gl = 0;


et l'utilisation:

Code c++ :


                    glEnable(GL_TEXTURE_2D);
                    glBindTexture(GL_TEXTURE_2D, tex->glTexture());
                    //rendue de l'object
                    glDisable(GL_TEXTURE_2D);


le probleme c'est qu'il faut spésifier qu'elle endroi de la texture sera "plaquer" sur telle polygone, pour ça on utilise << glTexCoord3i(0,1,0); >> ou 0 c'est le bord supérieur haut ou gauche et 1 le bord inférieur ou droit

c'est bon j'y suis pas aller trop fort jusque la ? smile

sinon avec un peut de chance je ne suis pas dans le même internat que celui de l'ans dernier ou je ne captais pas la wifi, mais la rumeur cour que le pions qui avais la wifi les désactiver ... mais tkt c'est le premier truc que je teste yikes

ps: désoler pour le "-1" je voulais faire une énumération mais je suis partie dans un discour wink
oh et sa ne fait que 3semain que je bosse sous opengl donc je ne connais pas tout non plus ... (depuis le sleekthink)

edit: je poste le code demain ... et je feurais un effort, les sources en "français" + doc/commentaire ...

bon alors pour les textures c'est pas très compliqué opengl fait quasiment tout
ça se fait en deux étapes:
allocation mémoire en vram et création d'une id pour la texture
utilisation de la texture appelant l'id ...

bon je suppose que tu sais déjà comme est les principe d'une texture ? enfin ... c'est pas compliquer tu crées un tableau "1D", où tu stockes les données, de dimension width*height+1
pour se localiser, la position = x+height*y plus ou moins, faut prendre aussi en compte que tu utilises 3 ou 4 "channel" on va dire le format ( 8, 16, 24, 32 respectivement, noir/blanc, noir/blanc/alpha, rgb oou yuv, argb ou rgba) donc ton tableau est égal à width*height*(format/8)+1, c'est toujours pareil pour se localiser (x+hieght*y)*(format/8), et pour retrouver les couleurs tu fais juste position+x ou x < format/8, pas trop compliqué jusque là ? wink
c'est juste la partie software ( chargement ) après pour passer à opengl:

Code c++ :


            glEnable(GL_TEXTURE_2D);
            glGenTextures (1, & gl); // gl est de type GLuint soit l'id de la texture
            glBindTexture (GL_TEXTURE_2D, gl);
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); // option a la screunieugnieuh ça marche bien dans mes exemples donc ...
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
            glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
            glDisable(GL_TEXTURE_2D);
            //spécification suivant le format
            switch(format)
            {
                case TXFMT_LUMINANCE:
                    glTexImage2D(GL_TEXTURE_2D, 0, fmt, original.width, original.height, 0, GL_LUMINANCE, GL_UNSIGNED_BYTE, buffer);
                break;
                case TXFMT_LUMINANCE_ALPHA:
                    glTexImage2D(GL_TEXTURE_2D, 0, fmt, original.width, original.height, 0, GL_LUMINANCE_ALPHA, GL_UNSIGNED_BYTE, buffer);
                break;
                case TXFMT_RGB:
                    glTexImage2D(GL_TEXTURE_2D, 0, fmt, original.width, original.height, 0, GL_RGB, GL_UNSIGNED_BYTE, buffer);
                break;
                case TXFMT_RGBA:
                    glTexImage2D(GL_TEXTURE_2D, 0, fmt, original.width, original.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, buffer);
                break;
            }


suppression de la texture:

Code c++ :


            !glIsTexture(gl)) ? glDeleteTextures(1,&gl) : void(); // plus rapide qu'un if, il paraît que ça utilise des instructions asm ...
            gl = 0;


et l'utilisation:

Code c++ :


                    glEnable(GL_TEXTURE_2D);
                    glBindTexture(GL_TEXTURE_2D, tex->glTexture());
                    //rendue de l'object
                    glDisable(GL_TEXTURE_2D);


le problème c'est qu'il faut spécifier quel endroit de la texture sera "plaqué" sur tel polygone, pour ça on utilise << glTexCoord3i(0,1,0); >> ou 0 c'est le bord supérieur haut ou gauche et 1 le bord inférieur ou droit

c'est bon j'y suis pas aller trop fort jusque là ? smile

sinon avec un peu de chance je ne suis pas dans le même internat que celui de l'an dernier où je ne captais pas la wifi, mais la rumeur court que le pions qui avaient la wifi la désactivaient ... mais t'inquiète c'est le premier truc que je teste yikes

ps: désolé pour le "-1" je voulais faire une énumération mais je suis partie dans un discours wink
oh et ça ne fait que 3 semaines que je bosse sous opengl donc je ne connais pas tout non plus ... (depuis le sleekthink)

edit: je poste le code demain ... et je ferai un effort, les sources en "français" + doc/commentaire ...

01-09-2010 21:05:15

Magun Ecris:

après j'ai vue que tu initialise la fenètre win32 dans la main, bon je pensse que se sera que temporaire mais go -> device spéciafique ... enfin moi je voie sa comme ça smile


oui je vais le faire, je n'ai jamais utiliser directement les fenêtre d'un os, je suis toujours passé par des lib, donc faut que je trouve le temps de me documenter et après je rangerais tous ça wink

Magun Ecris:

geometri c'est pas trop mal, mais j'aurais pas tout a fait, fait comme cela ... je suis pas sur que t'est bien comprit, c'est peur-être ta vision des chose je n'est rien contre wink


non c'est pas ma vision des choses(à vrai dire j'ai justement du mal à m'en faire une), j'ai juste fait au plus direct, et au plus simple, mais c'est clair que ça sera à faire part la suite, il faut dire aussi que je ne suis pas expérimenté en 3d non plus lol, donc il y a des truc que je ne comprend pas encore, là par exemple pour ajouter une texture au raytracer, je n'ai pour l'instant aucune idée de comment procéder, donc j'apprend au fur et à mesure aussi wink

Magun Ecris:

pour le reste rien a dire mais
- 1: pourquoi il n'existe pas de Node ? qui relie Sphere, Lumiere, Camera ? tu n'aurais donc plus beusoin de faire un array pour chaque type ....


j'ai envi de dire +1, faut que je fasse ça.... smile

Magun Ecris:

ps 2: je pensse que tu a encore quelque dificulter avec le poo, c'est pas facil pour beaucoup de personne, mais quesque c'est bien tongue


+1, c'est pas facile mais c'est pas difficile non plus, je dirai que ça peut être complexe smile

Magun Ecris:

donc si tu veut je peut te faire une base de ma base de "moteur", du moin pour le device et l'architecture ? mais ne tard pas trop, je reprend les cours jeudi et je serait interne toute la semaine


bein je veux bien, tout d'aide est la bien venue wink , mais pas si ça te prend trop de temps, faut que tu profite des vacances smile sinon t'a pas internet à ton internât ?
en tout cas merci pour les critiques, je peut pas tout corriger d'un coup(need doc), mais je prend bien en compte tout ce que tu dit wink

Magun Ecris:

après j'ai vue que tu initialise la fenètre win32 dans la main, bon je pensse que se sera que temporaire mais go -> device spéciafique ... enfin moi je voie sa comme ça smile


oui je vais le faire, je n'ai jamais utilisé directement les fenêtres d'un os, je suis toujours passé par des lib, donc faut que je trouve le temps de me documenter et après je rangerai tous ça wink

Magun Ecris:

geometri c'est pas trop mal, mais j'aurais pas tout a fait, fait comme cela ... je suis pas sur que t'est bien comprit, c'est peur-être ta vision des chose je n'est rien contre wink


non c'est pas ma vision des choses(à vrai dire j'ai justement du mal à m'en faire une), j'ai juste fait au plus direct, et au plus simple, mais c'est clair que ça sera à faire par la suite, il faut dire aussi que je ne suis pas expérimenté en 3d non plus lol, donc il y a des truc que je ne comprends pas encore, là par exemple pour ajouter une texture au raytracer, je n'ai pour l'instant aucune idée de comment procéder, donc j'apprends au fur et à mesure aussi wink

Magun Ecris:

pour le reste rien a dire mais
- 1: pourquoi il n'existe pas de Node ? qui relie Sphere, Lumiere, Camera ? tu n'aurais donc plus beusoin de faire un array pour chaque type ....


j'ai envie de dire +1, faut que je fasse ça.... smile

Magun Ecris:

ps 2: je pensse que tu a encore quelque dificulter avec le poo, c'est pas facil pour beaucoup de personne, mais quesque c'est bien tongue


+1, c'est pas facile mais c'est pas difficile non plus, je dirai que ça peut être complexe smile

Magun Ecris:

donc si tu veut je peut te faire une base de ma base de "moteur", du moin pour le device et l'architecture ? mais ne tard pas trop, je reprend les cours jeudi et je serait interne toute la semaine


bein je veux bien, tout aide est la bienvenue wink , mais pas si ça te prend trop de temps, faut que tu profites des vacances smile sinon t'as pas internet à ton internât ?
en tout cas merci pour les critiques, je peux pas tout corriger d'un coup(need doc), mais je prends bien en compte tout ce que tu dis wink

01-09-2010 21:00:07
Pages: 1 … 10 11 12 13 14 … 20

Options Liens officiels Caractéristiques Statistiques Communauté
Corrections
irrlicht
irrklang
irredit
irrxml
xhtml 1.0
css 2.1
Propulsé par FluxBB
Traduit par FluxBB.fr
883 membres
1429 sujets
11121 messages
Dernier membre inscrit: Saidov17
127 invités en ligne
Aucun membre connecté
RSS Feed