1. 程式人生 > >Unity LOD-Level of Detail(多層次細節)用法教程

Unity LOD-Level of Detail(多層次細節)用法教程

Unity LOD 多層次細節

本文提供全流程,中文翻譯。

Chinar 堅持將簡單的生活方式,帶給世人!

(擁有更好的閱讀體驗 —— 高解析度使用者請根據需求調整網頁縮放比例)
Chinar —— 心分享、心創新!

助力快速理解 Unity中多層次細節組的具體用法

為新手節省寶貴的時間,避免採坑!

Chinar 教程效果:
這裡寫圖片描述

全文高清圖片,點選即可放大觀看 (很多人竟然不知道)

1

Level of detail —— 多層次細節


效能優化時,我們有時需要對物體進行處理,來讓遊戲跑起來更流暢

多層次細節處理,就是讓一個物體,在相機距離不同的情況下,顯示不同的模型,從而節省效能的開銷


舉個栗子黑白88
開發者做個非常精緻的房子,頂點數/面數一定很多

玩家在遊戲中,控制人物相機視角離一座房子近的時候,看起來非常精緻好看!遊戲體驗很好!(假設效能開銷為100)

當玩家走遠的時候,這座房子還在那裡,但已經走了很遠了,房子看起來不是那麼清晰了

但由於房子的模型精度太高無論遠近,模型的頂點和麵數都不變

Gpu都需要去處理,並繪製房子的圖形效果。效能開銷還是100

那麼就有些浪費效能了,當玩家走遠的時候,我們只需要讓玩家看到一個房子還在那裡即可,因為無論精細度多高,玩家看起來房子都很小,看不清

這是一個房子還好說,現如今沒有什麼cpu繪製不了這麼一個房子。但遊戲物件肯定不止一個,大型遊戲可能有一堆,幾百個,上千個物體

所以作為開發者,我們無需把一個精度那麼高的模型,還放在那裡,給CPU GPU增加工作量

這時候我們就可以用 LOD 技術,來對模型進行 分層級顯示

視角離近時,我們讓物體顯示精細度高的模型

視角離遠時,我們讓物體顯示精細度低的模型

這就是 Level of detail 多層次細節優化

2

Example —— Unity 層次優化例子


Unity 為我們提供了一個元件 LOD Group

開發者可以極為方便建立,並進行 LOD 優化

在層次面板中建立一個空物體,並建立3個子物體: Cube Sphere Capsule
舉個栗子黑白88
這裡寫圖片描述

3

Set LOD Group —— 新增設定層次細節組


Add ComPonent 新增元件 LOD Group

並將 3 個子物體,對應設定到元件相應的引數的層級中

注意:

其實遊戲開發時,多數都是在引數中直接關聯 預設物 ,而並非層次面板中的遊戲物件

所以,LOD技術帶來效能優化的同時,存在的一個 缺點就是會增大程式包的體積

因為本來一個模型,現在要準備起碼2個/3個/4個,打包時自然而然程式包體積就會增大!
舉個栗子黑白88
這裡寫圖片描述

4

Ultimate Impact —— 最終效果


現在你可以縮放鏡頭,來檢視效果了,就這麼簡單

LOD Group 元件會根據你設定的 距離百分比,來顯示相應的遊戲物件
舉個栗子黑白88
這裡寫圖片描述

5

Set Parameter —— 設定引數


層級顯示的距離的遠近,可以通過調節元件上方的顯示百分比來調節

LOD Group 元件會根據你設定的 距離百分比,來顯示相應的遊戲物件

下邊演示了,繫結預設物與設定距離的具體操作步驟
舉個栗子黑白88
這裡寫圖片描述
至此:LOD教程基本用法完美結束

支援

May Be —— 搞開發,總有一天要做的事!

擁有自己的伺服器,無需再找攻略!

Chinar 提供一站式教程,閉眼式建立!

為新手節省寶貴時間,避免採坑!



技術交流群:806091680 ! Chinar 歡迎你的加入
END

本部落格為非營利性個人原創,除部分有明確署名的作品外,所刊登的所有作品的著作權均為本人所擁有,本人保留所有法定權利。違者必究

對於需要複製、轉載、連結和傳播部落格文章或內容的,請及時和本博主進行聯絡,留言,Email: [email protected]

對於經本博主明確授權和許可使用文章及內容的,使用時請註明文章或內容出處並註明網址

相關推薦

Unity LOD-Level of Detail層次細節用法教程

Unity LOD 多層次細節 本文提供全流程,中文翻譯。 Chinar 堅持將簡單的生活方式,帶給世人!(擁有更好的閱讀體驗 —— 高解析度使用者請根據需求調整網頁縮放比例)

LOD GroupLevel of Detail細節級別

LODGroup 就是所謂的細節級別。 1.使用這個技術,一般是在解決執行時流暢度的問題,採用的是空間換時間的方式。 2. 根據攝像機離物件的遠近,切換不同細節級別的物件,達到一種目的:近處的物件細節豐富,遠處的物件忽略很多細節,從而減少渲染計算,提高

Unity中的Socket通訊個客戶端的非同步通訊

using UnityEngine; using System; using System.Net; using System.Net.Sockets; using System.Collections; using System.Text; using System.Collections.Generic;

Unity 與C#伺服器 實現Socket的UDP通訊客戶端

前言 上一篇簡單的介紹了下Unity客戶端和伺服器的Socket通訊,但是還不能實現多個客戶端與伺服器的通訊,所以今天在這邊把前面的工程完善一下(使用的是上篇講到的UdpClient類來實現),實現多個客戶端與伺服器的udp通訊。效果圖如下,兩個客戶端可以向伺服器傳送訊息,

poj 1236 Network of Schoolstarjan縮點

problem lan struct http tor tar sch con vector 題目鏈接:http://poj.org/problem?id=1236 題意:給出n個學校和一些學校之間的網絡鏈接關系,學校之間的網絡是單向邊,讓你求出兩個問題的答案,1.至少需

DevExpress GridControl復合表頭行表頭設置

img svi att -1 file columns -type sel 點擊 關於DevExpress.XtraGrid的復合表頭或多行表頭的示例,界面如下圖所示 1.首先要把DevExpress的GridControl轉換為BandedGridView 2.設置顯

uva 12083 Guardian of Decency 二分圖匹配

eas eof aid spa ams oba school eache lib uva 12083 Guardian of Decency Description Frank N. Stein is a very conservative high

Spring Data JPA動態查詢條件and

ica cat 滿足 from pos true ans let tid entity: @Entity @Table(name = "data_illustration") public class Test { @Id @Gen

Saltstack批量部署tomcat實例

自動化運維 saltstack 批量安裝部署 上一篇講解了如何批量部署nginx,這篇說一說如何批量部署tomcat,其實方式上都差不多,tomcat多了個java必須配置,以及需要多個實例一起部署。方式方法上可能不是最優方案,功能上是都可以實現基本需求的。環境介紹:Centos 6.5t

Byte Of Python數據結構

元組 麻煩 emp 對象 鍵值 style color index mut 數據結構 數據結構(Data Structure)基本上人如其名——它們只是一種結構,能夠將一些數據聚合在一起。換句話說,它們是用來存儲一系列相關數據的集合。 Python中有四種內置的數據結構——

Python3.x:實現任務進程

並發 引用 target 函數 color 日期 ctime strftime span Python3.x:實現多任務(多進程) # python3 # author lizm # datetime 2018-02-13 16:00:00 # -*- coding: u

CF 466C Number of Ways數學 / 思維 / DP

same form sidebar sam example pairs color section art 題目鏈接:http://codeforces.com/problemset/problem/466/C 題目: You‘ve got ar

hdu 5381 The sum of gcd線段樹+gcd

const HR LV oid pac vector AR statistic modify 題目鏈接:hdu 5381 The sum of gcd 將查詢離線

PyQt訓練BP模型時,顯示waiting動圖線程

entropy series optimize 目錄 分享 PE 技術分享 eve http 1、實現效果 2、相關代碼 實現BP訓練模型的線程類 1 class WorkThread(QtCore.QThread): 2 finish_trigger =

CF245H Queries for Number of Palindromes回文樹

iostream als 思路 離線 void ngs single pri des 題意翻譯 題目描述 給你一個字符串s由小寫字母組成,有q組詢問,每組詢問給你兩個數,l和r,問在字符串區間l到r的字串中,包含多少回文串。 輸入格式 第1行,給出s,s的長度小於5000

HDU - 3002 King of Destruction最小割

ifdef main pac class nbsp return cas i++ efi http://acm.hdu.edu.cn/showproblem.php?pid=3002 最小割模板 #include<iostream> #in

網絡編程——同一進程中的隊列線程

字符串 所有 優先級 優先級隊列 當前 進程 字符 網絡編程 表示 import queue queue.Queue() 先進先出 queue.LifoQueue() 後進先出 queue.PriorityQueue() 優先級隊列   優先級隊列 q = queue.Pr

著名音頻庫多角度對比平臺可用

mage 而且 watermark img 圖片 ado 麻煩 RoCE png 自己CSDN的博客搬家轉過來的 CSDN上傳太麻煩,而且同質化比較嚴重,在這裏從零開始 著名音頻庫多角度對比(多平臺可用)

Annual Congress of MUD最大流

sep edge after empty real-time test span called per Annual Congress of MUD 時間限制: 1 Sec 內存限制: 128 MB提交: 80 解決: 10[提交] [狀態] [討論版] [命題人:a

JAVA基礎知識總結12線程

必須 對象 存放位置 垃圾 java基礎知識 current syn 原理 運行 進程:正在進行中的程序。其實進程就是一個應用程序運行時的內存分配空間。 線程:其實就是進程中一個程序執行控制單元,一條執行路徑。進程負責的是應用程序的空間的標示。線程負責的是應用程序的執行順序