Problem integrating SDL and CEGUI

For help with general CEGUI usage:
- Questions about the usage of CEGUI and its features, if not explained in the documentation.
- Problems with the CMAKE configuration or problems occuring during the build process/compilation.
- Errors or unexpected behaviour.

Moderators: CEGUI MVP, CEGUI Team

redsoxfantom
Just popping in
Just popping in
Posts: 3
Joined: Tue Sep 18, 2012 21:18

Problem integrating SDL and CEGUI

Postby redsoxfantom » Tue Sep 18, 2012 22:16

Hello all,

I'm having a bit of a problem following along with the basic tutorial for running CEGUI within SDL (http://www.cegui.org.uk/wiki/index.php/ ... and_OpenGL)

I have gotten CEGUI to initialize successfully, but now i'm having a problem creating a scheme. Here is the function that is causing problems:

Code: Select all

CEGUI::WindowManager & init_CEGUI(SDL_Surface & screen)
{
   CEGUI::OpenGLRenderer::bootstrapSystem();
   //CEGUI::OpenGLRenderer &renderer = CEGUI::OpenGLRenderer::create();
   //CEGUI::System::create(renderer);

   set_CEGUI_paths();

   CEGUI::SchemeManager::getSingleton().create("TaharezLook.scheme");

   CEGUI::System::getSingleton().setDefaultMouseCursor("TaharezLook","MouseArrow");

   return CEGUI::WindowManager::getSingleton();
}


and it is crashing on this line:

Code: Select all

CEGUI::SchemeManager::getSingleton().create("TaharezLook.scheme");

with a CEGUI::InvalidRequestException.

however, when i comment that line out, it then crashes on this line:

Code: Select all

CEGUI::System::getSingleton().setDefaultMouseCursor("TaharezLook","MouseArrow");

with a CEGUI::UnknownObjectException.

I suspect the issue is in the set_CEGUI_paths() function is is as follows:

Code: Select all

void set_CEGUI_paths()
{
   CEGUI::DefaultResourceProvider * defaultResProvider = static_cast<CEGUI::DefaultResourceProvider*>(CEGUI::System::getSingleton().getResourceProvider());
   defaultResProvider->setResourceGroupDirectory("schemes","C:\\Users\\redsoxfantom\\Downloads\\CEGUI-0.7.7\\CEGUI-0.7.7\\datafiles\\schemes\\");
   defaultResProvider->setResourceGroupDirectory("imagesets","C:\\Users\\redsoxfantom\\Downloads\\CEGUI-0.7.7\\CEGUI-0.7.7\\datafiles\\imagesets\\");
   defaultResProvider->setResourceGroupDirectory("fonts","C:\\Users\\redsoxfantom\\Downloads\\CEGUI-0.7.7\\CEGUI-0.7.7\\datafiles\\fonts\\");
   defaultResProvider->setResourceGroupDirectory("layouts","C:\\Users\\redsoxfantom\\Downloads\\CEGUI-0.7.7\\CEGUI-0.7.7\\datafiles\\layouts\\");
   defaultResProvider->setResourceGroupDirectory("looknfeels","C:\\Users\\redsoxfantom\\Downloads\\CEGUI-0.7.7\\CEGUI-0.7.7\\datafiles\\looknfeels\\");
   defaultResProvider->setResourceGroupDirectory("lua_scripts","C:\\Users\\redsoxfantom\\Downloads\\CEGUI-0.7.7\\CEGUI-0.7.7\\datafiles\\lua_scripts\\");
   defaultResProvider->setResourceGroupDirectory("schemas","C:\\Users\\redsoxfantom\\Downloads\\CEGUI-0.7.7\\CEGUI-0.7.7\\datafiles\\schemas\\");
   defaultResProvider->setResourceGroupDirectory("animations","C:\\Users\\redsoxfantom\\Downloads\\CEGUI-0.7.7\\CEGUI-0.7.7\\datafiles\\animations\\");
   
   CEGUI::XMLParser *parser = CEGUI::System::getSingleton().getXMLParser();
   if(parser->isPropertyPresent("SchemaDefaultResourceGroup"))
      parser->setProperty("SchemaDefaultResourceGroup","schemas");
}


Since I am running my code on a Windows machine, and not a Linux machine, I changed the slashes so that it would find the correct files. As a test, I changed them back but the same errors occurred.

Also, here is the contents of my cegui.log:
19/09/2012 17:38:20 (Std) +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
19/09/2012 17:38:20 (Std) + Crazy Eddie's GUI System - Event log +
19/09/2012 17:38:20 (Std) + (http://www.cegui.org.uk/) +
19/09/2012 17:38:20 (Std) +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

19/09/2012 17:38:20 (Std) CEGUI::Logger singleton created. (024BB2E8)
19/09/2012 17:38:20 (Std)
19/09/2012 17:38:20 (Std) ********************************************************************************
19/09/2012 17:38:20 (Std) * Important: *
19/09/2012 17:38:20 (Std) * To get support at the CEGUI forums, you must post _at least_ the section *
19/09/2012 17:38:20 (Std) * of this log file indicated below. Failure to do this will result in no *
19/09/2012 17:38:20 (Std) * support being given; please do not waste our time. *
19/09/2012 17:38:20 (Std) ********************************************************************************
19/09/2012 17:38:20 (Std) ********************************************************************************
19/09/2012 17:38:20 (Std) * -------- START OF ESSENTIAL SECTION TO BE POSTED ON THE FORUM -------- *
19/09/2012 17:38:20 (Std) ********************************************************************************
19/09/2012 17:38:20 (Std) ---- Version 0.7.7 (Build: Sep 19 2012 Microsoft Windows MSVC++ 10.0 32 bit) ----
19/09/2012 17:38:20 (Std) ---- Renderer module is: CEGUI::OpenGLRenderer - Official OpenGL based 2nd generation renderer module. TextureTarget support enabled via FBO extension. ----
19/09/2012 17:38:20 (Std) ---- XML Parser module is: CEGUI::ExpatParser - Official expat based parser module for CEGUI ----
19/09/2012 17:38:20 (Std) ---- Image Codec module is: SILLYImageCodec - Official SILLY based image codec ----
19/09/2012 17:38:20 (Std) ---- Scripting module is: None ----
19/09/2012 17:38:20 (Std) ********************************************************************************
19/09/2012 17:38:20 (Std) * -------- END OF ESSENTIAL SECTION TO BE POSTED ON THE FORUM -------- *
19/09/2012 17:38:20 (Std) ********************************************************************************
19/09/2012 17:38:20 (Std)
19/09/2012 17:38:20 (Std) ---- Begining CEGUI System initialisation ----
19/09/2012 17:38:20 (Std) CEGUI::ImagesetManager singleton created (024BC578)
19/09/2012 17:38:20 (Std) CEGUI::FontManager singleton created. (024BDED8)
19/09/2012 17:38:20 (Std) CEGUI::WindowFactoryManager singleton created
19/09/2012 17:38:20 (Std) CEGUI::WindowManager singleton created (00158690)
19/09/2012 17:38:20 (Std) CEGUI::SchemeManager singleton created. (024BCE48)
19/09/2012 17:38:20 (Std) CEGUI::MouseCursor singleton created. (00159340)
19/09/2012 17:38:20 (Std) CEGUI::GlobalEventSet singleton created. (00152E60)
19/09/2012 17:38:20 (Std) CEGUI::AnimationManager singleton created (001578C0)
19/09/2012 17:38:20 (Std) CEGUI::WidgetLookManager singleton created. (024B1778)
19/09/2012 17:38:20 (Std) CEGUI::WindowRendererManager singleton created (024BDFA8)
19/09/2012 17:38:20 (Std) CEGUI::RenderEffectManager singleton created (024BB450)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'DefaultWindow' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'DefaultWindow' windows added. (024BD1E8)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'DragContainer' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'DragContainer' windows added. (024BD290)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'ScrolledContainer' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'ScrolledContainer' windows added. (024BD338)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'ClippedContainer' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'ClippedContainer' windows added. (024BD3E0)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Checkbox' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Checkbox' windows added. (024BD488)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/PushButton' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/PushButton' windows added. (024BD530)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/RadioButton' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/RadioButton' windows added. (024BD5D8)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Combobox' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Combobox' windows added. (024BD680)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/ComboDropList' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/ComboDropList' windows added. (024C3FC8)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Editbox' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Editbox' windows added. (024C4070)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/FrameWindow' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/FrameWindow' windows added. (024C4118)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/ItemEntry' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/ItemEntry' windows added. (024C41C0)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Listbox' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Listbox' windows added. (024C4268)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/ListHeader' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/ListHeader' windows added. (024C5368)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/ListHeaderSegment' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/ListHeaderSegment' windows added. (024C5410)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Menubar' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Menubar' windows added. (024C54B8)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/PopupMenu' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/PopupMenu' windows added. (024C5560)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/MenuItem' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/MenuItem' windows added. (024C5608)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/MultiColumnList' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/MultiColumnList' windows added. (024C56B0)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/MultiLineEditbox' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/MultiLineEditbox' windows added. (024C5758)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/ProgressBar' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/ProgressBar' windows added. (024C5800)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/ScrollablePane' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/ScrollablePane' windows added. (024C58A8)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Scrollbar' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Scrollbar' windows added. (024C5950)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Slider' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Slider' windows added. (024C59F8)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Spinner' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Spinner' windows added. (024C5AA0)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/TabButton' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/TabButton' windows added. (024C5B48)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/TabControl' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/TabControl' windows added. (024C5BF0)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Thumb' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Thumb' windows added. (024C5C98)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Titlebar' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Titlebar' windows added. (024C5D40)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Tooltip' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Tooltip' windows added. (024C5DE8)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/ItemListbox' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/ItemListbox' windows added. (024C5E90)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/GroupBox' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/GroupBox' windows added. (024C5F38)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'CEGUI/Tree' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'CEGUI/Tree' windows added. (024C5FE0)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'HorizontalLayoutContainer' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'HorizontalLayoutContainer' windows added. (024C6088)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'VerticalLayoutContainer' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'VerticalLayoutContainer' windows added. (024C6130)
19/09/2012 17:38:20 (Std) Created WindowFactory for 'GridLayoutContainer' windows.
19/09/2012 17:38:20 (Std) WindowFactory for 'GridLayoutContainer' windows added. (024C61D8)
19/09/2012 17:38:20 (Std) Window type alias named 'DefaultGUISheet' added for window type 'DefaultWindow'.
19/09/2012 17:38:20 (Std) CEGUI::System singleton created. (024BC068)
19/09/2012 17:38:20 (Std) ---- CEGUI System initialisation completed ----
19/09/2012 17:38:20 (Std)


Any help would be very much appreciated.

pav
Not too shy to talk
Not too shy to talk
Posts: 37
Joined: Thu Dec 01, 2011 14:17

Re: Problem integrating SDL and CEGUI

Postby pav » Wed Sep 19, 2012 01:46

I haven't used version 0.7 but from what I see on the wiki sample, as well as the code for the CEGUI samples here, you've forgotten the following code near the end of set_CEGUI_paths():

Code: Select all

   // Sets the default resource groups to be used:
   CEGUI::Imageset::setDefaultResourceGroup( "imagesets" ) ;
   CEGUI::Font::setDefaultResourceGroup( "fonts" ) ;
   CEGUI::Scheme::setDefaultResourceGroup( "schemes" ) ;
   CEGUI::WidgetLookManager::setDefaultResourceGroup( "looknfeels" ) ;
   CEGUI::WindowManager::setDefaultResourceGroup( "layouts" ) ;
   CEGUI::ScriptModule::setDefaultResourceGroup( "lua_scripts" ) ;
   CEGUI::AnimationManager::setDefaultResourceGroup( "animations" ) ;

   // You have this
   CEGUI::XMLParser *parser = CEGUI::System::getSingleton().getXMLParser();
   if(parser->isPropertyPresent("SchemaDefaultResourceGroup"))
      parser->setProperty("SchemaDefaultResourceGroup","schemas");


Btw, I think forward slashes (for the paths) will work on all systems.

redsoxfantom
Just popping in
Just popping in
Posts: 3
Joined: Tue Sep 18, 2012 21:18

Re: Problem integrating SDL and CEGUI

Postby redsoxfantom » Wed Sep 19, 2012 04:00

Thanks a lot, pav, that helped me solve it.
I added that code, and it turns out I also had to add "CEGUIFalagardWRBase.dll" to the working directory. After that, it all compiles and runs perfectly. Thanks again!


Return to “Help”

Who is online

Users browsing this forum: No registered users and 1 guest