[SOLVED] Operating System Rendering Issues

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

ReGeX
Just popping in
Just popping in
Posts: 9
Joined: Sat May 02, 2009 02:54

[SOLVED] Operating System Rendering Issues

Postby ReGeX » Tue Jul 28, 2009 02:17

Hello,

I have just started the implementation of CEGUI into my software, and was able to implement tutorial-based windows successfully. My Vista system, specifically, is able to display the GUI correctly, while my XP machine, and 3 other people's XP machines are not able to see the GUI render at all. I have done numerous debugging which does prove that the GUI should be rendering, and strangely enough, the CEGUI.log file which is produced with the insane informative level is exactly the same on both my XP and Vista machines, where there are no errors or warnings; not even the slightest trace of a problem. I have tried my modified WindowsLook theme, along with the default one provided with CEGUI, and both produce the same result. I have even tried the default TaharezLook. My software is currently using the DirectX81Renderer. I can assure you that it is not an error with the programming, for I have even tested this using copy and paste from the tutorials. Is there anything which could possibly produce this conundrum? I can not seem to even fathom any solution.
Last edited by ReGeX on Thu Aug 06, 2009 18:36, edited 1 time in total.

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

Re: Operating System Rendering Issues

Postby CrazyEddie » Tue Jul 28, 2009 09:17

You don't mention the version of the library you're using, nor the kind of hardware involved. I think the key here has to be to establish a baseline for those XP machines, so you must ignore your own code for the moment, and instead I ask whether the CEGUI samples work on those XP machines?

CE.

ReGeX
Just popping in
Just popping in
Posts: 9
Joined: Sat May 02, 2009 02:54

Re: Operating System Rendering Issues

Postby ReGeX » Tue Jul 28, 2009 17:14

My apologies,

I am currently using CEGUI 0.6.2b. I have downloaded the source and have compiled it on my local Vista machine, with the libraries as release type static libraries. I have also built the XML Expat Parser, PCRE, and Freetype static libraries on my local Vista machine. To your request, I have built the samples using the SAME static libraries that I am using with my software, and have tested them on both my Vista and XP machines. To my surprise, it worked successfully on both my Vista and XP machines. Now I'm concerned that I'm doing something wrong inside the coding. The hardware is irrelevant, for it is solely an operating system issue. All three of my main testers plus myself have different hardware specifications for our XP machines, and it will not render on all of them. Below is the source code of my GUI implementation that I have compacted and tested, yet it won't render on my XP machine:


Code: Select all

// File 1: Contains CEGUI class instantitations.

...

this->pRenderer = new DirectX81Renderer(DevicePointer);  // Declared as an empty class; DevicePointer is passed as the constructor's argument.
this->pSystem = new System(pRenderer); // Declared as an empty class.

CEGUI::Logger::getSingleton().setLoggingLevel(CEGUI::Insane);

CEGUI::SchemeManager::getSingleton().loadScheme("WindowsLook.scheme");
CEGUI::Window* Root = CEGUI::WindowManager::getSingleton().createWindow("DefaultWindow", "RootWindow"); 
this->pSystem->setGUISheet(Root);

// Create the mouse cursor.
this->pSystem->setDefaultMouseCursor( "WindowsLook", "MouseArrow");
CEGUI::MouseCursor::getSingleton().setImage(CEGUI::System::getSingleton().getDefaultMouseCursor());

...



Code: Select all

//File 2: Contains CEGUI Window Implementation

...

WindowManager* Wmgr = CEGUI::WindowManager::getSingletonPtr();
Window* myRoot = Wmgr->getWindow("RootWindow"); // get default window

// Initialize the test window.
this->ScoreMain = Wmgr->createWindow("WindowsLook/StaticImage", "Background");
myRoot->addChildWindow( ScoreMain );
this->ScoreMain->setPosition(UVector2(UDim(0.25f, 0.0f), UDim(0.25f, 0.0f)));
this->ScoreMain->setSize(UVector2(UDim(0.5f, 0.0f), UDim(0.5f, 0.0f)));  // full screen
this->ScoreMain->setAlpha(60.f);

...



Code: Select all

 // Method called AT THE END the Direct3DDevice8::Present hooked method.

HRESULT __stdcall IDirect3DDevice8Hook::Present(CONST RECT* pSourceRect, CONST RECT* pDestRect, HWND hDestWindowOverride, CONST RGNDATA* pDirtyRegion) {

...

    DWORD State = NULL;
    this->DrawDevice->CreateStateBlock(D3DSBT_ALL, &State);

    CEGUI::System::getSingleton().renderGUI();
         
    if(State) {
        this->DrawDevice->ApplyStateBlock(State);
        this->DrawDevice->DeleteStateBlock(State);
    }
    return pD3DDevice->Present(pSourceRect, pDestRect, hDestWindowOverride, pDirtyRegion);
}


This is the only implementation of CEGUI in my entire application. Here is the output of the CEGUI.log on my non-rendering XP machine:

Code: Select all

// From CEGUI.log:
28/07/2009 13:11:58 (Std)    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
28/07/2009 13:11:58 (Std)    +                     Crazy Eddie's GUI System - Event log                    +
28/07/2009 13:11:58 (Std)    +                          (http://www.cegui.org.uk/)                         +
28/07/2009 13:11:58 (Std)    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

28/07/2009 13:11:58 (Std)    CEGUI::Logger singleton created. (027636CC)
28/07/2009 13:11:58 (Std)    ---- Begining CEGUI System initialisation ----
28/07/2009 13:11:58 (Std)    CEGUI::ImagesetManager singleton created (0272304C)
28/07/2009 13:11:58 (Std)    CEGUI::FontManager singleton created. (0272305C)
28/07/2009 13:11:58 (Std)    CEGUI::WindowFactoryManager singleton created
28/07/2009 13:11:58 (Std)    CEGUI::WindowManager singleton created (02734478)
28/07/2009 13:11:58 (Std)    CEGUI::SchemeManager singleton created. (0272A328)
28/07/2009 13:11:58 (Std)    CEGUI::MouseCursor singleton created. (027225CC)
28/07/2009 13:11:58 (Std)    CEGUI::GlobalEventSet singleton created. (0272A338)
28/07/2009 13:11:58 (Std)    CEGUI::WidgetLookManager singleton created. (0272A354)
28/07/2009 13:11:58 (Std)    CEGUI::WindowRendererManager singleton created (02733574)
28/07/2009 13:11:58 (Std)    WindowFactory for 'DefaultWindow' windows added. (101E1938)
28/07/2009 13:11:58 (Std)    WindowFactory for 'DragContainer' windows added. (101E19D8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'ScrolledContainer' windows added. (101E1A78)
28/07/2009 13:11:58 (Std)    WindowFactory for 'ClippedContainer' windows added. (101E1B18)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Checkbox' windows added. (101E1BB8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/PushButton' windows added. (101E2518)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/RadioButton' windows added. (101E25B8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Combobox' windows added. (101E1CF8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/ComboDropList' windows added. (101E1C58)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Editbox' windows added. (101E1D98)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/FrameWindow' windows added. (101E1E38)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/ItemEntry' windows added. (101E1ED8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Listbox' windows added. (101E20B8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/ListHeader' windows added. (101E1F78)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/ListHeaderSegment' windows added. (101E2018)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Menubar' windows added. (101E21F8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/PopupMenu' windows added. (101E23D8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/MenuItem' windows added. (101E2158)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/MultiColumnList' windows added. (101E2298)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/MultiLineEditbox' windows added. (101E2338)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/ProgressBar' windows added. (101E2478)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/ScrollablePane' windows added. (101E2658)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Scrollbar' windows added. (101E26F8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Slider' windows added. (101E2798)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Spinner' windows added. (101E2838)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/TabButton' windows added. (101E28D8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/TabControl' windows added. (101E2978)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Thumb' windows added. (101E2A18)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Titlebar' windows added. (101E2AB8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Tooltip' windows added. (101E2B58)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/ItemListbox' windows added. (101E2BF8)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/GroupBox' windows added. (101E2C98)
28/07/2009 13:11:58 (Std)    WindowFactory for 'CEGUI/Tree' windows added. (101E2D38)
28/07/2009 13:11:58 (Std)    Window type alias named 'DefaultGUISheet' added for window type 'DefaultWindow'.
28/07/2009 13:11:58 (Std)    CEGUI::System singleton created. (027633CC)
28/07/2009 13:11:58 (Std)    ---- CEGUI System initialisation completed ----
28/07/2009 13:11:58 (Std)    ---- Version 0.6.2 ----
28/07/2009 13:11:58 (Std)    ---- Renderer module is: CEGUI::DirectX81Renderer - Official Direct3D 8.1 based renderer module for CEGUI ----
28/07/2009 13:11:58 (Std)    ---- XML Parser module is: CEGUI::ExpatParser - Official expat based parser module for CEGUI ----
28/07/2009 13:11:58 (Std)    ---- Scripting module is: None ----
28/07/2009 13:11:58 (Std)    Attempting to load Scheme from file 'WindowsLook.scheme'.
28/07/2009 13:11:58 (Info)    Started creation of Scheme 'WindowsLookSkin' via XML file.
28/07/2009 13:11:58 (Info)    Finished creation of Scheme 'WindowsLookSkin' via XML file.
28/07/2009 13:11:58 (Info)    Loaded GUI scheme 'WindowsLookSkin' from data in file 'WindowsLook.scheme'. (02766F60)
28/07/2009 13:11:58 (Info)    ---- Begining resource loading for GUI scheme 'WindowsLookSkin' ----
28/07/2009 13:11:58 (Std)    Attempting to create an Imageset from the information specified in file 'WindowsLook.imageset'.
28/07/2009 13:11:58 (Std)    Started creation of Imageset from XML specification:
28/07/2009 13:11:58 (Std)    ---- CEGUI Imageset name: WindowsLook
28/07/2009 13:11:58 (Std)    ---- Source texture file: WindowsLook.tga in resource group: (Default)
28/07/2009 13:11:58 (Info)    Finished creation of Imageset 'WindowsLook' via XML file. (0276C264)
28/07/2009 13:11:58 (Std)    ===== Falagard 'root' element: look and feel parsing begins =====
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Button'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Button'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Checkbox'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Checkbox'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/SystemButton'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/SystemButton'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/ComboDropList'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/ComboDropList'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Combobox'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Combobox'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Editbox'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Editbox'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/FrameWindow'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/FrameWindow'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/IconButton'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/IconButton'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Listbox'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Listbox'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/ItemListbox'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/ItemListbox'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/ListboxItem'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/ListboxItem'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Menubar'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Menubar'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/MenuItem'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/MenuItem'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/ListHeaderSegment'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/ListHeaderSegment'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/ListHeader'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/ListHeader'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/MultiColumnList'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/MultiColumnList'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/MultiLineEditbox'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/MultiLineEditbox'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/PopupMenu'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/PopupMenu'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/ProgressBar'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/ProgressBar'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/RadioButton'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/RadioButton'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/ScrollablePane'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/ScrollablePane'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/VerticalScrollbarThumb'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/VerticalScrollbarThumb'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/VerticalScrollbar'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/VerticalScrollbar'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/HorizontalScrollbarThumb'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/HorizontalScrollbarThumb'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/HorizontalScrollbar'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/HorizontalScrollbar'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/SliderThumb'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/SliderThumb'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Slider'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Slider'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Spinner'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Spinner'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/StaticShared'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/StaticShared'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Static'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Static'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/StaticImage'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/StaticImage'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/StaticText'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/StaticText'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/TabButton'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/TabButton'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/TabContentPane'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/TabContentPane'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/TabButtonPane'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/TabButtonPane'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/TabControl'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/TabControl'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Titlebar'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Titlebar'.
28/07/2009 13:11:58 (Info)    ---> Start of definition for widget look 'WindowsLook/Tooltip'.
28/07/2009 13:11:58 (Info)    ---< End of definition for widget look 'WindowsLook/Tooltip'.
28/07/2009 13:11:58 (Std)    ===== Look and feel parsing completed =====
28/07/2009 13:11:58 (Std)    No window factories specified for module 'CEGUIFalagardWRBase' - adding all available factories...
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Button' added. (101F2310)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Default' added. (101F24F0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Editbox' added. (101F1550)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/FrameWindow' added. (101F2450)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/ItemEntry' added. (101F1A50)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/ListHeader' added. (101F1410)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/ListHeaderSegment' added. (101F17D0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Listbox' added. (101F2130)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Menubar' added. (101F1870)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/MenuItem' added. (101F1D70)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/MultiColumnList' added. (101F1C30)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/MultiLineEditbox' added. (101F14B0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/PopupMenu' added. (101F2090)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/ProgressBar' added. (101F1910)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/ScrollablePane' added. (101F21D0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Scrollbar' added. (101F1FF0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Slider' added. (101F2270)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Static' added. (101F1F50)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/StaticImage' added. (101F23B0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/StaticText' added. (101F1CD0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/SystemButton' added. (101F19B0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/TabButton' added. (101F1AF0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/TabControl' added. (101F1690)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Titlebar' added. (101F1EB0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/ToggleButton' added. (101F1730)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Tooltip' added. (101F15F0)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/ItemListbox' added. (101F1E10)
28/07/2009 13:11:58 (Std)    WindowRendererFactory 'Falagard/Tree' added. (101F1B90)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Button' using base type 'CEGUI/PushButton', window renderer 'Falagard/Button' and Look'N'Feel 'WindowsLook/Button'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Checkbox' using base type 'CEGUI/Checkbox', window renderer 'Falagard/ToggleButton' and Look'N'Feel 'WindowsLook/Checkbox'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/IconButton' using base type 'CEGUI/PushButton', window renderer 'Falagard/Button' and Look'N'Feel 'WindowsLook/IconButton'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/RadioButton' using base type 'CEGUI/RadioButton', window renderer 'Falagard/ToggleButton' and Look'N'Feel 'WindowsLook/RadioButton'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/FrameWindow' using base type 'CEGUI/FrameWindow', window renderer 'Falagard/FrameWindow' and Look'N'Feel 'WindowsLook/FrameWindow'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Titlebar' using base type 'CEGUI/Titlebar', window renderer 'Falagard/Titlebar' and Look'N'Feel 'WindowsLook/Titlebar'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/SystemButton' using base type 'CEGUI/PushButton', window renderer 'Falagard/SystemButton' and Look'N'Feel 'WindowsLook/SystemButton'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Editbox' using base type 'CEGUI/Editbox', window renderer 'Falagard/Editbox' and Look'N'Feel 'WindowsLook/Editbox'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/MultiLineEditbox' using base type 'CEGUI/MultiLineEditbox', window renderer 'Falagard/MultiLineEditbox' and Look'N'Feel 'WindowsLook/MultiLineEditbox'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Menubar' using base type 'CEGUI/Menubar', window renderer 'Falagard/Menubar' and Look'N'Feel 'WindowsLook/Menubar'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/PopupMenu' using base type 'CEGUI/PopupMenu', window renderer 'Falagard/PopupMenu' and Look'N'Feel 'WindowsLook/PopupMenu'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/MenuItem' using base type 'CEGUI/MenuItem', window renderer 'Falagard/MenuItem' and Look'N'Feel 'WindowsLook/MenuItem'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/ProgressBar' using base type 'CEGUI/ProgressBar', window renderer 'Falagard/ProgressBar' and Look'N'Feel 'WindowsLook/ProgressBar'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/VerticalScrollbar' using base type 'CEGUI/Scrollbar', window renderer 'Falagard/Scrollbar' and Look'N'Feel 'WindowsLook/VerticalScrollbar'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/HorizontalScrollbar' using base type 'CEGUI/Scrollbar', window renderer 'Falagard/Scrollbar' and Look'N'Feel 'WindowsLook/HorizontalScrollbar'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/VerticalScrollbarThumb' using base type 'CEGUI/Thumb', window renderer 'Falagard/Button' and Look'N'Feel 'WindowsLook/VerticalScrollbarThumb'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/HorizontalScrollbarThumb' using base type 'CEGUI/Thumb', window renderer 'Falagard/Button' and Look'N'Feel 'WindowsLook/HorizontalScrollbarThumb'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/TabButton' using base type 'CEGUI/TabButton', window renderer 'Falagard/TabButton' and Look'N'Feel 'WindowsLook/TabButton'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/TabControl' using base type 'CEGUI/TabControl', window renderer 'Falagard/TabControl' and Look'N'Feel 'WindowsLook/TabControl'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/TabContentPane' using base type 'DefaultWindow', window renderer 'Falagard/Default' and Look'N'Feel 'WindowsLook/TabContentPane'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/TabButtonPane' using base type 'DefaultWindow', window renderer 'Falagard/Default' and Look'N'Feel 'WindowsLook/TabButtonPane'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/ComboDropList' using base type 'CEGUI/ComboDropList', window renderer 'Falagard/Listbox' and Look'N'Feel 'WindowsLook/ComboDropList'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Combobox' using base type 'CEGUI/Combobox', window renderer 'Falagard/Default' and Look'N'Feel 'WindowsLook/Combobox'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Listbox' using base type 'CEGUI/Listbox', window renderer 'Falagard/Listbox' and Look'N'Feel 'WindowsLook/Listbox'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/ListHeader' using base type 'CEGUI/ListHeader', window renderer 'Falagard/ListHeader' and Look'N'Feel 'WindowsLook/ListHeader'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/ListHeaderSegment' using base type 'CEGUI/ListHeaderSegment', window renderer 'Falagard/ListHeaderSegment' and Look'N'Feel 'WindowsLook/ListHeaderSegment'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/MultiColumnList' using base type 'CEGUI/MultiColumnList', window renderer 'Falagard/MultiColumnList' and Look'N'Feel 'WindowsLook/MultiColumnList'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Slider' using base type 'CEGUI/Slider', window renderer 'Falagard/Slider' and Look'N'Feel 'WindowsLook/Slider'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/SliderThumb' using base type 'CEGUI/Thumb', window renderer 'Falagard/Button' and Look'N'Feel 'WindowsLook/SliderThumb'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/ScrollablePane' using base type 'CEGUI/ScrollablePane', window renderer 'Falagard/ScrollablePane' and Look'N'Feel 'WindowsLook/ScrollablePane'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Spinner' using base type 'CEGUI/Spinner', window renderer 'Falagard/Default' and Look'N'Feel 'WindowsLook/Spinner'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Tooltip' using base type 'CEGUI/Tooltip', window renderer 'Falagard/Tooltip' and Look'N'Feel 'WindowsLook/Tooltip'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/Static' using base type 'DefaultWindow', window renderer 'Falagard/Static' and Look'N'Feel 'WindowsLook/Static'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/StaticImage' using base type 'DefaultWindow', window renderer 'Falagard/StaticImage' and Look'N'Feel 'WindowsLook/StaticImage'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/StaticText' using base type 'DefaultWindow', window renderer 'Falagard/StaticText' and Look'N'Feel 'WindowsLook/StaticText'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/ItemListbox' using base type 'CEGUI/ItemListbox', window renderer 'Falagard/ItemListbox' and Look'N'Feel 'WindowsLook/ItemListbox'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/ListboxItem' using base type 'CEGUI/ItemEntry', window renderer 'Falagard/ItemEntry' and Look'N'Feel 'WindowsLook/ListboxItem'. (0012E4F8)
28/07/2009 13:11:58 (Std)    Creating falagard mapping for type 'WindowsLook/GroupBox' using base type 'CEGUI/GroupBox', window renderer 'Falagard/Default' and Look'N'Feel 'WindowsLook/GroupBox'. (0012E4F8)
28/07/2009 13:11:58 (Info)    ---- Resource loading for GUI scheme 'WindowsLookSkin' completed ----
28/07/2009 13:11:58 (Info)    Window 'RootWindow' of type 'DefaultWindow' has been created. (02787BD8)
28/07/2009 13:12:01 (Info)    Window 'Background' of type 'WindowsLook/StaticImage' has been created. (0278CEA8)
28/07/2009 13:12:01 (Info)    Assigning the window renderer 'Falagard/StaticImage' to the window 'Background'
28/07/2009 13:12:01 (Info)    Assigning LookNFeel 'WindowsLook/StaticImage' to window 'Background'.

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

Re: Operating System Rendering Issues

Postby CrazyEddie » Tue Jul 28, 2009 17:56

Thanks for testing the samples and for posting the additional information, I'll have to look it over and get back to you a bit later on.

CE.

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

Re: Operating System Rendering Issues

Postby CrazyEddie » Tue Jul 28, 2009 19:24

Well, this all looks reasonably ok to me. The only thing that stood out was the value passed to setAlpha - this should be between 0 and 1, rather than 60, though I'm not suggesting that this is causing the issue.

I do not have any definite cause for this issue. The only remotely likely suggestion I have is regarding the possibility of a missing state initialisation in our renderer code (since the samples work, and these start off from a known set of states - i.e. the defaults - whereas in 'real world' scenarios there are many states that may be set by the app that do not get reset by CEGUI. Why this seeming manifests only on WinXP I can't say.

I guess one thing to ask is whether the app you're hooking at this stage is something you have the source for (such as a test bed) or not - if it is, then you know which states you're setting and can look at the ones we're not re-setting in the renderer code. If it's a 'live' app you're hooking, it could potentially be any render state; are there any tools out there for profiling D3D that can tell you what states are modified from the defaults? (I'm not sure about such things since I generally only use GL these days).

Just a few ideas. Sorry I can't give any definite answer to the issue.

CE.

ReGeX
Just popping in
Just popping in
Posts: 9
Joined: Sat May 02, 2009 02:54

Re: Operating System Rendering Issues

Postby ReGeX » Wed Jul 29, 2009 13:32

Your suggestions do seem logical, but I am able to render other entities which do not use CEGUI with render states manually set. I have tried rendering CEGUI in an identical way, but it still won't work. It can't be the render states as well because I have ran many tests which say that the texture exists and is rendering, but it isn't. You're saying CEGUI does not set any states at all before rendering? If not, is there a way to render each individual component manually? If so, would it be possible to remove these states? The only thing I can see is that the texture is not applying.

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

Re: Operating System Rendering Issues

Postby CrazyEddie » Wed Jul 29, 2009 18:22

ReGeX wrote:You're saying CEGUI does not set any states at all before rendering?

No. I'm saying CEGUI sets some states - pretty much the bare minimum (to reset every possible state prior to rendering every frame would be unfeasible and cause too much of a hit). The issue I think is that something CEGUI relies upon to be set to 'a' is perhaps being set to 'b' by the other rendering being done prior to CEGUI doing it's rendering; this theory is borne out by the fact that the samples are rendering.

If you think maybe some texturing state settings are missing (or maybe set wrong, or multi-texturing enabled, or...) you can set those states off after saving the state block but prior to calling the renderGUI function. If you don't solve it by Friday (tomorrow is my day off from CEGUI), I may have a little poke around and see if there are any 'obvious' candidates.

CE.

ReGeX
Just popping in
Just popping in
Posts: 9
Joined: Sat May 02, 2009 02:54

Re: Operating System Rendering Issues

Postby ReGeX » Fri Jul 31, 2009 03:08

I have not been able to repair the issue, but I have concluded that this is CEGUI-specific. I have tested numerous states, and re-routed texture applications, and all of them had no effect. The textures created successfully, were applied successfully, and it SHOULD render, but it doesn't want to display the GUI elements in XP. I am completely burned out of ideas. I do not believe that the states are missing, are set wrong, or there are multi-texturing issues. I do understand that XP renders things differently, but not to this extent. If it was a problem with states or textures, then it would not display at all in Vista as well, which is not the case. Any help would be appreciated.

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

Re: Operating System Rendering Issues

Postby CrazyEddie » Fri Jul 31, 2009 09:09

I'm only trying to offer some general ideas here to help out. I do not use Windows unless forced to - probably about 1% of the time. On those occasions, I do not use Direct3D unless absolutely necessary - perhaps around 20% of that 1% - so I spend about 0.2% of my CEGUI time with D3D. These days I only have any idea about D3D 9 or above (and even then it's very sketchy!). Obviously back when I wrote that D3D8.1 renderer module my environment was somewhat different, and all the points above were inverted (I only used Windows XP, only D3D, and version 8.1 since that was current at the time).

The facts are that I don't know what your project is exactly. I do not have your code. I do not know what you're hooking into, how you're doing it or why; I have very, very limited information about the situation. Given the information I do have, I must maintain my theory that this is a state related issue is because, as you have clearly seen with the samples, when starting from a known set of states things render fine. As you say, all the resources and such are created fine, so - when taken with the knowledge that the samples ran - what does that leave as possible causes?

CE

Jamarr
CEGUI MVP
CEGUI MVP
Posts: 812
Joined: Tue Jun 03, 2008 23:59
Location: USA

Re: Operating System Rendering Issues

Postby Jamarr » Fri Jul 31, 2009 19:45

ReGeX wrote:I have not been able to repair the issue, but I have concluded that this is CEGUI-specific. I have tested numerous states, and re-routed texture applications, and all of them had no effect.


If the samples work on all machines then it's obviously something you are doing to affect cegui. You say it's CEGUI specific, but how can you really say that when you don't even know what is wrong? That's a fallacy. Also, what states did you test and how did you test them? What does "re-routed texture applications" mean? That you verified that the texture was loaded by rendering onto a non-cegui poly?

The textures created successfully, were applied successfully, and it SHOULD render, but it doesn't want to display the GUI elements in XP. I am completely burned out of ideas.


I have to agree with CE; this definitely sounds like an opengl state issue. I cannot think of anything else that would cause a render to work on one system, and not the next.

I do not believe that the states are missing, are set wrong, or there are multi-texturing issues. I do understand that XP renders things differently, but not to this extent. If it was a problem with states or textures, then it would not display at all in Vista as well, which is not the case. Any help would be appreciated.


This is only partially correct. If it was a problem with the textures, it would likely happen on all systems. However, opengl states do /not/ necessarily produce the same behavior on all systems. Even different video cards from the same company can produce different behaviors; opengl is just a specification - someone (opengl vendors) still has to implement the api, meaning it is very likely for there to be subtle (sometimes even large) differences between implementations.

Just today I had to fix an opengl state problem (when doing rtt for cegui in fact) that had been working fine on 5 different systems for the last 8mo. as soon as we tried the application out on a brand new system a graphical issue arose. the problem was that the state I was managing I had thought to be sufficient (and was on those cards) but for whatever reason on the new hardware I had to figure out an additional state that needed to be managed; it just (apparently) happened to be that on the older hardware it was not needed.
If somebody helps you by replying to your thread, upvote him/her as a thanks! Make sure to include your CEGUI.log and everything you tried when posting! And remember that we are not magicians!

Jamarr
CEGUI MVP
CEGUI MVP
Posts: 812
Joined: Tue Jun 03, 2008 23:59
Location: USA

Re: Operating System Rendering Issues

Postby Jamarr » Fri Jul 31, 2009 22:48

also, since it sounds like you may be using third-party libraries i'll share another example that also happened to me recently. i had updated a third-party library that I was using, afterwhich some graphical (tearing) issues arose. i was managing an opengl state that I thought was sufficient, but actually only accounted for a subset of the settings (i think it only handled the on/off flag, but not the parameters) related to that state. so after updating to the newest version of the library it had apparently started using or changed the way it was using that state, which then led me to find the parameters i had neglected to manage because I previously did not need too.

the point being the opengl state is a very finnicky mechanism; if you do not know what the /entire/ opengl state is in and know how /every/ attribute affects those states you can easily find yourself banging your head against the wall.

one other suggestion, you could try using an opengl tracer or debugger to try and determine what state opengl is in and what gl calls are being made and in what order, check here: http://www.opengl.org/sdk/tools/
If somebody helps you by replying to your thread, upvote him/her as a thanks! Make sure to include your CEGUI.log and everything you tried when posting! And remember that we are not magicians!

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

Re: Operating System Rendering Issues

Postby CrazyEddie » Sat Aug 01, 2009 07:27

@Jamarr: He's actually using MS Direct3D 8.1, though I think 99% of what you said still holds true regardless of the API.

If there are Direct3D tools similar to those available for OpenGL the OP definitely needs to seek those out. Debugging with concrete facts far outweighs debugging with vague ideas, hunches and stuff you just "know" (I find it's usually the stuff I "know" that bites me!).

CE.

ReGeX
Just popping in
Just popping in
Posts: 9
Joined: Sat May 02, 2009 02:54

Re: Operating System Rendering Issues

Postby ReGeX » Thu Aug 06, 2009 15:26

I do apologize for the delay with my responses. Let me start off by saying that, as a test, I did upgrade my D3D engine to DirectX9, preserving all the same render states, texture applications, etc., and it worked perfectly fine. So now I was wondering what it could possibly be. I went back to the DirectX8 engine, and re-tested with the same libraries and the same old error occurred. I was mostly sure it was a problem with the renderer, so I added ExitProcess() statements to see exactly where it was failing; the results were ghastly: it wasn't even calling renderVBuffer()! In fact, it was not calling addQuad or renderQuadDirect. So you were right CE, it was not the renderer.

Continuing my search, I went into the actual CEGUI source with the same ExitProcess() debug statements to assess if it executes methods. I backtraced the method to CEGUI::Imageset::draw, and the results were that it was, in fact, calling the method, but it ran into a problem here:

Code: Select all

void Imageset::draw(const Rect& source_rect, const Rect& dest_rect, float z, const Rect& clip_rect,const ColourRect& colours, QuadSplitMode quad_split_mode) const
{
   //ExitProcess(0); // This calls successfully.
   // get the rect area that we will actually draw to (i.e. perform clipping)
   Rect final_rect(dest_rect.getIntersection(clip_rect));

   // check if rect was totally clipped
   if (final_rect.getWidth() != 0) // <---- this fails, thus preventing the render.
   {


With this commented out, I would have assumed that it would have rendered. In fact, I confirmed now that the renderer functions from before (addQuad, etc.) were all calling, yet things were not being rendered! So now, to conclude this testing, I had gotten the values of source_rect.Width/Height, dest_rect, and clip_rect. The widths and heights were either 0 or an indeterminate number (x/0). I have no idea why this is specific to Windows XP, but I can assure you it's much more than a "hunch" or render states.

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

Re: Operating System Rendering Issues

Postby CrazyEddie » Thu Aug 06, 2009 18:18

Aha, right. This is real hard and useful information. Thank you.

If all the destination rects for image rendering are coming in as totally clipped (as evidenced by the line you highlight), this would seems to indicate - for whatever reason, I can't explain why - that the renderer is not picking up the display or host window size correctly. You can inform the system of the display size manually (if only for testing) by calling the DirectX81Renderer::setDisplaySize function on the renderer.

CE.

ReGeX
Just popping in
Just popping in
Posts: 9
Joined: Sat May 02, 2009 02:54

Re: Operating System Rendering Issues

Postby ReGeX » Thu Aug 06, 2009 18:35

Excellent; works perfectly on XP now! Thank you for all your help, and I do apologize any accusations I might have unintentionally implied towards your DirectX81Renderer.


Return to “Help”

Who is online

Users browsing this forum: No registered users and 25 guests