CELayoutEditor and Ogre3D engine

Use this forum for:
- Discussion regarding unofficial CEGUI related tools, scripts and utilities.
- User to user help for the obsoleted CELayoutEditor and CEImagesetEditor tools.

Moderators: CEGUI MVP, CEGUI Team

meeshoo
Just popping in
Just popping in
Posts: 3
Joined: Fri Jan 23, 2009 09:02

CELayoutEditor and Ogre3D engine

Postby meeshoo » Fri Jan 23, 2009 09:13

Hello,

I am new to both ogre and cegui, however i need them both for developing my application. For now I do a lot of experiments with them to see what will I be able to do with them. After doing all ogre tutorials that are related to cegui, here is what I tried to do (and didn't work):
1. downloaded and installed latest ogre sdk
2. downloaded and installed celayouteditor
3. successfully compiled and ran the Gui ogre sample.
4. started the gui editor and set it's folder to ogresdk/media/gui folder
5. closed the application, opened the .ini file created there into a text editor and changed all folders to point at ogresdk/media/gui folder (as it doesn't have any subfolders, schemes, layouts, fonts and all are there.
6. copied the real fonts from the media/fonts folder into the gui folder (so really everything a layout would need is there.

Then I tried the following:

1. I tried opening an existing ogre layout into the celayouteditor. It didn't load with the errors that the needed font wasn't present (although both the .font and .ttf files where in the right folder) and something related to a scroll bar that doesn't exist and so on.

2. I created a simple new layout (just a button in the middle) and tried to open it in a striped version of gui application that would just load the layout and set it as current layout, but the ogre app crashes when i try to load the layout.

3. Tried to open any other existing ogre layout (which works in the gui sample app) in ogre striped down gui sample (the one you get after doing begginer tutorial 7) and it crashed with the same error (something like "application requested to terminate unexpectedly, please contact the support team").

Any idea (or tutorial or something) about which is the right thing to do to edit ogre existing layouts or create new ones and be able to at least display them (no functionality for now) in ogre?

(I searched both this and ogre forum and haven't found relevant information on this).

I also must mention that when I created a layout directly by coding it from c++ it worked (second part of ogre beginner tutorial 7).

thanks

User avatar
CrazyEddie
CEGUI Project Lead
Posts: 6760
Joined: Wed Jan 12, 2005 12:06
Location: England
Contact:

Postby CrazyEddie » Fri Jan 23, 2009 10:30

Hi, and welcome :)

I'm not sure how to do what you're trying since I've never done it. But in order to narrow things down a little:

For point (1) can you post the CELayoutEditor.ini and the errors from CELayoutEditor.log regarding the missing fonts etc.

For points (2) and (3) are there any errors logged in either Ogre.log or CEGUI.log before the crash occurs?

CE.

meeshoo
Just popping in
Just popping in
Posts: 3
Joined: Fri Jan 23, 2009 09:02

Postby meeshoo » Fri Jan 23, 2009 14:31

Here is the log for trying to load the ogregui.layout:

CELayoutEditor log:

Code: Select all

23/01/2009 16:19:46 (Info)    Loaded GUI scheme 'TaharezLookWidgetAliases' from data in file 'TaharezLookWidgetAliases.scheme'. (02E9B0B0)
23/01/2009 16:19:46 (Info)    ---- Begining resource loading for GUI scheme 'TaharezLookWidgetAliases' ----
23/01/2009 16:19:46 (Std)    Window type alias named 'Taharez AltProgressBar' added for window type 'TaharezLook/AlternateProgressBar'.
23/01/2009 16:19:46 (Std)    Window type alias named 'Taharez Button' added for window type 'TaharezLook/Button'.
23/01/2009 16:19:46 (Std)    Window type alias named 'Taharez Checkbox' added for window type 'TaharezLook/Checkbox'.
23/01/2009 16:19:46 (Error)   CEGUI::UnknownObjectException in file \Temp\CEGUI-0.6.2-vc7\src\CEGUIWindowFactoryManager.cpp(236) : WindowFactoryManager::addWindowTypeAlias - alias 'Taharez Close Button' could not be created because the target type 'TaharezLook/CloseButton' is unknown within the system.
23/01/2009 16:19:52 (Error)   CELayoutEditor has detected and caught an exception. The following detailed info is available:

Description: Error
Exception Location: EditorFrame::LoadData
Exception Message: WindowFactoryManager::addWindowTypeAlias - alias 'Taharez Close Button' could not be created because the target type 'TaharezLook/CloseButton' is unknown within the system.
Exception Filename: \Temp\CEGUI-0.6.2-vc7\src\CEGUIWindowFactoryManager.cpp
Exception Line: 236
23/01/2009 16:19:52 (Std)    Attempting to create Font from the information specified in file 'bluehighway-10.font'.
23/01/2009 16:19:52 (Error)   CEGUI::AlreadyExistsException in file \Temp\CEGUI-0.6.2-vc7\src\CEGUIFontManager.cpp(178) : FontManager::createFont - A font named 'BlueHighway-10' already exists.
23/01/2009 16:19:52 (Error)   FontManager::createFont - loading of Font from file 'bluehighway-10.font' failed.
23/01/2009 16:19:52 (Std)    Attempting to create Font from the information specified in file 'bluehighway-12.font'.
23/01/2009 16:19:52 (Error)   CEGUI::AlreadyExistsException in file \Temp\CEGUI-0.6.2-vc7\src\CEGUIFontManager.cpp(178) : FontManager::createFont - A font named 'BlueHighway-12' already exists.
23/01/2009 16:19:52 (Error)   FontManager::createFont - loading of Font from file 'bluehighway-12.font' failed.
23/01/2009 16:19:52 (Std)    Attempting to create Font from the information specified in file 'bluehighway-8.font'.
23/01/2009 16:19:52 (Error)   CEGUI::AlreadyExistsException in file \Temp\CEGUI-0.6.2-vc7\src\CEGUIFontManager.cpp(178) : FontManager::createFont - A font named 'BlueHighway-8' already exists.
23/01/2009 16:19:52 (Error)   FontManager::createFont - loading of Font from file 'bluehighway-8.font' failed.
23/01/2009 16:19:52 (Std)    Attempting to create an Imageset from the information specified in file 'TaharezLook.imageset'.
23/01/2009 16:19:52 (Std)    Started creation of Imageset from XML specification:
23/01/2009 16:19:52 (Std)    ---- CEGUI Imageset name: TaharezLook
23/01/2009 16:19:52 (Std)    ---- Source texture file: TaharezLook.tga in resource group: (Default)
23/01/2009 16:19:52 (Info)    Finished creation of Imageset 'TaharezLook' via XML file. (02EC0E58)
23/01/2009 16:19:52 (Error)   CEGUI::AlreadyExistsException in file \Temp\CEGUI-0.6.2-vc7\src\CEGUIImagesetManager.cpp(108) : ImagesetManager::createImageset - An Imageset object named 'TaharezLook' already exists.


.ini content:

Code: Select all

[SETTINGS]
BigKeyStep=10
SmallKeyStep=1
DefaultFont=
CurrentBackground=
BackgroundVisible=0
CurrentLayout=
ViewWidth=672
ViewHeight=633
SnapMode=2
GridSize=10
GridVisible=0
ConfigsPath=D:/Personal/Angband/OgreSDK/media/gui/
FontsPath=D:/Personal/Angband/OgreSDK/media/gui/
ImagesetsPath=D:/Personal/Angband/OgreSDK/media/gui/
LookNFeelsPath=D:/Personal/Angband/OgreSDK/media/gui/
ScriptsPath=D:/Personal/Angband/OgreSDK/media/gui/
SchemesPath=D:/Personal/Angband/OgreSDK/media/gui/
LayoutsPath=D:/Personal/Angband/OgreSDK/media/gui/
SupportedProperties= <Snipped by CrayzEddie to fix the forum layout>


for points (2) and (3) the fact that you pointed me the logs (told you i'm a noob :) ) helped a lot, as i found i was trying to access a button that didn't exist in the new layout i was loading while setting up OIS. Thanks for this one.

If I manage to solve the above problem (the one with loading existing stuff into the editor) I am good to go :)

EDIT: looks like something is wrong with displaying the "code" things on the forum, it gets too wide, no idea how to fix it :(

User avatar
CrazyEddie
CEGUI Project Lead
Posts: 6760
Joined: Wed Jan 12, 2005 12:06
Location: England
Contact:

Postby CrazyEddie » Sat Jan 24, 2009 16:10

Some of the datafiles that we distribute with CEGUI are intended to show examples of some functions within the library itself, and as such should not really be loaded together - this leads to messages regarding things already existing. In addition to this, things like the ancient Taharez aliases file is outdated and should be removed, so when loading that it generates errors with regards to unknown objects of one type or another.

I'm not certain if the Ogre guys are distributing all those files, I thought they only had a single 'version' of the taharez look scheme - so it's odd you get those errors when pointing the editor towards the Ogre media files.

The latest version of the editor comes with a fully functioning subset of the CEGUI datafiles which should not cause errors, but obviously we will not have any modifications the Ogre guys may have made, so loading the Ogre provided layouts may fail for that reason.

Aside from all that, once you get past those (annoying) errors, the editor runs? Or not?

CE.

meeshoo
Just popping in
Just popping in
Posts: 3
Joined: Fri Jan 23, 2009 09:02

Postby meeshoo » Sat Jan 24, 2009 21:08

Thanks for the the answers. Yes, everything works ok except that the file doesn't get loaded into the editor (that is the ogre files), but the files I built with the editor from scratch works to load them too. So I guess I am good to go, thanks again for the help.

User avatar
jacmoe
Just can't stay away
Just can't stay away
Posts: 136
Joined: Sun Apr 03, 2005 14:18
Location: Holbaek, Denmark
Contact:

Postby jacmoe » Thu Jan 29, 2009 22:36

The solution is to delete TaharezLookWidgetAliases.scheme - and copy the fonts over from the fonts. That will probably make the Ogre resource manager barf. But just delete them when you're done editing. :wink:

By the way:
How do you specify different folders for the fonts? Like two folders?
In the Ogre gui folder, there's a fontdef file, but the actual fonts are in the fonts folder.

User avatar
CrazyEddie
CEGUI Project Lead
Posts: 6760
Joined: Wed Jan 12, 2005 12:06
Location: England
Contact:

Postby CrazyEddie » Fri Jan 30, 2009 09:34

jacmoe wrote:How do you specify different folders for the fonts? Like two folders?
In the Ogre gui folder, there's a fontdef file, but the actual fonts are in the fonts folder.

This is an effect of the Ogre resource mechanism and the way that's set up for the Ogre samples. Basically all the Media subdirectories are added as resource locations under one resource group, so by using the resource group "General", you're actually accessing a whole set of directories (and .zip files) as opposed to a single location (which you're limited to when using the CEGUI DefaultResourceProvider).

CE.

User avatar
jacmoe
Just can't stay away
Just can't stay away
Posts: 136
Joined: Sun Apr 03, 2005 14:18
Location: Holbaek, Denmark
Contact:

Postby jacmoe » Fri Jan 30, 2009 12:07

Problem solved! :D

I had a brainfart, I realised that after turning off my computer yesterday. :wink:

The solution is easy:
Move the offending .font files from the gui folder to the fonts folder.

And then the relevant excerpt of our Ogre media friendly CELayoutEditor.ini looks like this:

Code: Select all

ConfigsPath=M:\Shoggoth\Samples\Media\gui/
FontsPath=M:\Shoggoth\Samples\Media\fonts/
ImagesetsPath=M:\Shoggoth\Samples\Media\gui/
LookNFeelsPath=M:\Shoggoth\Samples\Media\gui/
ScriptsPath=M:\Shoggoth\Samples\Media\gui/
SchemesPath=M:\Shoggoth\Samples\Media\gui/
LayoutsPath=M:\Shoggoth\Samples\Media\gui/


I will open a ticket @ the Ogre bug tracker, so that it (hopefully) gets fixed. :)

User avatar
CrazyEddie
CEGUI Project Lead
Posts: 6760
Joined: Wed Jan 12, 2005 12:06
Location: England
Contact:

Postby CrazyEddie » Fri Jan 30, 2009 14:06

Cool :)

As for the font xml files, I think sinbad may decide that they should stay in the Gui directory - mainly to avoid confusion with people thinking these are required for Ogre's own font support. Obviously it would be nice if he did move them though ;)

CE.


Return to “Unofficial CEGUI-Related Tools”

Who is online

Users browsing this forum: No registered users and 4 guests