博客 / 詳情

返回

MuMu模擬器運行一段時間後Device.Present耗時突然上升

1)MuMu模擬器運行一段時間後Device.Present耗時突然上升
2)​如何在運行過程中獲得温度信息
3)Input System鼠標更換主按鍵的Bug
4)如何禁止Unity向https://config.uca.cloud.unity3d.com發送設備信息


這是第347篇UWA技術知識分享的推送,精選了UWA社區的熱門話題,涵蓋了UWA問答、社區帖子等技術知識點,助力大家更全面地掌握和學習。

UWA社區主頁:community.uwa4d.com
UWA QQ羣:465082844

Platform

Q:MuMu模擬器運行一段不固定的時間後Device.Present耗時突然上升,其中看Profiler裏的有一個加載的信號量等待時間很長,不明白其中原因,想問問是否有朋友可以幫忙解釋。

下圖是用Profiler記錄到的一個過程:

使用的引擎版本:Unity 2019.4.28f。

MuMu模擬器嘗試了32位和64位的多個版本都能復現這個問題,真機和其它模擬器沒有遇到。

我們對比相同引擎版本的另外一個項目,發現以下設置似乎會影響這個問題,還不是非常確定,説不確定是因為兩點:
1. 這個問題發生時間不確定;
2. 在一個同事的模擬器上只需要將BlitType設置為Always就沒有遇到上述問題,而另外一個同事的模擬器需要設置BlitType為Always並且禁用Optimized Frame Pacing。

A1:我也碰到了相同的問題,目前好像只有關閉Optimized Frame Pacing有效。

感謝JackCheng@UWA問答社區提供了回答

A2:建議嘗試,隔一段時間就強制設置一下限幀:

IEnumerator Start()
{
    yield return new WaitForSeconds(10);

    Application.targetFrameRate = 31;

    Application.targetFrameRate = 30;
}

感謝littlesome@UWA問答社區提供了回答

A3:也遇到完全一樣的問題。感覺模擬器閒置一邊更容易出現(一般十分鐘內),一直有操作的話反而不太容易(大約需要一個小時)。

一般情況下,遊戲卡死往往模擬器也會很卡,這種卡的情況下,模擬器幾乎沒啥影響,可以正常開其他東西。懷疑模擬器對Google的這個Optimized Frame Pacing支持不太好,換過更高版本的Android SDK也是無效。

打開這兩個選項,的確對手機端的體驗有一定提升。

現在想要探索的解決思路是判斷Andorid系統版本比較低的情況下,運行時關閉 Optimized Frame Pacing。

目前還沒找到運行時關閉的辦法。

感謝leviyuan@UWA問答社區提供了回答

Performance

Q:請問如何在運行過程中獲得温度?我需要做個功能,如果温度高就降幀和降畫質。

A:温度統計的規則還是比較複雜的,因為不同的設備獲取到的温度值的數量很不一樣(有些只能拿到電池温度,有些可以拿到20多個温度,包含電池、各個CPU、多個GPU、各種傳感器等等),所以不同工具雖然獲取機制差不多,但算出來的温度應該都會有些差異。

然後工具獲取到的温度值和手感温度大多數情況下是不對應的(會出現温度值高,但手感温度不高的情況),所以不太建議把獲取的温度值作為準確的發熱依據,最好還是用FPS之類可以準確統計的值。

該回答由UWA提供

Script

Q:問題描述:把鼠標右鍵綁定一個動作名Cancel,此時點右鍵時能收到事件,然後在設置裏把鼠標的主按鍵換成右鍵,此時我們的預期是點左鍵會收到事件,點右鍵收不到事件,但是在大部分電腦上還是右鍵收到事件Cancel。

臨時解決方案:鼠標按鍵功能不通過Input System實現,用Input.GetMouseButtonDown來實現。

Unity版本:2020.3
Input System版本:1.3.0
系統:Windows10,Windows11

大家有沒有遇到過這個問題,或者有沒有解決方案呢?

A1:可能是你的鍵位映射沒有設置好。正常情況下有一個默認鍵位設置,就是你們原本的。然後外層還有一層供修改的鍵位設置。一般操作時操作可修改的鍵位設置。

感謝曼華@UWA問答社區提供了回答

A2:Input System的思路是把代碼實現的功能改成配製實現,所以運行時不應該再去修改設置,還有一點就是相同的配製在不同電腦上的表現不一致,如果上層的功能依賴一個不穩定的底層,上層是沒有辦法修正的。

感謝題主李偉@UWA問答社區提供了回答

Platform

Q:Unity轉微信小遊戲,發現啓動的時候會向https://config.uca.cloud.unity3d.com發送請求,影響啓動時間。

有沒有辦法關掉,版本2019,2021。

A:發佈設置裏看看有沒有Disable HW Statistics這樣的關鍵字。

感謝李偉@UWA問答社區提供了回答

封面圖來源於網絡


今天的分享就到這裏。生有涯而知無涯,在漫漫的開發週期中,我們遇到的問題只是冰山一角,UWA社區願伴你同行,一起探索分享。歡迎更多的開發者加入UWA社區。

UWA官網:www.uwa4d.com
UWA社區:community.uwa4d.com
UWA學堂:edu.uwa4d.com
官方技術QQ羣:465082844

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.