aymardhb9
Messages postés5Date d'inscriptionmercredi 14 décembre 2005StatutMembreDernière intervention29 avril 2006
-
28 avril 2006 à 18:23
gagah1
Messages postés509Date d'inscriptionsamedi 28 juin 2003StatutMembreDernière intervention 3 août 2010
-
29 avril 2006 à 13:16
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);
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 29 avril 2006 à 00:41
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 ?
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 .