我正在尝试将网站作为用户界面嵌入我正在使用 JxBrowser 制作的游戏中。问题是,保持浏览器在后台运行会导致游戏的FPS从120降到20.
由于我需要从浏览器渲染BufferedImage,我不认为我可以切换到HeavyWeight模式以获得GPU加速(如果可以,请纠正我)。
计划是,浏览器仅在某些情况下有效(例如,玩家正在查看界面)。 我想知道是否有任何方法可以禁用浏览器,并在需要时恢复到以前的状态?
P.S。我注意到了browser.dispose()方法,但是在禁用之前不会将浏览器恢复到之前的状态。
答案 0 :(得分:0)
JxBrowser不提供“禁用”浏览器的任何API。
JxBrowser使用CPU在轻量级模式下执行屏幕外渲染。每次加载的文档发生变化(例如DOM更新等)时,JxBrowser都会在内存中重新呈现网页内容。 可能这是FPS下降的根本原因。
我建议您找到在用户界面中显示更多静态内容的方法。
另外,请看下面的文章,也许加速渲染有助于减少此问题: https://jxbrowser.support.teamdev.com/support/solutions/articles/9000104965-accelerated-lightweight-rendering