IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

DirectX Discussion :

D3DXCreateTextureFromResource(Ex) dans une DLL


Sujet :

DirectX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 34
    Par défaut D3DXCreateTextureFromResource(Ex) dans une DLL
    Bonjour, j'ai des difficultés à faire marcher la fonction D3DXCreateTextureFromResourceEx.
    Mon moteur de rendu 2D est modélisé sous la forme d'une DLL. Tout marche bien jusqu'ici mais en fait, dans chaque application que je crée avec ce moteur (et donc cette DLL), j'affiche toujours la même scène d'introduction (qui est codée dans la DLL) composée d'un sprite et d'une musique.

    Jusqu'alors, je mettais le fichier contenant le sprite (ainsi que la musique mais peu importe pour elle dans un premier temps) dans le dossier de chaque application pour que ma scène d'introduction soit affichée.

    Maintenant, j'aimerais essayer d'inclure directement le fichier dans la DLL, en tant que ressource donc, et laisser la DLL elle-même charger la texture pour la scène d'introduction intégrée (donc tout se passe dans la DLL).

    J'utilise donc D3DXCreateTextureFromResourceEx à la place de D3DXCreateTextureFromFileEx.

    J'essaye dans un premier temps avec un BITMAP créé vite fait avec VS 2005, puisqu'il n'y a rien à modifier d'après la documentation (RCDATA pour les autres fichiers).

    Mais rien à faire, il ne veut pas créer la texture depuis la ressource incluse dans la DLL et ce bout de code issu de ma méthode permettant cela renvoit toujours NULL :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    LPDIRECT3DTEXTURE9 newTexture = NULL;
    if( FAILED( D3DXCreateTextureFromResourceEx(
                       m_Device,			//device DirectGraphics
                       NULL,			// HMODULE
                       MAKEINTRESOURCE(IDB_BITMAP1), // ressource
                       0, 
                       0,			//si 0, DirectX prend les dimensions de la texture
                       1,					//utilisé pour le mipmapping, 1 si non
                       0,	//on pourra blitter sur la texture
                       D3DFMT_A8R8G8B8,		//format de couleur
                       D3DPOOL_MANAGED,		//texture chargée dans la mémoire vidéo
                       D3DX_FILTER_NONE, 		// filtrage
                       D3DX_DEFAULT,			//utilisé pour le mipmapping
                       0xFFFF00FF,			//color key: mauve
                       NULL, 
                       NULL,			//pas intéressant ici
                       &newTexture )			//pointeur sur la texture
                        ) )
    {
          return NULL;
    }
     
    return newTexture;
    Comment ça marche tout ça... ?
    Je suis perdu et on ne peut pas dire que le net regorge d'exemples à ce propos.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 267
    Par défaut
    Tu peux essayer le mode debug de directx pour qu'il te donne de plus amples informations. Voir la FAQ directX.

    Sinon, tu peux essayer de donner le Handle de ta DLL dans le paramètres HModule.

Discussions similaires

  1. [MDI][DLL] Enfant MDI dans une dll
    Par Pascal Jankowski dans le forum Composants VCL
    Réponses: 5
    Dernier message: 02/04/2004, 07h41
  2. [VStudio 6] pb avec fonctions dans une DLL
    Par MogDeChNord dans le forum MFC
    Réponses: 8
    Dernier message: 08/01/2004, 08h57
  3. [BP7] Problème chargement de ressource dans une DLL
    Par Alcatîz dans le forum Turbo Pascal
    Réponses: 11
    Dernier message: 26/07/2003, 21h36
  4. PB avec "self" dans une dll
    Par DiJiRiDouS dans le forum Langage
    Réponses: 2
    Dernier message: 21/02/2003, 09h32
  5. [VB6]Passage d'un tableau dans une DLL écrite en delphi
    Par flash dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 20/09/2002, 10h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo