2019-04-02 07:01 AM
I have a display with 600 x 1024 pixels (portrait) and some screens with a full sized images as background.
For changing screens, I use the in the TouchGFX Designer (4.10) included action "Change Screen", transition "Slide" and transition direction "East".
The transitions between the screens is not fluently and jerks.
How to avoid this? Are there any examples with such a scenario?
2019-04-03 12:49 AM
Hi @WPrec,
Is this on the simulator or on target? What is the bitdepth of the application? You're moving a lot of data with the slide transition, potentially, with high resolution displays. It may not perform well at all depending on your configuration.
/Martin
2019-04-03 01:43 AM
Hi Martin,
thank you for answering.
The problem is on the target and I'm using 24 bitdepth. I'm looking around and read something about "Animation Storage". But I don't know, if it is set or how to set?
Is this the right direction or what could I do else?
2019-04-03 01:58 AM
Hi @WPrec,
What is your target hardware configuration? I would not expect a slidetransition in that resolution to perform nicely, especially in 24bpp. Even 800x480 on F769i-disco does not perform well in 24bpp.
In your BoardConfiguration.cpp you will find a call to hal.setFrameBufferStartAddress().
To enable animationstorage (Used by transitions like slide) you can use the following arguments.
virtual void setFrameBufferStartAddress(void* adr, uint16_t depth = 16, bool useDoubleBuffering = true, bool useAnimationStorage = true);
2019-04-03 06:11 AM
Hi Martin,
thank you. I tried your suggestions and it performed a little bit better. But not as smooth as it should be.
Is this generally a problem with full-sized pictures? Is there any other solution path (e.g. set resolution to 8bit or something else)?
2019-04-04 01:15 AM
Try setting your bitdepth to 16bpp - You should see further improvement because you're moving less data. It's not a general problem with full-sized pictures, it's a combination of bitdepth, size of framebuffer (and thus size of image), hardware specs. You could also try reducing the speed of the slide transition.
Ultimately, there comes a point where you simply cannot perform better. We are looking into using Layers to do these transitions instead to improve speed. You could also use the Cover transition (only moves a part of the framebuffer until the last tick where it moves everything - so it may slow down towards the end)