Unity3D性能優化-美術資源製件規範

轉自:https://www.cnblogs.com/wwhhgg/p/12704216.html

 

  • 一、場景模型製作規範:

  1. 同屏地表面數限制在3萬面以內,要充分考慮鎖定視角的因素,看不到的模型背面可以儘量簡單化,離可行走區域遠的建築模型,都可以做成低模,因爲是不會走近看的。
  2. 同屏地表drawcall限制50-70個(包含動態建築),動態建築可在地表製作測試完擺放效果正確後再單獨輸出,提交時不能出現在場景地表裏面。
  3. 資源合併規則:區域貼圖合併、區域網格合併、相同材質合併
  4. 儘量勿用unity自帶的草對象,應該用刷地表的草紋理
  5. 場景大建築和特效資源獨立,不用放地表,由技術動態控制
  6. 過大的地表,例如超過150米(15000像素),可以通過切割地表方式輸出,程序動態加載
  7. 刷怪的區域以及玩家戰鬥的區域儘量是平緩的,否則打怪放技能時效果不好控制,並且不宜放小建築和動態建築,影響性能。
  8. 場景模型和地表儘量少用透明貼圖,同個場景的透明貼圖儘量在一張紋理
  9. 不開啓實時燈光,全部效果用後期烘焙的方式實現
  10. 每個場景需製作行走區域面片,除地表範圍外,高度也必須和地面一致,最後加mesh碰撞體
  11. 紋理尺寸優先用256或512,最大1024,以1024的計算,一個場景紋理個數正常控制在兩張以內
  • 二、角色模型製作規範

  • 注意問題:
  1. 骨骼數量過量導致的影響:每根骨骼都是一個獨立的整體,當父骨骼運動時,會帶動子骨骼運動,這個運動過程都是需要實時去計算的,而遊戲內場景生物基本都處於運動狀態下,導致骨骼的計算一直在持續進行,骨骼越多導致由計算引起的性能消耗更大。
  2. 模型面數過量導致的影響:每個模型的面都是獨立的一個三角形,而每個三角形及其貼圖區域都是需要渲染的,面數越多導致渲染的消耗越大。
  • 設置和明確數值:
  1. 主角1500面以下,小怪500-800面。
  2. 主角骨骼控制在40根以下,小怪儘量20根左右。
  3. 貼圖控制在1024以下,也可以是512和256,看具體情況選擇。
  4. 新手階段,是幾個職業的裝備放一起。
  5. 高級階段,一個職業的幾套裝備放一起。
  6. 主角貼圖一般控制在四到五張左右
  • 以常規2.5D手機遊戲同屏3萬面的標準爲例
  1. 掛機場景,小怪12個,角色10個,需要限制的面數標準爲,普通怪物800,角色2000。
  2. 當在BOOS地圖時,boos規格可放開一點,但都不能超過3000,這時支持角色13個。
  3. 在功能場景,同屏出現NPC比較少,在需要表現的效果時候,可以放開面數,但儘可能不超過2000,這時可支持同屏5個NPC, 10個角色。
  4. 以上只是一個通用計算,除了場景對象模型外,還有翅膀坐騎寵物,還有UI和特效等,由於會做屏蔽機制,只顯示主角的,這些會佔一小部分的消耗。我們在製作時,必須以這個標準,看需要的效果可以上下浮動,但掛機的小怪不能超過1000,同屏不大量出現或者劇情怪物以及坐騎、夥伴、寵物、翅膀等可以放開到1500,NPC不能超過2000,角色不能超過2500,boss不能超過3000。
  • 骨骼規格
  1. 對掛機小怪的限制也是最高的,不能做太多的效果表現,要用最簡單的骨骼組成,25根骨骼是最佳配置,最多不能超過30根。
  2. 劇情怪和精英怪以及夥伴、寵物、坐騎、翅膀等,看效果可放開到40。
  3. NPC需要表現效果的,都不能超過40根。
  4. 主角加上飄帶和頭髮等需要效果的骨骼,最大不能超過50根,可支持三條骨線,一條三根骨骼的飄帶和兩條骨線,一條三根骨骼的頭髮。
  5. Boss體型較大,需要做真實效果,可以放開到60根,但包括各種身上的附帶物。
  • 三、動作製作規範:

  1. 主角:普攻技能動作,限制在20幀以下;非普攻技能,限制在30幀以下
  2. 非主角:待機和跑步限制在8到10幀,休閒可放開
  • 四、特效製作規範:

目前特效一般有兩種模式,一種是發射粒子系統,一種是直接模型加u3d自帶的動畫系統。

總體而言就是控制繪製面積控制繪製批次控制製作動畫的大小。下面是製作的時候應該注意問題:

  1. 首先要確定消耗的時間大部分是在第一取決於你的繪製面積,然後是粒子數目
  2. 不能用很多很透明的,面積很大的疊加,比如雲的效果,即使你的粒子數目少,比如你的面積超級大,一個粒子就是一個屏幕大小,然後疊加了好幾個,那麼繪製壓力會特別大
  3. 對於粒子發射mesh的,相當於一個mesh就是一個批次,所以對於這個要嚴格控制數量
  4. 對於一個技能特效沒有嚴格的控制多少個粒子系統,畢竟這個跟時長有關係,但是還是儘量能精簡。比如對於主角色同一時間最好控制在存在12以內存在的,有些複雜的可以往上加一些。
  5. 千萬不能出現比如一個技能裏面有30個粒子系統,很多粒子系統是因爲alpha變爲0看不到,而是要做到在那個時間點是0個粒子。因爲alpha爲0一樣會進行繪製,只是看不到效果而已。
  6. 製作粒子系統的時候,由於粒子系統本來帶有很多動畫。比如,千萬不要去k顏色的幀,因爲粒子系統本身自帶就有,這樣會增加animator文件大小,初始化會多初始化很多數據。
  7. 如果是粒子系統自帶的動畫數據就用粒子系統自帶的調,多k幀會增加初始化時間。
  •  設置和明確數值:
  1. 單個發射器的最大粒子數不得超出12個,一般8-9個即可;
  2. 極限20個粒子以內(僅限於特殊需要全屏或者整個特效只有10個粒子系統以內的,單個粒子最大數量可以接近極限)
  3. 禁止粒子系統發射複雜模型(用到的特效模型總頂點數不得超過300個頂點且注意模型在不給頂點透明的情況下,UV數不得超過1套);
  4. 粒子系統只准用默認自帶的particle類shader
  5. 禁止使用超級粒子發射器,即粒子系統發射粒子系統
  6.  粒子系統scaling mode必須爲Hierarchy
  7. Cast shadow .Receive shadows. light probes及reflection probes保持關閉
  8. 貼圖尺寸128以內序列圖256 能用小貼圖的儘量用小貼圖;貼圖格式用png或者tga;貼圖分辨率只能有16, 32,64 ,128等這種,不要有類似76X129這種奇怪的分辨率。
  9. 特效製作原則儘量用模型K動畫去做能不用粒子系統的儘量不用粒子去表現(對於一次性爆炸的模型動畫必須K Mesh Renderer Enabled的動畫不能只靠color的透明度去控制徹底消失,切記)
  10. 一次性發射的粒子系統,最大粒子數量和爆發粒子數量要保持一致。

 

  1. 特效裏的模型保證紅框內的選項,一個特效模型只能用一個材質球;

  1. 導入model下的模型文件,屬性面板要保證紅框內的選項,animation和materials下去掉勾,不要導入動畫和材質。Rig下如果沒有使用到動畫也去掉打勾。

  1.  攝像機參數,注意這個會影響特效大小,製作時一定要去掉勾選HDR

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章