簡體   English   中英

LibGDX:如何可重新確定opengl上下文是否丟失?

[英]LibGDX: How to relibably determine if the opengl context got lost?

在openGL上下文丟失后是否有回調通知?

我已經嘗試過ApplicationListener / Game.resume()但是(在Android上)有些情況下,盡管上下文沒有丟失,卻會調用resume()。 除了上下文確實丟失的一些其他情況,但是根本沒有調用resume()。

什么是可靠地確定openGL上下文是否在libGDX中丟失的正確方法?

對於具有托管和非托管/動態紋理的應用程序,沒有直接的解決方案 這篇文章解釋了為什么你不能真正得到一個觸發器。 我建議使用AssetManager,以便您可以在ApplicationListener的resume方法上更新資源。 您應該訪問並閱讀這兩個鏈接。

您首先不可能有上下文丟失。 有關更詳細的說明,請參閱此文章 但即使你確實有上下文丟失(這只會發生在運行Android 2.x的非常舊的Android設備上),那么libGDX會為你處理這些並為你恢復資源。 你不必為此做任何事情。

你更有可能“認為”你有上下文損失,而實際上你有另一個問題。 例如,人們認為他們有上下文丟失的最常見原因是他們使用static資源。 例如,通過使用具有延遲初始化的單例模式。

當然,沒有看到任何代碼,這只是猜測。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM