簡體   English   中英

將應用程序置於前台時,是否需要重新創建MTLBuffer,MTLTexture或其他金屬資源?

[英]Is necessary to recreate MTLBuffer, MTLTexture or other metal resources when the app is brought to foreground?

我正在重構cocos2d-x的渲染層,新引擎將在iOS上使用Metal。 在原始版本中,當應用程序長時間停留在后台后被帶到前台時,cocos2dx將重新創建所有緩沖區和紋理。

我是Metal的新手,我的問題是:是否需要將MTLBuffer,MTLTexture和其他Metal資源重新創建為GLES?

當應用程序從后台狀態恢復為活動狀態時,無需重新創建Metal資源。

另一方面,由於紋理和緩沖區可能很大,並且由於它們在整個生命周期內都駐留在系統內存中(iOS具有統一的內存體系結構,並且缺少分頁系統),因此您可能希望釋放部分或全部您的進入后台狀態時的金屬資源,以減少當另一個應用程序需要其使用的內存時您的應用程序被終止的可能性。 在這種情況下,如果/當應用從后台狀態返回時,您將重新創建這些資源。

暫無
暫無

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

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