Существует два типа плагинов;оконный и без окон.FireBreath поддерживает плагины без окон (верните true из функции isWindowless в вашем классе плагинов. Если вы используете плагин без окон, то вы можете наложить HTML поверх плагина. Если вы делаете плагин с окнами, то вы не можете.
Однако это не так просто, как кажется. Если вы прочитаете вокруг, вы обнаружите, что производительность flash с wmode = transparent не так хороша, как с обычным wmode, и причина в том, чтоЧтобы рисовать без окон, вы должны рисовать только по указанию браузера. К счастью, вы можете попросить браузер попросить вас перерисовать (в FireBreath, вызвав InvalidateWindow для объекта PluginWindowlessWin, который вы получите в качестве окна).
К сожалению, в режиме рисования без окон вы не получаете hWND - просто hDC, и он действителен только на время события рисования (RefreshEvent в FireBreath). Как я могу определить, вы не можете создать openglконтекст рисования на hDC, который может измениться или исчезнуть между вызовами рисования,И поэтому единственный способ, которым я видел, как плагин opengl работает с рисованием без окон в Windows, - это рисовать вне экрана, а затем использовать GDI для перетаскивания битов в hDC.
Вот пример, который рисует сырой битовый массивиспользуя любой тип рисунка (с окном или без окна), который может помочь вам укрепить ваше понимание того, что я пытался объяснить выше: https://gist.github.com/1068352