Nested window draw incorrectly when frame resized

Forum for general chit-chat or off-topic discussion.

Moderators: CEGUI MVP, CEGUI Team

Armitage1982
Not too shy to talk
Not too shy to talk
Posts: 43
Joined: Wed Dec 10, 2008 14:15
Location: Belgium

Nested window draw incorrectly when frame resized

Postby Armitage1982 » Fri Feb 13, 2009 19:41

Hi

I have several windows nested in this order (image 1):

- Framewindow
-- ScrollablePane (which size relative to the FrameWindow)
---- StaticImage (a tile set for 2D game)
----- StaticImage (a covering grid)

When I change the size of my FrameWindow, the 1 staticImage (tileset) appear correctly while part of the "discovered" grid not (image 2).

I already try to requestRedraw / Z ordering every windows but the only way to show the missing grid is to move the full Framewindow (image 3).

Any idea ?

Thanks

Image
Image

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

Postby CrazyEddie » Mon Feb 16, 2009 09:53

Hi,

I'm not sure what's going on there, so I'll have to create a little test app and get back to you - hopefully a little later today :)

To assist in my testing, how is the formatting on the Grid static image set? I'm assuming tiled?

Other than this issue, it looking really good :D

CE.

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

Postby CrazyEddie » Mon Feb 16, 2009 20:17

Ok, I made a contrived example which attempted to recreate a similar situation to what you describe, however I was not able to recreate the issue :?

Which version of CEGUI are you using? My test was with 0.6.2.

I'll describe the arrangement I used in the test so you can see if it differs from what you're currently doing - which might indicate where a possible issue may lie.

I had the frame window, and added the scrollable pane using relative mode sizing. To the scrollable pane I added the first StaticImage, which was specified using absolute co-ords (which would be position (0,0) and the size as per the image loaded into it). The overlay StaticImage was then added to the first StaticImage at position (0,0) and relative size of (1,1) so it stays the same size as the parent StaticImage. The HorzFormatting and VertFormatting for the overlay StaticImage were set to Tiled.

CE.

Armitage1982
Not too shy to talk
Not too shy to talk
Posts: 43
Joined: Wed Dec 10, 2008 14:15
Location: Belgium

Re: Nested window draw incorrectly when frame resized

Postby Armitage1982 » Sat Dec 12, 2009 00:05

From the version 0.7.0 (I know 0.7.1 is out but there is no wrapper currently available) StaticImage inside the scrollpane subscribes to a Mouse Event (EventMouseButtonDown).
But as soon as I scroll down it's content (and left the initial view) the StaticImage isn't triggered any more :(

Everything was working great in 0.6.3 but now I'm lost.
I only add

Code: Select all

<Property name="NonClient" value="True" />
in both horizontal and vertical Scrollbar in order to fix some displacement (as proposed).

I try then to focus on the scrollpane rather than it's content by giving it the Mouse Event, but this time I got the inverse cases : the scrollpane can receive event everywhere except in the first visible area.

Can you confirm my problem ??

Armitage1982
Not too shy to talk
Not too shy to talk
Posts: 43
Joined: Wed Dec 10, 2008 14:15
Location: Belgium

Re: Nested window draw incorrectly when frame resized

Postby Armitage1982 » Sat Dec 12, 2009 01:34

Howm... sorry :-(

- Bug Fix: ScrollablePane issues:
- Broken hit-testing of content initially outside the view pane (this was broken in 0.7.0 when inner-rect fix was made).
- Broken relative co-ords of added content (incorrectly used size of content pane as base rather than ScrollablePane inner-rect).
- Broken positioning of (0, 0) point of content pane (prevented content from being offset correctly).


I didn't see this for the next 0.7.1

I will have to wait the next wrapper version for my language :(

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

Re: Nested window draw incorrectly when frame resized

Postby CrazyEddie » Sat Dec 12, 2009 09:38

Hi,

If the wrapper is dynamically linked (i.e you have the CEGUI dll files), there is a possibility that you could drop-in the updated dlls and have things still work (obviously new functionality would not be exposed, but you should get the bug fixes). I can't promise this will work, since I can't remember whether there were changes that would break the binary interface - generally I try and avoid it if I can, so it might be worth a punt (save your old dlls though, in case yo have to restore them!).

CE.

Armitage1982
Not too shy to talk
Not too shy to talk
Posts: 43
Joined: Wed Dec 10, 2008 14:15
Location: Belgium

Re: Nested window draw incorrectly when frame resized

Postby Armitage1982 » Sat Dec 12, 2009 13:21

Brucey (the man behind the wrapper) is using SVN since BlitzMax can compile C/CPP with GCC.
Maybe he will update soon or later (would be cool :).

it seam's that passing from CeGUI 0.6.3 to 0.7.0 slowdown my runtime (From 320 FPS to 260~230 FPS). It's strange because I thought that 0.7.0 was faster.
I will wait the last subversion to look at this further.

Thanks a lot CE :)

brucey
Just popping in
Just popping in
Posts: 10
Joined: Fri Sep 26, 2008 09:38
Location: Solihull
Contact:

Re: Nested window draw incorrectly when frame resized

Postby brucey » Sat Dec 12, 2009 16:02

If the wrapper is dynamically linked...

Alas, it's a static build, compiled directly by the language tools (BlitzMax using gcc). This just makes it easier for the developer to use on the 3 platforms that it supports (Win32, OS X, and Linux).

Hopefully, now it's synch'd with the the latest code it will work properly.

Armitage1982
Not too shy to talk
Not too shy to talk
Posts: 43
Joined: Wed Dec 10, 2008 14:15
Location: Belgium

Re: Nested window draw incorrectly when frame resized

Postby Armitage1982 » Sat Dec 12, 2009 17:00

Hopefully, now it's synch'd with the the latest code it will work properly.

Humm ? :o

Need to check something, now !

[EDIT]
Work great !
Except the fact that my game is now ~90 FPS slower :(

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

Re: Nested window draw incorrectly when frame resized

Postby CrazyEddie » Sat Dec 12, 2009 17:34

I'm not 100% sure what's going on with your FPS drop. Did you add

Code: Select all

<Property name="AutoRenderingSurface" value="True" />

to the FrameWindow definition in the looknfeel file?

CE.

Armitage1982
Not too shy to talk
Not too shy to talk
Posts: 43
Joined: Wed Dec 10, 2008 14:15
Location: Belgium

Re: Nested window draw incorrectly when frame resized

Postby Armitage1982 » Sun Dec 13, 2009 17:02

CrazyEddie wrote:I'm not 100% sure what's going on with your FPS drop. Did you add

Code: Select all
<Property name="AutoRenderingSurface" value="True" />


to the FrameWindow definition in the looknfeel file?


No Sir,
I don't have that property set in my looknfeel.
There is a link to my looknfeel if you want to have a look : http://www.mediafire.com/?mjdz2tf5imb
And a link to my CEGUI.LOG : http://www.mediafire.com/?flwtqmm1nyj
I see a few error listed but all in regard to a Property named 'NonClient' non available in the set at cegui/src/CEGUIPropertySet.cpp(124)

I try again with 0.7.0 and 0.7.1 but 0.6.3 is 90FPS faster in my case :(
And I don't have so much windows displayed at that very moment (only 2 maybes with around 10 sub objects).

Thanks :)

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

Re: Nested window draw incorrectly when frame resized

Postby CrazyEddie » Sun Dec 13, 2009 17:24

Presuming the wrapper emits the CEGUI.log, can you post the part that's indicated, please

I don't have taht property set in my looknfeel.

Ummm. Did you try adding it? :mrgreen:

It's quite strange. There are still many optimisations possible for the new renderers, though even as they are, usually you should expect no worse performance from the newer renderer, clearly what you're describing is a significant drop. Out of interest, which graphics hardware are you running?

CE.

Armitage1982
Not too shy to talk
Not too shy to talk
Posts: 43
Joined: Wed Dec 10, 2008 14:15
Location: Belgium

Re: Nested window draw incorrectly when frame resized

Postby Armitage1982 » Sun Dec 13, 2009 20:44

Ummm. Did you try adding it? :mrgreen:

I though I had edited that typo :mrgreen:
EDIT Hummm ok ! It's a boosting features. I will try this (but I already read it can have a lot of drawback ?).

My config is AMD Athlon 64x2 Dual Core 3800+ 2.01Ghz
1Go RAM - NVIDIA GeForce 7600 GS

I know I'm using a wrapper but I'm nearly sure nothing really big as changed in that.
I'd like to try the new tags in the new parse system but maybe not if I need to trade such amount of speed :s

I don't know well how I can help you with this one...

Armitage1982
Not too shy to talk
Not too shy to talk
Posts: 43
Joined: Wed Dec 10, 2008 14:15
Location: Belgium

Re: Nested window draw incorrectly when frame resized

Postby Armitage1982 » Sun Dec 13, 2009 21:07

It is worst :|
Adding

Code: Select all

<Property name="AutoRenderingSurface" value="True" />
to my FrameWindow Looknfeel and I'm loosing 120 FPS and get every problem people already mention in the forum plus the fact that I still need to rework every layout to support the new inner rect changes (which is a lot of work).

Well... I think I have no other choice than put back CeGUI 0.6.3 :|

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

Re: Nested window draw incorrectly when frame resized

Postby CrazyEddie » Mon Dec 14, 2009 09:42

Armitage1982 wrote:I already read it can have a lot of drawback ?


Armitage1982 wrote:... and get every problem people already mention in the forum ...


Can you please qualify these statements a little? I am aware of only a single issue (the alpha blend one) relating to the use of texture targets, so if you could indicate all the other issues that everybody has, that would be great (because I've seemingly missed their posts).

Thanks

CE.


Return to “Offtopic Discussion”

Who is online

Users browsing this forum: No registered users and 3 guests