Download

Memory cost of FlipBooks going insanely high? Making animated Title Screen etc.

I have a 300 frames long 2D Flipbook which I use in the game titlescreen as the main title. I made the frames for it in After FX, where I could animate it in the way I wanted. It looks good and runs well on our machines, but what worries me is “TEXTURE STREAMING POOL OVER 3000MB”, which appears only when the animated flipbook is visible… Which suggests, that the 300 frames of FullHD+alpha PNG-flipbook is spending probably over 3full gigas of memory. Which probably will cause some issues on lower end machines…

Can I help this with texture settings, etc? I really would like to use AfterFx to make the screen, as I can animate and set effects for it much better there than in the UE Widget Editor.

What i do for those cases is (assuming you can compress): Ensure that the spritesheet is of Power of 2 size, you can use DXT (i think it’s called) compression, use bilinear or trilinear filtering to combat the little quality loss of the compression, you can see changes of 60MB to 15MB, so give it a try
The rate of size is pretty big with that config.

@Manatee Just one question to clarify: Does it really need the frame to be FullHD in size? Does the effect cover all the screen?

Just make an FMV and play it through a widget that covers the screen… If you want to have it like an animated background, but then still have selection gfx for things like option selection, as you scroll up and down over things, then do that in it’s own layer on top of it. It’s ridiculous to expect decent performance out of 300 frames of HD PNG+alpha…

Thanks, ill give it a try. I didnt think of flipbooks requiring all of their frames worth of performance, since 1 texture is visible at a time anyway. But guess it makes sense that all frames need to be loaded in Vram all the time anyway.

And uncompressed UI-sprites seem to be the heaviest. I tried to make them Power of two 1024 with compression and they would fit memory, but the quality is way too low, especially when the rest of the screen is 3d grahics and resolution is 1440+.

Any recommendations for fmv formats? I tried avi and unreal media files couldnt open them, then .Mov but it displayed black. Ill get them to work Im sure, but before I do more bad choices, I better decide a good format from the beginning and use it.

The way how I have the Main Title appear on the screen uses full screen, so its required. After the initial 1.5 seconds of appear animation, it stays on the screen, looping a smaller 10s long animation, at which point the Title covers maybe 1400X1000pixels.

Cant get the videos playing with Alpha…
Currently the flow is :
1)avi with alpha, which I import to UE4.
2)I make a media player from it.
3)from the output of the media player, I set up a Media Texture output
4)I make a new material from this Media Texture output
5)I set the material to be User Interface, and set it to transulucent, colours to final color, alpha to opacity
6)I have a widget blueprint, where I have an Image, with the above material set into it.
=black screen

I got the videos with alpha working. But seems that it wont be a solution either. There is a hiccup whenever playing a media file, which makes frame perfect transitions between video clips to another impossible. In my case it means, that when the “TITLE APPEARS”-animation finishes and “TITLE LOOPS”-animation starts, there is a nasty pause that kills the smootheness and makes the whole scene messy and clunky. I guess I have to forfeit the idea of using large sized 2D effects together with 3D, and just make a 3D skeletalmesh of the Title and animate it in Maya. Its not the stylistic choice I wanted, but at least it will look professional and doesnt require Gtx 1080ti.

If I were you, I’d still just redo the entire approach with it into something less resource and performance intensive. In any form of creation or development, if you shoot for the stars, you’ll be disappointed when you only land on the moon.

Yeah. What I tried to do seemed rather simple and basic, -it was just animated text on top of normal 3D map, but simplest things in game development are often not the wisest. I cant make the TITLE APPEARS ON THE screen animation the way I wanted, but rest of the game matters more anyway. Now Im making a simple plane with a rig, on which I have the title as a texture. Looks 2D and I can give it complex animations too. Its hard to give it that flat loot since its affected by post processing pipeline, but ill find a way to make it good enough.

I am using media files for studio logos and perhaps something else too, so any recommendations for movie file types? I have the Adobe Encoder.

from my expirience, currently mp4 plays best, but, it is not frame accurate, and no alpha, so it ends with playing 2 mp4 h264, one with color, and second with alpha.
another option is imagemediasequence, wich need media player, and can play and !cache!! your whole png sequence, just need to setup enough cache size in project imgmedia settings, this way it will be frame accurate and cached to memory, and this whats needed to loop it without the hickup