Probleme mémoire / Ogre3D

Probleme mémoire / Ogre3D - C++ - Programmation

Marsh Posté le 06-02-2009 à 09:35:03    

J'ai commencer récemment à m'intéresser à la programmation à partir d'un moteur graphique et mon choix s'est porté sur le moteur opensource Ogre3D. J'ai donc suivi dans un premier temps ce tutorial, j'arrive à compiler la première partie !
 
Mais lors de l'exécution je reçois le message d'erreur suivant :

Code :
  1. Exception non gérée à 0x7c812aeb dans FirstApplyOgre.exe*: Exception Microsoft C++*: std::bad_alloc à l'emplacement mémoire 0x0012f334


C'est un problème d'allocation mémoire mais j'ai aucune idée de comment le résoudre !
 
Voici mon code :
 
Classe Application.h

Code :
  1. #include <Ogre.h>
  2. class Application
  3. {
  4. public :
  5. Application() ;
  6. ~Application() ;
  7. void Run();
  8.         void Start();
  9.         void Exit();
  10. Ogre ::Root* pRoot ;
  11. Ogre ::SceneManager* pSceneManager ;
  12. Ogre ::RenderWindow* pRenderWindow;
  13. Ogre ::Viewport* pViewport ;
  14. Ogre ::Camera* pCamera ;
  15. } ;


 
Source Application.cpp

Code :
  1. #include "Application.h"
  2. Application::Application()
  3. {
  4. }
  5. void Application::Run()
  6. {
  7.  pRoot->startRendering();
  8. }
  9. void Application ::Start()
  10. {
  11. pRoot = new Ogre ::Root() ;
  12. pRenderWindow = pRoot->initialise(true,"Ma premiere application Ogre" );
  13. pSceneManager = pRoot->createSceneManager(Ogre::ST_GENERIC, "MonGestionnaireDeScene" );
  14. pCamera = pSceneManager->createCamera("MaCamera" );
  15. pViewport = pRenderWindow->addViewport(pCamera);
  16. }
  17. Application::~Application()
  18. {
  19. }


 
Source Main.cpp

Code :
  1. #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
  2. #define WIN32_LEAN_AND_MEAN
  3. #include "windows.h"
  4. #include "Application.h"
  5. INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT )
  6. #else
  7. int main(int argc, char **argv)
  8. #endif
  9. {
  10.     try {
  11. Application MonApplication ;
  12. MonApplication.Start ();
  13. MonApplication.Run() ;
  14. MonApplication.Exit();
  15.     } catch( Exception &e ) {
  16. #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
  17.         MessageBox( NULL, e.what(), "An exception has occurred!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
  18. #else
  19.         fprintf(stderr, "An exception has occurred: %s\n",
  20.                 e.what());
  21. #endif
  22.     }
  23.     return 0;
  24. }


 
Je pense que le problème se situe à ce niveau :

Code :
  1. pRoot = new Ogre ::Root() ;


 
Quelqu'un peut m'aider?
 
merci !


Message édité par Qhrim le 06-02-2009 à 09:35:43
Reply

Marsh Posté le 06-02-2009 à 09:35:03   

Reply

Marsh Posté le 06-02-2009 à 18:29:54    

Personne a une petite idée?  :jap:


Message édité par Qhrim le 06-02-2009 à 18:30:00
Reply

Marsh Posté le 09-02-2009 à 11:51:04    

Un petit coup de débuggeur ?


---------------
Python Python Python
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed