begin process at 2012 05 28 19:37:30
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Linux

 > 

OpenGL

 > 

[Débutant][OpenGL ES] Problème affichage textures


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

[Débutant][OpenGL ES] Problème affichage textures

mardi 9 juin 2009 à 11:31:40 | [Débutant][OpenGL ES] Problème affichage textures

Niicoo

Bonjour tout le monde,

Je dois faire un jeu en OpenGL ES (Objective-c) pour IPhone.
Je dois afficher une texture sur un carré (2D).
Ça pas de soucis, j'y arrive sans difficulté.

Mon problème est que sur cette texture, je dois en afficher d'autres..
(Enchainer des textures "route" et "croisement" pour faire un chemin sur une texture "herbe").

Pour mettre la 1er texture j'utilise la code suivant:

[CODE]- (void) chargerTextures {
    CGImageRef textureImage = [UIImage imageNamed:@"herbe64.jpg"].CGImage;
    if (textureImage == nil) {
        NSLog(@"L'image n'a pas été chargé");
        return;
    }
    
    NSInteger textureWidth = CGImageGetWidth(textureImage);
    NSInteger textureHeight = CGImageGetHeight(textureImage);
    
    // Un peu d'allocation dynamique de mémoire...
    GLubyte *textureData = (GLubyte *) malloc(textureWidth * textureHeight *4); // 4 car RVBA
    
    CGContextRef textureContext = CGBitmapContextCreate(textureData,
                                                        textureWidth,
                                                        textureHeight,
                                                        8, textureWidth * 4,
                                                        CGImageGetColorSpace(textureImage),
                                                        kCGImageAlphaPremultipliedLast);
    
    CGContextDrawImage(textureContext,
                       CGRectMake(0.0, 0.0, (float)textureWidth, (float)textureHeight),
                       textureImage);
    
    CGContextRelease(textureContext);
    
    glGenTextures(3, &textures[0]); // 3, Car il y a 3 textures différentes...
    
    glBindTexture(GL_TEXTURE_2D, textures [0]);
    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, textureWidth, textureHeight, 0, GL_RGBA, GL_UNSIGNED_BYTE, textureData);
    
    free(textureData);
    
    glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
    
    glEnable(GL_TEXTURE_2D);[/CODE]

Et je définis les carrés comme ceci:

[CODE]
- (void)drawView {

.....

    // Dessin du carré
    glLoadIdentity();
    glColor4f(1.0, 1.0, 1.0, 1.0);
    glTranslatef(0.0, 0.0, -2.0);
    glVertexPointer(3, GL_FLOAT, 0, squareVertices);
    glEnableClientState(GL_VERTEX_ARRAY);
    glTexCoordPointer(2, GL_SHORT, 0, squareTextureCoords);
    glEnableClientState(GL_TEXTURE_COORD_ARRAY);     
    glDrawArrays(GL_TRIANGLE_FAN, 0, 4);

....
}
[/CODE]

Je pensais utiliser la méthode chargerTextures lorsque je définis mon carré.
Mais je ne sais pas comment mettre en paramètre la texture nécessaire lors de l'appel et surtout quoi mettre dans la fonction chargerTextures pour que celle ci soit utilisable partout.


Je n'ai que 2semaines d'OpenGL ES dans les pieds, et plus que 3semaines de stage. Bien que je lis pas mal de tutos, cours,.. j'ai encore un peu de mal avec certaines notions =/

Merci!
mardi 16 juin 2009 à 16:57:01 | Re : [Débutant][OpenGL ES] Problème affichage textures

SebLinck

Salut,

quand tu dis je dois faire un jeux pour iPhone, c'est pour ton patron, un prof ?

Cordialement,
Sébastien.


Cette discussion est classée dans : gl, textures, texture, 2d, textureimage


Répondre à ce message

Sujets en rapport avec ce message

image non chargée [ par aurelivs ] bonjourje cherche a faire une appli en C++ et OpenGL pour charger une image et afficher cette image (puis la transformer). cependant je n'arrive pas à Texture openGl [ par neodelphi ] Bonjour tout le monde, j'essaye désespérément d'ajouter des textures dans mon projet openGl, mais je devient fou... J'ai écrit une classe qui me perm bitmap avec SDL_image? [ par Batman60 ] Bonjour Comment afficher des bitmaps correctement(bonnes couleurs,et image non inversée) avec ce code (SDL_ima problème de transparence sur texture opengl [ par Batman60 ] bonsoirla transparence sur la texture tga ne s'affiche pas, pourtant j'utilise le code ci-dessous et je ne vois pas quoi d'autre à ajouter ou modifier Problème d'affichage de texture [ par Turok ] Bonjour,Alors voila le problème est simple, voici un code que j'utilise pour afficher une simple image 2d en utilisant OpenGl et SDL, mais celui ci ne OpenGL et textures [ par Jackyzgood ] Bonjour à tous ! Maintenant que je commence à être à l'aise en SDL, je me suis dis : ça pourrait être bien de passer à l'OpenGL. J'ai suivis un tuto erreur en opengl :( [ par intello2001 ] c:\documents and settings\administrator\mes documents\ogl3\ogl3\untitled1.o(.text+0x71f):untitled1.cpp: undefined reference to `auxDIBImageLoadA@4'c s AIDEZ MOI scp problème de texture bmp avec glaux [ par progundeath ] aidez moi svp g un big problème que j'arrive pas à résoudre mais bon je ne suis qu'un newbie d'autres le résoluront en 10 secondes enfin j'espère donc [Open GL]Afficher plusieurs images [ par goutbouyo ] Salut, c'est encore moi, désolé ...En fait c'est que je n'arrive pas à charger plusieurs images.J'utilise ça :Je charge une image :void LoadTexture() probleme pour texturer une sphere [ par mikey84 ] Bonjour! j'ai un énorme problème. J'ai essayé d'appliquer une texture sur ma sphère avec la librairie devil, avec opengl et glut et aucun n'a fonction


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

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 : 0,250 sec (4)

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