簡介
本文我們將會(huì)學(xué)習(xí)在Unity渲染一幀的幕后會(huì)發(fā)生什么,渲染時(shí)會(huì)發(fā)生哪種類型的性能問題,以及怎樣去解決和渲染相關(guān)的性能問題。
閱讀本文之前,理解沒有一刀切的方法去改進(jìn)渲染性能問題是至關(guān)重要的。渲染性能被我們游戲中的很多因素影響并且高度依賴我們游戲運(yùn)行的硬件和操作系統(tǒng)。最重要的是我們通過調(diào)查,實(shí)驗(yàn),以及精確分析性能檢測的結(jié)果來解決性能問題。
本文包括了一些最常見的渲染性能問題的信息,以及解決方法和一些擴(kuò)展閱讀資源的鏈接。很可能我們的游戲有一些問題本文沒有覆蓋。盡管如此,本文仍然會(huì)幫助我們理解我們的問題,給我們一些基礎(chǔ)知識(shí)使得我們更有效的去查找解決方案。
渲染的簡要介紹
開始之前,我們快速簡要的看看Unity渲染一幀時(shí)發(fā)生了什么。理解事件流和事情發(fā)生的正確時(shí)期將會(huì)幫助我們理解,研究,并且努力解決我們的性能問題。
備注:在本文中,我們將使用“object”,指代我們游戲中被渲染的對象。任何帶著渲染組件的GameObject都講稱作object。
基本上,渲染流程如下:
-CPU計(jì)算出什么東西需要被繪制,并且怎么被繪制。
-CPU給GPU發(fā)送指令。