begin process at 2012 05 30 13:39:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

OpenGL

 > 

texturer une sphere


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

texturer une sphere

vendredi 28 avril 2006 à 18:23:51 | texturer une sphere

aymardhb9

Bonjour !!
je suis debutant en openGL et j'essaie de mettre une texture sur une sphere que j'ai dessiné avec le code ci-dessous . J'aimerais que vous m'expliquiez  le bout de code qui me permetrais de texturer la sphere . Merci d'avance

void Shape::draw_sphere()
{
    float a,b,r,y,r2,y2;
    int n=50;
     // glColor3f( 1.0f, 1.0f, 6.0f);
   // glScalef(10.0,-90.0,-10.0);
    glBegin(GL_TRIANGLE_FAN);
    //glBegin(GL_POINTS);
    for(a=-M_PI/2;a<=M_PI/2;a+=M_PI/n)
        for(b=0;b<=2*M_PI;b+=2*M_PI/n){
                r=cos(a);
                y=sin(a);
                glVertex3f(r*cos(b),r*sin(b),y); //ne pas mettre le 2ème vertex
                r2=cos(a+M_PI/n);                //pr avoir un nuage de points
                y2=sin(a+M_PI/n);
                glVertex3f(r2*cos(b),r2*sin(b),y2);
          
        }
    glEnd();
}
samedi 29 avril 2006 à 00:41:51 | Re : texturer une sphere

luhtor

Bas ca dépend de ta texture. Sous quel forme se présente elle ?
Sinon, il me semble que ya un truc pour calculer les coordonnées de textures automatiquement pour une sphère. Mais j'ai pas le bouquin sous la main.

Si ta texture est carré ou rectangulaire. Je pense avoir une solution.
Tu ne considères que les parallèles de ta sphère. Ca te fait donc une liste de cercle les uns sur les autres mais de périmètre différent.
L'équateur de ton cercle sera la ligne au milieu de ta texture carré. Donc connaitre les coordonnées de texture des points de l'équation, c'est évident. Une histoire de longueur de la texture divisé le périmètre.
Mais tu fais ca pour tous les cercles parallèles. Tu as compris ?


samedi 29 avril 2006 à 04:09:24 | Re : texturer une sphere

aymardhb9

En fait , je suis coincé pr les coordonnées textures , je ne sais pas si il faut utiliser les trucs du genre

glBindTexture(GL_TEXTURE_2D,...);
glTexCoord2f(...) ;

Et par rapport aux explication , j'ai justement construit ma sphère en  le modélisant comme des cercles successifs  , mais ma texture est justement  un carré et je ne sais pas comment faire en sorte qu'elle recouvre entièrement  la sphère  avec les coordonnées textures .
samedi 29 avril 2006 à 12:05:57 | Re : texturer une sphere

luhtor

Tu utilises glBindTexture pour changer de texture.
glTexCoord2f sert a définir les coordonnées de texture des prochains vertex.
Donc toi, il faudra que tu appel glTexCoord2f entre chaque vertex.
samedi 29 avril 2006 à 13:16:52 | Re : texturer une sphere

gagah1

Membre Club
La librairie GLU propose des fonctions pour dessiner une sphère:
gluNewQuadric( );
gluSphere(...);


Et pour ajouter des textures:
glBindTexture(...);
gluQuadricTexture(...);



Cette discussion est classée dans : sin, cos, sphere, r2, texturer


Répondre à ce message

Sujets en rapport avec ce message

approximation cos sin tan ... [ par mat74 ] salut je cherche des algorithmes pr calculer cos , sin , tan et leur inverse . Si vous en connaissez simple ou compliqués tt m'interesse.si vs avez 1 Trigonometrie...... sin cos et tan [ par Xs ] bijour, comment traduire en c++ la fonction :sin (alpha) = AB/BCou Alpha est donné ou alors, seconde solution, on fait AB / BC. Mais AB ou BC est inco probleme de rotation avec les matrices [ par Mick7 ] bon voila j'ai voulu refaire une partie de mon code proprement, donc j'ai pompé sur le site que vous connaissez tous http://membres.lycos.fr/javamus/a cos et sin [ par unionx ] désolé pour le sendage ici onClipEvent (enterFrame) { incrementation+= 0.1; x = this._x+(Math.cos( incrementation)*15); y = this._y+(Math.s Tourner un Point. [ par D0X ] Salut a tout le monde! Je dois tourner un Point. J'ai une ligne qui passe pour le centre d'un cercle et les points sont: CX, CY (centre du cercle), X, Je voudrais savoir comment me servir de tan-1, cos-1 et sin-1 en c++. Est-ce-que quelqu'un peut m'aider? SVP [ par ndubien ] Bonjour, Je voudrais savoir comment me servir de tan-1, cos-1 et sin-1 en c++. Est-ce-que quelqu'un peut m'aider?SVPMerci, d'avance.<str fonctions de <math.h> inconnues par visual 2005 [ par nesgba ] bonjour a tous, voila ca fait maintenant quelques semaines que je suis passé a visual 2005 (la version complete) avant cela j'avais visual 6 (le fame Socket et dev c++ [ par CCJ ] Bonjour. JE tente de creer un programme de dialogue par socket en c++ via dev c++ et dés le debut je rencontre un probleme , des references semblent m Un probleme de sockets... [ par conservatoire ] Voila bonjour a tous!!!J'essaye de réaliser une sorte de programme de chat (je sais que c'est assez ambitieux mais bon...Qui ne tente rien n'a rien !! Problème linkage [ par M5i9k ] Salut à tous!Je débute les socket en c++ et j'ai un problème à la compilation, est-ce que quelqu'un pourrait m'expliquer, voici mon code :// Serveur T


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,201 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales