Jump to content
  • Advertisement
Sign in to follow this  

Flash rendering trickery?

This topic is 2393 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

In my day job, I make an app to render flash. To allow control and get feedback, this is done in a plain old WebBrowser control in a plain old borderless, full-screen form. Unfortunately, a new requirement is that we show multiple flash files that are supposed to fit together. No, we can't stitch the flash files together... that'd be too easy.

The problem comes when we have 4+ files in a single window. Currently on transition, we call out to javascript to replace the flash in-line in the dom and position them correctly. Has to be done this way or flash leaks GDI resources. All of this is done in a hidden control behind the currently playing screen.

When each movie loads, it triggers an event. Once all of the events are triggered, a master event fires off to C#, which flips the browser controls. This flipping is done literally by:

this.backgroundBrowser = browserTwo;

...and a second handler that does the reverse for the other browser.

When there are 4+ movies on screen (give or take based on machine performance, movie size, etc) they don't visibly all show up at once, even though the control should. The movies are drawn onto the screen one at a time, with the old control showing in the un-redrawn parts.

In addition to showing flash, the app is doing a pile of small other tasks. I've done my due diligence about making those tasks infrequent and low impact. I've bumped the process and the main form thread's priority. Short of 'hiding' the background control offscreen instead of Hide/Show or doing big content changes that business won't allow I've pretty much run out of ideas.

Any ideas for things to try so that the movies draw all at the same time? Questions about the setup that can help determine possibilities?

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!