久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

UE5 Niagara粒子系統(tǒng):GPU模擬、數(shù)據(jù)接口與性能優(yōu)化實(shí)戰(zhàn)

UE5 Niagara粒子系統(tǒng):GPU模擬、數(shù)據(jù)接口與性能優(yōu)化實(shí)戰(zhàn) 1. Niagara 粒子系統(tǒng)的核心架構(gòu)與設(shè)計(jì)思路Niagara 是 UE5 里負(fù)責(zé)粒子特效和視覺(jué)模擬的核心模塊它跟老一代的 Cascade 完全不是一個(gè)量級(jí)的東西。Cascade 本質(zhì)上是一個(gè)固定管線的粒子編輯器你只能在預(yù)設(shè)的模塊里調(diào)參數(shù)Niagara 則把整個(gè)系統(tǒng)拆成了可編程的模塊化結(jié)構(gòu)每個(gè)發(fā)射器、每個(gè)粒子、每一幀的行為都可以用節(jié)點(diǎn)圖去定義。這意味著你不再受限于引擎給你什么而是可以自己造輪子。我第一次從 Cascade 遷移到 Niagara 的時(shí)候最大的感受就是“自由但陡峭”。自由在于你可以控制粒子的每一個(gè)屬性從位置、速度、顏色到自定義的任意數(shù)據(jù)通道陡峭在于你需要理解它背后的三層架構(gòu)System、Emitter、Particle。System 是頂層容器管理多個(gè) Emitter 的調(diào)度和生命周期Emitter 負(fù)責(zé)生成和管理一批粒子定義它們的生成速率、初始狀態(tài)和更新規(guī)則Particle 則是最終的個(gè)體每個(gè)粒子都攜帶一組屬性數(shù)據(jù)在 GPU 或 CPU 上被逐幀計(jì)算。為什么 Niagara 要設(shè)計(jì)成這種三層結(jié)構(gòu)核心原因是為了復(fù)用和組合。你可以把一個(gè)做好的 Emitter 當(dāng)成模板拖到不同的 System 里改一改參數(shù)就能產(chǎn)生完全不同的效果。這在 Cascade 時(shí)代是很難做到的因?yàn)?Cascade 的 Emitter 和 System 耦合太緊遷移成本很高。Niagara 的這種設(shè)計(jì)讓特效師可以像搭積木一樣組合效果極大提升了迭代效率。另一個(gè)關(guān)鍵設(shè)計(jì)是 Niagara 的數(shù)據(jù)接口機(jī)制。它允許粒子系統(tǒng)與外部數(shù)據(jù)源進(jìn)行通信比如讀取一張紋理的數(shù)據(jù)、接收藍(lán)圖傳入的參數(shù)、甚至通過(guò) Data Channel 在多個(gè) System 之間共享數(shù)據(jù)。這個(gè)機(jī)制是 Niagara 從“好看的特效工具”進(jìn)化為“數(shù)據(jù)可視化平臺(tái)”的關(guān)鍵一步。你可以用 Niagara 做音頻可視化、科學(xué)數(shù)據(jù)模擬、甚至實(shí)時(shí)金融數(shù)據(jù)流的粒子呈現(xiàn)只要你能把數(shù)據(jù)喂給它。在實(shí)際項(xiàng)目里我通常會(huì)把 Niagara 的使用場(chǎng)景分為三類第一類是純視覺(jué)特效比如爆炸、煙霧、魔法粒子這類需求重點(diǎn)在渲染質(zhì)量和性能第二類是交互式效果比如角色技能、環(huán)境反饋這類需要和藍(lán)圖、動(dòng)畫(huà)系統(tǒng)深度聯(lián)動(dòng)第三類是數(shù)據(jù)驅(qū)動(dòng)的模擬比如用粒子展示傳感器數(shù)據(jù)、網(wǎng)絡(luò)流量、金融指標(biāo)這類就需要用到 Niagara 的數(shù)據(jù)接口和 GPU 模擬能力。三類場(chǎng)景對(duì)技術(shù)棧的要求完全不同選型時(shí)要想清楚。2. GPU 模擬與 CPU 模擬的選型邏輯2.1 兩種模擬方式的本質(zhì)區(qū)別Niagara 支持 CPU 和 GPU 兩種模擬模式這不是一個(gè)“哪個(gè)更好”的問(wèn)題而是一個(gè)“哪個(gè)更合適”的問(wèn)題。CPU 模擬的意思是粒子的生成、更新、碰撞等邏輯都在 CPU 上逐幀計(jì)算算完之后把結(jié)果傳給 GPU 渲染。GPU 模擬則是把粒子數(shù)據(jù)放在顯存里用 Compute Shader 并行計(jì)算粒子的狀態(tài)更新CPU 只負(fù)責(zé)下發(fā)指令和讀取結(jié)果。這兩種方式的性能特征完全不同。CPU 模擬的優(yōu)勢(shì)在于靈活性和可調(diào)試性。你可以在 CPU 上做復(fù)雜的邏輯判斷、訪問(wèn)藍(lán)圖數(shù)據(jù)、調(diào)用外部接口而且調(diào)試的時(shí)候可以逐幀查看每個(gè)粒子的狀態(tài)。缺點(diǎn)是粒子數(shù)量一上去CPU 就成了瓶頸。我實(shí)測(cè)過(guò)在普通臺(tái)式機(jī)上CPU 模擬的粒子數(shù)量超過(guò) 5000 個(gè)左右就會(huì)開(kāi)始明顯掉幀超過(guò) 2 萬(wàn)個(gè)基本就沒(méi)法用了。GPU 模擬則完全相反。它的并行計(jì)算能力極強(qiáng)輕松跑幾十萬(wàn)甚至上百萬(wàn)粒子都不在話下。但它的限制也很明顯不能直接訪問(wèn) CPU 端的數(shù)據(jù)不能做復(fù)雜的邏輯分支調(diào)試起來(lái)非常困難。你在 GPU 上寫(xiě)錯(cuò)一個(gè)參數(shù)可能什么都看不到也不知道錯(cuò)在哪里。2.2 選型決策表考量維度CPU 模擬GPU 模擬粒子數(shù)量上限約 5000-20000約 50 萬(wàn)-200 萬(wàn)邏輯復(fù)雜度支持復(fù)雜分支和藍(lán)圖交互僅支持簡(jiǎn)單數(shù)學(xué)運(yùn)算調(diào)試難度低可逐幀查看高需要特殊工具數(shù)據(jù)接口訪問(wèn)可直接讀取藍(lán)圖和外部數(shù)據(jù)需要通過(guò) Data Channel 中轉(zhuǎn)碰撞檢測(cè)支持精確碰撞僅支持深度緩沖碰撞適用場(chǎng)景交互特效、技能效果大規(guī)模環(huán)境特效、數(shù)據(jù)可視化這張表是我在實(shí)際項(xiàng)目中總結(jié)出來(lái)的不是引擎文檔里的理論值。粒子數(shù)量上限取決于你的硬件配置和每個(gè)粒子的計(jì)算復(fù)雜度如果你每個(gè)粒子要跑幾十個(gè)模塊那 CPU 模擬可能 2000 個(gè)就卡了。GPU 模擬的上限也取決于你的顯存和 Shader 復(fù)雜度但總體來(lái)說(shuō)比 CPU 高出一個(gè)數(shù)量級(jí)。2.3 混合使用的實(shí)戰(zhàn)策略在實(shí)際項(xiàng)目里我很少純用 CPU 或純用 GPU更多是混合使用。比如一個(gè)角色釋放技能技能的核心粒子用 CPU 模擬因?yàn)樾枰徒巧趋?、碰撞盒做精確交互技能周圍的環(huán)境氛圍粒子用 GPU 模擬因?yàn)閿?shù)量大但邏輯簡(jiǎn)單。這樣既保證了交互精度又保證了視覺(jué)效果。混合使用的關(guān)鍵是要處理好兩者之間的數(shù)據(jù)同步。CPU 模擬的粒子位置可以通過(guò) Data Channel 傳給 GPU 模擬的粒子讓它們產(chǎn)生聯(lián)動(dòng)效果。比如 CPU 粒子爆炸后GPU 粒子根據(jù)爆炸中心的位置向外擴(kuò)散。這個(gè)同步過(guò)程需要注意時(shí)序問(wèn)題因?yàn)?GPU 模擬的更新頻率和 CPU 不一定一致可能會(huì)出現(xiàn)一幀的延遲。注意GPU 模擬的粒子無(wú)法直接讀取 CPU 端的內(nèi)存數(shù)據(jù)所有跨模擬方式的數(shù)據(jù)傳遞都必須通過(guò) Data Channel 或紋理烘焙的方式完成。如果你在 GPU 模擬的模塊里直接引用了一個(gè)藍(lán)圖變量引擎不會(huì)報(bào)錯(cuò)但運(yùn)行時(shí)那個(gè)值永遠(yuǎn)是默認(rèn)值。3. Niagara 數(shù)據(jù)接口的實(shí)戰(zhàn)應(yīng)用3.1 數(shù)據(jù)接口的四種類型Niagara 的數(shù)據(jù)接口不是單一功能而是一組機(jī)制的統(tǒng)稱。根據(jù)我的使用經(jīng)驗(yàn)可以把它分為四類藍(lán)圖參數(shù)接口、Data Channel、紋理數(shù)據(jù)接口、外部數(shù)據(jù)接口。藍(lán)圖參數(shù)接口是最基礎(chǔ)的一種。你在 Niagara System 里定義 User Parameter然后在藍(lán)圖里通過(guò) Set Niagara Variable 節(jié)點(diǎn)把值傳進(jìn)去。這種方式適合傳遞少量、低頻更新的數(shù)據(jù)比如角色的速度、顏色主題、技能等級(jí)。缺點(diǎn)是每次傳值都有一定的開(kāi)銷如果你每幀傳幾十個(gè)參數(shù)性能會(huì)受影響。Data Channel 是 Niagara 內(nèi)部的數(shù)據(jù)總線。它允許不同的 System 之間共享數(shù)據(jù)也允許 CPU 和 GPU 之間傳遞數(shù)據(jù)。Data Channel 的讀寫(xiě)是在 GPU 上完成的所以速度很快適合高頻更新的數(shù)據(jù)。我通常用它來(lái)做粒子之間的通信比如一群粒子跟隨另一群粒子的運(yùn)動(dòng)。紋理數(shù)據(jù)接口是指把數(shù)據(jù)烘焙到紋理里然后在 Niagara 里采樣這張紋理。這種方式適合傳遞大量靜態(tài)或低頻更新的數(shù)據(jù)比如地形高度圖、流體模擬結(jié)果、預(yù)計(jì)算的風(fēng)場(chǎng)。紋理的優(yōu)點(diǎn)是 GPU 采樣極快缺點(diǎn)是數(shù)據(jù)更新需要重新烘焙紋理實(shí)時(shí)性差。外部數(shù)據(jù)接口是指 Niagara 通過(guò) C 或藍(lán)圖從引擎外部獲取數(shù)據(jù)比如讀取文件、調(diào)用網(wǎng)絡(luò)接口、接收傳感器數(shù)據(jù)。這部分需要寫(xiě)代碼來(lái)實(shí)現(xiàn)Niagara 本身不提供直接的外部數(shù)據(jù)讀取功能。但一旦數(shù)據(jù)進(jìn)入引擎就可以通過(guò)前面三種接口傳給粒子系統(tǒng)。3.2 用 Data Channel 實(shí)現(xiàn)粒子間通信Data Channel 是我用得最多的數(shù)據(jù)接口因?yàn)樗鉀Q了 GPU 模擬中粒子之間無(wú)法直接通信的問(wèn)題。在 GPU 模擬模式下每個(gè)粒子是獨(dú)立計(jì)算的粒子 A 不知道粒子 B 在哪里。但通過(guò) Data Channel粒子 A 可以把它的位置寫(xiě)到一個(gè)共享緩沖區(qū)粒子 B 可以從緩沖區(qū)讀取粒子 A 的位置。具體操作步驟是這樣的首先在 Niagara System 里創(chuàng)建一個(gè) Data Channel命名為比如 “ParticlePosition”。然后在發(fā)射器 A 的 Particle Spawn 或 Particle Update 階段添加一個(gè) Write Data Channel 模塊把粒子的位置寫(xiě)入這個(gè) Channel。接著在發(fā)射器 B 的 Particle Update 階段添加一個(gè) Read Data Channel 模塊讀取 Channel 里的位置數(shù)據(jù)用來(lái)影響粒子 B 的運(yùn)動(dòng)。這里有個(gè)細(xì)節(jié)需要注意Data Channel 的寫(xiě)入和讀取是有順序的。如果你在同一個(gè)幀里既寫(xiě)又讀讀到的可能是上一幀的數(shù)據(jù)。這個(gè)延遲在大多數(shù)場(chǎng)景下可以接受但如果你需要精確的同步就需要用雙緩沖或者調(diào)整更新順序。實(shí)操心得Data Channel 的緩沖區(qū)大小是有限的默認(rèn)好像是 256 個(gè) float。如果你要傳遞的數(shù)據(jù)超過(guò)這個(gè)限制需要在項(xiàng)目設(shè)置里調(diào)整。我踩過(guò)一次坑傳遞 500 個(gè)粒子的位置時(shí)發(fā)現(xiàn)只有前 256 個(gè)生效排查了半天才發(fā)現(xiàn)是緩沖區(qū)溢出了。3.3 紋理數(shù)據(jù)接口做風(fēng)場(chǎng)模擬風(fēng)場(chǎng)模擬是紋理數(shù)據(jù)接口的經(jīng)典應(yīng)用場(chǎng)景。你可以用一張 HDR 紋理來(lái)存儲(chǔ)風(fēng)的方向和強(qiáng)度然后在 Niagara 里采樣這張紋理根據(jù)粒子的世界位置查表得到風(fēng)力再施加到粒子的速度上。制作風(fēng)場(chǎng)紋理的流程一般是在 Houdini 或其他 DCC 工具里生成風(fēng)場(chǎng)數(shù)據(jù)導(dǎo)出為 EXR 格式的紋理然后導(dǎo)入 UE5。在 Niagara 里你需要把粒子的世界坐標(biāo)映射到紋理的 UV 空間這通常需要知道風(fēng)場(chǎng)覆蓋的世界范圍。比如風(fēng)場(chǎng)覆蓋 1000x1000 的世界單位紋理分辨率是 512x512那么 UV 就是 (WorldPos.X / 1000 0.5, WorldPos.Y / 1000 0.5)。采樣紋理的時(shí)候要注意紋理的尋址模式。如果你的粒子跑到了風(fēng)場(chǎng)范圍之外UV 會(huì)超出 0-1 的范圍。這時(shí)候你可以把尋址模式設(shè)為 Clamp讓邊緣的風(fēng)場(chǎng)延伸出去或者設(shè)為 Wrap讓風(fēng)場(chǎng)循環(huán)。具體用哪種取決于你的場(chǎng)景需求。3.4 外部數(shù)據(jù)接入的工程實(shí)踐把外部數(shù)據(jù)接入 Niagara 是一個(gè)系統(tǒng)工程不是改幾個(gè)參數(shù)就能搞定的。我以金融數(shù)據(jù)可視化為例講一下完整的流程。假設(shè)你要做一個(gè)實(shí)時(shí)股票價(jià)格的可視化用粒子系統(tǒng)展示價(jià)格波動(dòng)。數(shù)據(jù)源是一個(gè) Python 腳本通過(guò)接口獲取實(shí)時(shí)行情。第一步是讓 Python 腳本把數(shù)據(jù)寫(xiě)入一個(gè)文件或者發(fā)送到一個(gè)本地服務(wù)。第二步是在 UE5 里寫(xiě)一個(gè) C 或藍(lán)圖模塊定時(shí)讀取這個(gè)文件或接收服務(wù)推送的數(shù)據(jù)。第三步是把讀到的數(shù)據(jù)通過(guò)藍(lán)圖參數(shù)接口或 Data Channel 傳給 Niagara System。第四步是在 Niagara 里根據(jù)數(shù)據(jù)值調(diào)整粒子的屬性比如價(jià)格漲了粒子變綠向上價(jià)格跌了粒子變紅向下。這個(gè)流程里最容易出問(wèn)題的是數(shù)據(jù)頻率和引擎幀率的匹配。金融數(shù)據(jù)可能每秒更新幾十次但引擎只跑 60 幀。如果你每收到一個(gè)數(shù)據(jù)就更新一次粒子會(huì)造成大量無(wú)效更新。我的做法是在引擎端做一個(gè)緩沖隊(duì)列每幀從隊(duì)列里取最新的數(shù)據(jù)丟棄過(guò)時(shí)的數(shù)據(jù)。這樣既保證了實(shí)時(shí)性又不會(huì)浪費(fèi)性能。4. 性能優(yōu)化與常見(jiàn)問(wèn)題排查4.1 性能優(yōu)化的五個(gè)關(guān)鍵點(diǎn)Niagara 的性能優(yōu)化是一個(gè)老生常談的話題但很多人只知道“減少粒子數(shù)量”這一條。實(shí)際上優(yōu)化是一個(gè)多維度的工程我總結(jié)了五個(gè)關(guān)鍵點(diǎn)。第一是模塊的精簡(jiǎn)。每個(gè)粒子在每一幀都會(huì)執(zhí)行所有啟用的模塊模塊越多計(jì)算量越大。我見(jiàn)過(guò)一個(gè)特效用了 30 多個(gè)模塊其中一半是默認(rèn)值沒(méi)改過(guò)的。刪掉這些無(wú)用模塊性能直接提升 40%。你要養(yǎng)成習(xí)慣每加一個(gè)模塊都問(wèn)自己這個(gè)模塊真的需要嗎第二是更新頻率的控制。不是所有粒子都需要每幀更新。比如背景里的塵埃粒子每三幀更新一次完全看不出區(qū)別。Niagara 里可以設(shè)置 Emitter 的更新頻率或者用模塊里的條件判斷來(lái)控制更新。這個(gè)技巧在大規(guī)模場(chǎng)景里效果非常明顯。第三是 LOD 策略。遠(yuǎn)處的粒子用低精度模擬近處的用高精度。Niagara 支持基于距離的 LOD你可以為每個(gè) LOD 級(jí)別設(shè)置不同的粒子數(shù)量、模塊復(fù)雜度、甚至不同的模擬方式。我通常會(huì)把最遠(yuǎn)的 LOD 設(shè)為 GPU 模擬加簡(jiǎn)單材質(zhì)最近的 LOD 設(shè)為 CPU 模擬加完整模塊。第四是渲染優(yōu)化。粒子的渲染開(kāi)銷往往被低估。半透明粒子的 Overdraw 是性能殺手尤其是大面積的煙霧和火焰。你可以通過(guò)調(diào)整粒子的尺寸、減少重疊、使用 Cutout 材質(zhì)代替半透明材質(zhì)來(lái)降低 Overdraw。另外粒子材質(zhì)的復(fù)雜度也要控制一個(gè)簡(jiǎn)單的 Unlit 材質(zhì)比復(fù)雜的 PBR 材質(zhì)快好幾倍。第五是內(nèi)存管理。GPU 模擬的粒子數(shù)據(jù)存在顯存里每個(gè)粒子占用的顯存取決于它攜帶的屬性數(shù)量。如果你給粒子加了很多自定義屬性顯存占用會(huì)快速上升。我建議只保留必要的屬性不需要的通道及時(shí)刪除。4.2 常見(jiàn)問(wèn)題速查表問(wèn)題現(xiàn)象可能原因排查方法解決方案粒子不顯示Emitter 未啟用或生成速率為 0檢查 Emitter 的 Spawn Rate 和 Enabled 狀態(tài)啟用 Emitter調(diào)整 Spawn RateGPU 粒子位置錯(cuò)亂模擬空間設(shè)置錯(cuò)誤檢查 Emitter 的 Sim Target 和 Fixed Bounds切換模擬空間或調(diào)整邊界Data Channel 讀取不到數(shù)據(jù)緩沖區(qū)溢出或時(shí)序錯(cuò)誤檢查 Channel 名稱和緩沖區(qū)大小增大緩沖區(qū)調(diào)整讀寫(xiě)順序粒子閃爍排序問(wèn)題或深度沖突檢查材質(zhì)排序和深度測(cè)試設(shè)置調(diào)整排序優(yōu)先級(jí)啟用深度測(cè)試性能驟降粒子數(shù)量過(guò)多或模塊復(fù)雜用 Profiler 查看 GPU/CPU 耗時(shí)減少粒子數(shù)精簡(jiǎn)模塊啟用 LOD藍(lán)圖參數(shù)不生效參數(shù)名稱不匹配或未設(shè)置檢查藍(lán)圖節(jié)點(diǎn)和 Niagara 參數(shù)名確保名稱一致檢查 Set 節(jié)點(diǎn)執(zhí)行時(shí)機(jī)這張表里的每一個(gè)問(wèn)題我都實(shí)際遇到過(guò)尤其是 Data Channel 那個(gè)當(dāng)時(shí)排查了整整一個(gè)下午。后來(lái)我發(fā)現(xiàn)Niagara 的參數(shù)名是大小寫(xiě)敏感的藍(lán)圖里寫(xiě) “particlePosition” 和 Niagara 里的 “ParticlePosition” 不匹配引擎不會(huì)報(bào)錯(cuò)只是靜默失敗。這個(gè)坑希望大家不要再踩。4.3 調(diào)試 GPU 模擬的獨(dú)門技巧GPU 模擬的調(diào)試是 Niagara 使用中最讓人頭疼的部分。因?yàn)榱W釉?GPU 上計(jì)算你沒(méi)法像 CPU 那樣打斷點(diǎn)或者逐幀查看。我摸索出幾個(gè)實(shí)用的調(diào)試技巧。第一個(gè)技巧是用 Debug Draw 模塊。Niagara 提供了一些調(diào)試模塊可以把粒子的位置、速度、顏色等信息畫(huà)成線條或點(diǎn)。雖然 GPU 模擬的粒子不能直接用這些模塊但你可以通過(guò) Data Channel 把 GPU 粒子的數(shù)據(jù)傳回 CPU然后用 CPU 粒子來(lái)可視化這些數(shù)據(jù)。這個(gè)方法有點(diǎn)繞但非常有效。第二個(gè)技巧是分階段驗(yàn)證。不要一次性把整個(gè) GPU 模擬搭好而是先做一個(gè)最簡(jiǎn)單的版本比如只生成粒子并給一個(gè)固定速度。確認(rèn)這個(gè)版本能跑通后再逐步添加模塊。每加一個(gè)模塊就驗(yàn)證一次這樣出問(wèn)題的時(shí)候你立刻知道是哪個(gè)模塊導(dǎo)致的。第三個(gè)技巧是用固定隨機(jī)種子。GPU 模擬的隨機(jī)數(shù)生成和 CPU 不一樣有時(shí)候你看到的結(jié)果不穩(wěn)定是因?yàn)殡S機(jī)種子在變。把隨機(jī)種子固定下來(lái)結(jié)果就可復(fù)現(xiàn)了排查問(wèn)題會(huì)容易很多。第四個(gè)技巧是降低粒子數(shù)量。調(diào)試的時(shí)候把粒子數(shù)量降到幾十個(gè)這樣即使有問(wèn)題也容易觀察。等邏輯調(diào)通了再恢復(fù)到正常數(shù)量。注意GPU 模擬的粒子在編輯器里可能顯示不正常但在運(yùn)行時(shí)是好的。這是因?yàn)榫庉嬈鞯念A(yù)覽模式和運(yùn)行時(shí)的模擬模式有差異。如果你在編輯器里看到粒子亂飛先別急著改代碼按一下 Play 看看運(yùn)行時(shí)是否正常。5. Niagara 與 UE5 其他系統(tǒng)的聯(lián)動(dòng)5.1 與動(dòng)畫(huà)系統(tǒng)的結(jié)合Niagara 和 UE5 動(dòng)畫(huà)系統(tǒng)的結(jié)合是一個(gè)很有價(jià)值的方向。你可以用動(dòng)畫(huà)骨骼的位置來(lái)驅(qū)動(dòng)粒子發(fā)射比如角色揮劍時(shí)劍刃軌跡上生成粒子拖尾。實(shí)現(xiàn)方式是在動(dòng)畫(huà)藍(lán)圖里獲取骨骼的 Socket 位置然后通過(guò)藍(lán)圖參數(shù)接口傳給 NiagaraNiagara 根據(jù)這個(gè)位置來(lái)生成粒子。更高級(jí)的用法是用動(dòng)畫(huà)曲線來(lái)控制粒子的參數(shù)。比如角色跳躍時(shí)動(dòng)畫(huà)曲線里有一個(gè) “JumpHeight” 的值你可以把這個(gè)值傳給 Niagara讓粒子的發(fā)射速度隨跳躍高度變化。這樣粒子和角色的動(dòng)作就是完全同步的不會(huì)出現(xiàn)脫節(jié)的感覺(jué)。5.2 與物理系統(tǒng)的交互Niagara 的 GPU 粒子可以和物理系統(tǒng)做一定程度的交互但限制比較多。GPU 粒子支持深度緩沖碰撞意思是粒子可以和場(chǎng)景中的不透明物體碰撞但無(wú)法和物理剛體做精確碰撞。如果你需要粒子和物理剛體交互只能用 CPU 模擬。CPU 模擬的粒子可以通過(guò)藍(lán)圖和物理系統(tǒng)交互。比如你可以用 Line Trace 檢測(cè)粒子前方是否有碰撞體如果有就改變粒子的運(yùn)動(dòng)方向。這種方式適合做小規(guī)模的精確交互比如子彈擊中墻壁產(chǎn)生的火花。5.3 與音頻系統(tǒng)的聯(lián)動(dòng)音頻可視化是 Niagara 的一個(gè)熱門應(yīng)用場(chǎng)景。UE5 的音頻系統(tǒng)可以分析音頻的頻譜把頻譜數(shù)據(jù)通過(guò)藍(lán)圖傳給 NiagaraNiagara 根據(jù)頻譜值來(lái)調(diào)整粒子的顏色、大小、速度。這個(gè)效果在音樂(lè)播放器、節(jié)奏游戲里很常見(jiàn)。實(shí)現(xiàn)的關(guān)鍵是音頻數(shù)據(jù)的獲取和傳遞。UE5 提供了 Audio Synesthesia 插件可以實(shí)時(shí)分析音頻的頻譜、節(jié)拍、響度等數(shù)據(jù)。你把這些數(shù)據(jù)綁定到 Niagara 的參數(shù)上就能做出隨音樂(lè)跳動(dòng)的粒子效果。需要注意的是音頻數(shù)據(jù)的更新頻率很高建議用 Data Channel 而不是藍(lán)圖參數(shù)來(lái)傳遞否則性能開(kāi)銷會(huì)比較大。5.4 與 UI 系統(tǒng)的配合Niagara 粒子也可以用在 UI 上比如按鈕點(diǎn)擊時(shí)的粒子反饋、界面切換時(shí)的過(guò)渡效果。UE5 的 UMG 系統(tǒng)支持在 Widget 里嵌入 Niagara 組件但性能上需要特別注意。UI 粒子的數(shù)量要嚴(yán)格控制材質(zhì)要盡量簡(jiǎn)單否則會(huì)拖累整個(gè) UI 的渲染。我個(gè)人的經(jīng)驗(yàn)是UI 粒子最好控制在 100 個(gè)以內(nèi)用 CPU 模擬材質(zhì)用 Unlit 加半透明。如果效果需要更多粒子考慮用序列幀動(dòng)畫(huà)或者材質(zhì)動(dòng)畫(huà)來(lái)代替性能會(huì)好很多。6. 從零搭建一個(gè)數(shù)據(jù)驅(qū)動(dòng)的粒子可視化系統(tǒng)6.1 需求分析與方案設(shè)計(jì)假設(shè)我們要做一個(gè)實(shí)時(shí)數(shù)據(jù)監(jiān)控面板用粒子系統(tǒng)展示服務(wù)器的 CPU 使用率、內(nèi)存占用、網(wǎng)絡(luò)流量三個(gè)指標(biāo)。CPU 使用率用粒子的密度表示內(nèi)存占用用粒子的顏色表示網(wǎng)絡(luò)流量用粒子的運(yùn)動(dòng)速度表示。這個(gè)需求的核心是數(shù)據(jù)驅(qū)動(dòng)粒子系統(tǒng)本身不產(chǎn)生數(shù)據(jù)只是數(shù)據(jù)的可視化載體。方案設(shè)計(jì)上我選擇 CPU 模擬加藍(lán)圖參數(shù)接口的方式。原因是數(shù)據(jù)量不大三個(gè)指標(biāo)更新頻率中等每秒一次CPU 模擬完全夠用而且調(diào)試方便。6.2 數(shù)據(jù)接入與參數(shù)映射數(shù)據(jù)接入部分我用一個(gè) Python 腳本模擬數(shù)據(jù)源每秒生成一組隨機(jī)數(shù)據(jù)寫(xiě)入 JSON 文件。UE5 端用一個(gè)藍(lán)圖 Actor 定時(shí)讀取這個(gè)文件解析出三個(gè)指標(biāo)的值然后通過(guò) Set Niagara Variable 節(jié)點(diǎn)傳給 Niagara System。參數(shù)映射的邏輯是這樣的CPU 使用率 0-100% 映射到粒子的 Spawn Rate 0-1000內(nèi)存占用 0-100% 映射到粒子的顏色從綠色漸變到紅色網(wǎng)絡(luò)流量 0-1000 Mbps 映射到粒子的初始速度 0-500。這些映射關(guān)系在 Niagara 里用 Map Range 模塊實(shí)現(xiàn)輸入是藍(lán)圖傳入的參數(shù)輸出是粒子的屬性值。6.3 Niagara 系統(tǒng)的搭建步驟第一步創(chuàng)建一個(gè) Niagara System添加一個(gè) Emitter模擬目標(biāo)設(shè)為 CPU。第二步在 Emitter 的 Particle Spawn 階段添加 Spawn Rate 模塊把 Spawn Rate 綁定到一個(gè) User Parameter命名為 “CPURate”。第三步在 Particle Spawn 階段添加 Initialize Particle 模塊設(shè)置粒子的初始位置為發(fā)射器原點(diǎn)周圍隨機(jī)分布初始速度綁定到 User Parameter “NetworkSpeed”。第四步在 Particle Update 階段添加 Color 模塊把顏色綁定到 User Parameter “MemoryColor”。第五步在 Particle Update 階段添加 Gravity 和 Drag 模塊讓粒子有自然的運(yùn)動(dòng)衰減。第六步設(shè)置渲染器為 Sprite Renderer材質(zhì)用一個(gè)簡(jiǎn)單的 Unlit 半透明材質(zhì)顏色從粒子屬性讀取。6.4 藍(lán)圖端的實(shí)現(xiàn)細(xì)節(jié)藍(lán)圖端的核心是一個(gè)定時(shí)器每隔一秒觸發(fā)一次數(shù)據(jù)讀取和參數(shù)設(shè)置。讀取 JSON 文件用 UE5 的 File IO 功能解析 JSON 用 Json Blueprint 插件。解析出來(lái)的值通過(guò) Set Niagara Variable (Float) 和 Set Niagara Variable (Linear Color) 節(jié)點(diǎn)傳給 Niagara System。這里有個(gè)細(xì)節(jié)要注意Set Niagara Variable 節(jié)點(diǎn)需要指定 Niagara System 的引用和參數(shù)名稱。參數(shù)名稱必須和 Niagara 里定義的 User Parameter 完全一致包括大小寫(xiě)。我建議在 Niagara 里定義參數(shù)時(shí)就做好命名規(guī)范比如統(tǒng)一用 “Param_” 前綴避免混淆。6.5 效果驗(yàn)證與調(diào)優(yōu)搭好之后運(yùn)行引擎觀察粒子的表現(xiàn)。如果 CPU 使用率升高粒子應(yīng)該變密內(nèi)存占用升高粒子應(yīng)該變紅網(wǎng)絡(luò)流量增大粒子應(yīng)該飛得更快。如果某個(gè)指標(biāo)沒(méi)反應(yīng)先檢查藍(lán)圖端的 Set 節(jié)點(diǎn)是否執(zhí)行了再檢查 Niagara 端的參數(shù)名是否匹配。調(diào)優(yōu)方面我調(diào)整了粒子的生命周期和發(fā)射范圍。生命周期設(shè)為 2 秒這樣粒子不會(huì)堆積太多。發(fā)射范圍設(shè)為球形半徑 200 單位讓粒子分布更自然。渲染材質(zhì)加了點(diǎn)發(fā)光效果讓數(shù)據(jù)變化更醒目。這個(gè)系統(tǒng)雖然簡(jiǎn)單但涵蓋了 Niagara 數(shù)據(jù)接口的核心流程外部數(shù)據(jù)接入、藍(lán)圖參數(shù)傳遞、Niagara 參數(shù)映射、粒子屬性綁定。你把這個(gè)流程跑通了換成任何其他數(shù)據(jù)源都是一樣的套路。7. 一些踩過(guò)的坑和實(shí)用建議Niagara 這個(gè)工具文檔寫(xiě)得不算差但很多細(xì)節(jié)只有實(shí)際用過(guò)才知道。我挑幾個(gè)印象深刻的坑分享一下。第一個(gè)坑是 GPU 模擬的邊界問(wèn)題。GPU 粒子需要一個(gè) Fixed Bounds 來(lái)定義模擬范圍如果粒子跑出了這個(gè)范圍就會(huì)被裁剪掉。我一開(kāi)始不知道這個(gè)機(jī)制做出來(lái)的粒子飛著飛著就消失了還以為是 Bug。后來(lái)在 Emitter 屬性里找到 Fixed Bounds把范圍調(diào)大就解決了。建議在做 GPU 粒子時(shí)先把邊界設(shè)得比實(shí)際需要大一圈確認(rèn)效果后再收緊。第二個(gè)坑是 Data Channel 的命名沖突。如果你在多個(gè) System 里用了同名的 Data Channel它們會(huì)互相干擾。我建議給每個(gè) Data Channel 加項(xiàng)目前綴比如 “MyProject_WindData”避免沖突。第三個(gè)坑是材質(zhì)和模擬空間的匹配。Niagara 的模擬空間有 World、Local、Custom 三種。如果你用 Local 空間模擬但材質(zhì)里用了 World Position 來(lái)計(jì)算顏色結(jié)果就會(huì)錯(cuò)亂。模擬空間和材質(zhì)空間必須一致這個(gè)在搭建時(shí)就要確定好。第四個(gè)坑是版本兼容性。UE5 的不同小版本之間Niagara 的模塊和參數(shù)有時(shí)會(huì)變。如果你從網(wǎng)上抄了一個(gè)教程發(fā)現(xiàn)節(jié)點(diǎn)對(duì)不上很可能是版本差異。建議以你當(dāng)前使用的引擎版本為準(zhǔn)教程只做參考。第五個(gè)坑是性能分析的誤區(qū)。很多人看 Niagara 的性能只看粒子數(shù)量其實(shí)模塊的復(fù)雜度影響更大。一個(gè)粒子跑 50 個(gè)模塊比 10 個(gè)粒子各跑 5 個(gè)模塊要慢得多。用 Unreal Insights 或者 GPU Profiler 去看實(shí)際的耗時(shí)分布才能找到真正的瓶頸。最后分享一個(gè)實(shí)用建議養(yǎng)成做筆記的習(xí)慣。Niagara 的參數(shù)和模塊太多了你今天調(diào)好了一個(gè)效果過(guò)兩周可能就忘了怎么調(diào)的。我通常會(huì)在 Niagara System 的 Description 里寫(xiě)清楚每個(gè)參數(shù)的用途和取值范圍方便以后查閱也方便團(tuán)隊(duì)協(xié)作。這個(gè)習(xí)慣看起來(lái)不起眼但長(zhǎng)期來(lái)看能省很多時(shí)間。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
九九热免费视频| 91少妇通奸网站| 日韩免费av片高清无码| 精品国产网站| 一区二区三区欧美激情| 日韩亚洲中文字幕在线| 久久久久久性爱免费视频| 91人妻丝袜无码| 人人人人插| 9+1视频网址| 777超碰| 九区国产| 亚州精品一区二区三区香中文字幕在线| 亚洲欧美日韩偷拍色图| 男女香蕉一区二区| 成人精品视频一区二区| 六月丁香啪啪啪| 中国农村熟妇毛片视频| 色吧 综合| 久伊人网78| 国产精品 午夜福利| 国产亚洲99久久精品| 国内亚洲高清无码| 91bbbbbb| 亚洲情色无码一区二区三区| 人妻精品一区二区全免费| 亚洲色诱惑| 免费伦费视频在线观看| 久草福利在线资源站| 日本中文字幕不卡视频| 色97干| 国产乱人妻精品入口| 久久国产精品91| 色99在线| 色婷婷香蕉| 久久久亚洲高清不打码| 9国产超碰| 干B网| 国产超碰国产97| 欧美视频中文字幕区| 婷婷干黄色| 操国产逼| 一级岛国大片| 日本东京热久久久电影| 九九九九久久久久| 韩三级a视频在线观看| 呦呦一区| 久久中文字幕人妻熟av女蜜柚| 国产熟妇一区二区| 伊人伊人LD| 屌妞视频久久久久久久久久久久| 亚洲日韩东京热一区| 色五月69夫妻| 丰满少妇精品一区二区| 亚洲女优有码无码高清| 超碰美女97| 殴美色网| 好吊色青靑草| 另类专区加勒比| 动漫av中文| 中文久久96| 中国熟女网站| 国产精品欧美在线观看| 97精品国产97久久久久久| 五月婷婷色色| 大鸡吧尹人在线| 夜夜狼人妻| 97色论| 欧美91精彩| 日本中文字幕熟妇| 综合影院永久入口国产| 久久久婷婷| 夜夜嗨免费视频| 久热伊人99re| 无色无码| 亚洲熟女av中文字幕| 啊啊啊啊二区好大| 亚洲天堂另类小说男人| www.人人cao| 欧美色干| 97青娱乐超碰久久| 九九热精品在线| 入口操逼网站| 欧美的性爱网站免费| 欧美亚洲综合999| 九久9热| 操逼操逼逼操操逼91| 成人性交免费视频| 人人操人人摸人 | 日本操逼视频免费| 91精品国产长腿丝袜美女| 伊人成人情色综合| 婷婷综合网| 郑州宾馆老熟女露脸啪啪| 97亚洲在线| 亚洲综合夜色| 欧美亚洲高清不卡| www.操| 久久婷婷五月综合| 操逼日韩无码 | 香蕉99秘 精品一区丁香| 亚洲一级特黄大片在线播放91| 男人午夜天堂| 超碰色综合| 国产精品伦理| 91日韩网站| av线电影| 亚热日本熟女| 屁股久久久久久久久| 久久欧洲| 国产日韩欧美| 嗯嗯啊操我| 91精品国产91熟女| 熟妇一区,二区,三区。| 欧美综合亚洲| 情色大香蕉| 超碰是碰在线观看| 欧洲站一级二级三级h| 老女人碰碰在线碰碰视频| 国产黄色动态精品| 射欧美综合| 欧美熟妇人体| 夜夜国产一区| 欧美一区二区成人一卡| 锕锕好爽 死我在线观看| 欧美激色| 性色高清..……| 色踪合AV| 日韩精品午夜操呦呦不卡影院| 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 东京热伊久| 久久久久久人| 久久午夜色播影院免费高清| site:sinbotex.com| 天天综合网合集91| 夜夜高潮夜夜爽国产伦精品| 亚洲情色 自拍| 亚洲美女AV无码| 欧美色图20p| 大香蕉伊人亚洲| 精品国产99| 久草综合视频| 尤物视频新赏网鲜网色诱网| 色吊丝 日日骚 清纯唯美| 欧美色97| 一中国女人毛片水真多| 日韩欧美综合激情| 337p大胆噜噜噜噜噜91Av| 一区二区三区精品黑丝白丝酒店对鸡| 人妻无码后入| 国产精品对白自产拍| 91亚洲人| 人人看人人爰人人操| 欧美v亚洲v日韩v最新在线二区| 中国国国产一级特黄毛片| 国产欧美日韩在线不卡第一页| 黄网在线播放| 中文字幕人妻色偷偷久久皮 | 夜夜骑天天燥| 78精品| 麻豆国产97在线| 97人人操人人摸人人爱| 激情综合五| 欧美大香蕉在线观看| 九九九影院| 一二三区视频在线观看| 强奸乱伦中文字幕AV| 六月色色| 亚洲 欧美 综合 91| 激情一区二区| 欧美日韩中文亚洲v在线综合| 91久热这里只有精品| 亚洲污污网站| 在线日韩精品一区二区三区| 国产中文字幕曰本毛片| www.99热在线只有精品| 深喉吞精| 嫩草影院在线观看精品| 国产13区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 51一区二区三区| 五月天色综合| 乱操9999| 草莓精品视频在线免费观看| 久久av网| 欧美亚洲高清| 丁香五月激情五月| 91亚州欧美| 青青草这里只有精品| 成人七区| 久久日本熟妇熟色高清| 国产久久免费精品视频| 99国产精品人妻人伦| 成人开心网在线视频| 国产不良强奸视频免费看| 精品妇女一区二区三区| 78m成人视线| 老司机老司机午夜影院| 欧美 熟女 日韩| 亚州欧美在线| 婷婷尹人大香蕉免费| 日韩精品人妻中文字幕有码午| 91国产丝袜白虎| 91free福利| 中文一区二区| 操逼网免费无码视频| 国产精品网站免费| 操屄日韩| 日本黄色裸日本黄色裸体 | 色婷婷日韩精品一区二区三区| ..日韩av毛片精品久久久| 99这里有精品| 大学生口爆吞精| 日韩成人午夜精品久久高潮| 超碰在线欧美性爱激情| 大香蕉综合| 风月影院十八禁| 伊色综合天堂色97| 国产高清自拍| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 色在线69堂| 日本三级A片网站com| 欧美人妻二区三区| 88xx成人精品视频| 欧亚日韩三区| 亚洲情色中文字幕一区| 日韩人妻无码不卡网站| 99在线免费视频| 九九九九九精品| 五月婷婷激情| 日本熟女不卡视频| 加勒比性爱成人在线| 中日韩欧美精品无码AⅤ一区二区| 久久爱超碰网| 久久艹逼视频| 日本一区二区三区四区五区六区七区八区九区| 午夜男人天堂| 日韩av不卡在线看| 中文字幕免费在线观看| 狠肏骚人妻| 日本免费一级AAA大片器| 60秒免费视频| 日本99热| 亚洲国产欧美一区二区潘金莲| 97超碰免费人人性爱| 93人人操人人| 日本二三四区| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 久久久久久久九九九九九九| 伊人操你| 亚洲午夜蜜臀| 熟妇一区二区三区| 肉嘟嘟www视频在线观看高清| 我爱操| 欧洲熟妇xxXx欧美老妇裸体| 日韩偷拍一区二区三区| 青青草原伊人网| 爱干爱射网啊啊啊| 男人天堂2019亚洲| 日韩黄色成人性爱| 日日操免费视频| 丝袜美腿丝袜| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 黄色十八禁| 狠狠五月天| 日本三级一区二区 在线| 青青草原香蕉日本Ap| 色呦呦、国产精品| 色色婷婷丁香| 国产成人手机视频激情| 亲子敌伦对白在线播放| 人妻蜜桃臀| 日韩99神马视频片| 久久丁香| 大香蕉五月天婷婷| 黄片直播三级黄片两女一男| 人人操我人人干| 91爱剪切久久| 99热大香蕉伊在线| 看黑丝美女操逼青青网站| 任你草| 中文字幕一区电影在线观看| 在线无码视频| 国产精品99精品视频网站| 人妻少妇无码 | 日本岛国黄色网址| 秋霞久久亚洲精品成人| 日韩精品中文字幕人妻| 97超碰超碰| AV在线播放网址| 久久久性爱视频| 亚洲熟妇极品| 九九aV| 中国zzijzzijzzwww精品| 蜜臀在线视频| 在线午夜成人无码视频| 大香蕉78| 人妻天天爽天天爽三区| 日韩欧美加勒比| 蜜臀99精品国产高清在线观看| 成人欧美日超碰| 日本不卡卡一区| 狠狠操夜夜操蜜桃视频三区| 99热综合| 久久婷婷亚洲| 日本啊啊啊啊啊视频| 天天日骚逼熟女| 亚洲Av无码成人精品国产| 夜夜嗨绯色| 91性生活久久久| 中文字日本乱码| 欧美白嫩女HD| 91熟女综合| 天色综合网| 欧美爆操91| 人人操天天爽| 欧美日韩少妇色情| 91精品国产长腿丝袜美女| 青青久久久| 日日噜噜夜夜久久亚洲一区二区 | 乱性AV| 岛国黄片网站| 日本狂喷奶水在线播放212| 黄片qw| 日韩欧美成人综合在线| 亚洲五月婷| 欧美亚洲日韩人妻在线观看| 久久一区,青青青青草视频在线播放| 99综合视频一体| 天天操av懂色| 爽极品影院| 91丝袜美女国产| 亚洲中文字幕三级在线| 日韩美女久久一区二区三区| 国产乱弄免费在线视频。| 9精品在线| 日韩丝袜高跟制服在线观看| 久久99干一本高清| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | 日韩av情韩国爱禁区av一区二区| 亚洲清纯综合| 91精品无码久久久久久久| 九九视频黄色片| 人人操人人干网页| 美女黄色一级A视频| 欧美中文字幕男人天堂久久精品| 中文字幕视频免费| 黄页| 日韩亚洲精品一区二区| 婬女免费一二三区A片| 欧美亚洲激情小说| 97超碰免费生活| 久久无码电影| 欧美色蜜桃97| 日本最新免费韩国1区2区视频播放| 操逼视频免费日韩无码| 大香蕉九九| 超碰日本97美女人妻人人玩人人爱 | 久久伊人最新网址视频| 热久久无毒不卡| 亚洲欧美人妻| 777奇米影视777四色| 无码91| 精品无码一区二区三区| 国产对白刺激视频| 中文字幕精品丝袜| 伊人天天久久动态图| 亚洲AV无码AV吞精久久久久| 蜜臀亚洲中文| 懂色av一区二区三区天美传媒| 日韩乱伦影音先锋| 欧美人妻精品| 精品国产乱码久久久久久久久久毛片| 国产日韩精品无码去免费专区国产| 人人扣人人操| 综合色久欲| 日韩三级一区| 午夜一区二区三区国产| 亚洲色图8| 97久久超碰亚洲| 亚洲AV无线| 亚洲欧美setu| 欧美gv在线观看| 密桃99999| 国产AV天美传媒一区二区三区 | 亚洲风情综合网| 欧美αv.com| 少妇毛片久久| 91春色| 人人摸人人干| 97日韩欧美亚洲| 欧美国产伊人久久久久| 色老久久| 日韩人成网站在线播放| 国产九区| 懂色av色欲av蜜臀av| 伊人青青一区成人视频在线观看区| 超碰诱惑| 99国内精品| 91 亚欧| 日韩精品9999| 国产农村妇女精品一二区| 999狠狠综合| 91动漫操逼视频| 国产偷仑| 久久久国产亚洲精品系列| 97精品视频网站| 国产精品熟女九色九色蜜臀| 蜜屁Av| 操逼片中文| 日韩大香蕉精品在线视频| 亚洲va有码在线天堂| 亚洲 另类 丝袜 自拍 动漫| 国产熟女完整版中字| 97操在线| 97人人模人人爽人人| 久久精品成人| 美女诱惑1区2区| 搡老女人911熟妇老熟女| 中文字幕亚洲欧美在线不卡| 色婷婷六月丁香七月婷婷| 91处女视频在线观看| 亚洲欧美在线观看免费| 999色欧美中文字幕| 久久性视频| 色悠久| 肉动漫无遮挡h在线观看| 亚洲资源站| 巨爆乳一区二区爆乳区| 欧美性爱视频免费一区一A| 丝袜美腿校园春色| 亚洲成人久久美女| 百度百度日本操逼| 91欧美丝袜| 亚洲成A∨人影院在线欢看| 中文字幕一区二区三区人妻不卡| 婷婷丁香五月综合| 国产精品久久久久久高清无码免费看 | 成人丁香五月| 天天视频黄| 精品综合久久久久久97| 长长久久免费视频| 亚洲图片激情综合另类| 日本一二三免费久久| 精品免费一区二区三区在线亚洲人成| 日日操丁香五月天| 97精品一区| 爱爱动态120秒| 日韩欧美tv一区二区在线观看| 蜜臀在线看片| 亚洲男人的天堂一区二区| 九九色精品| 96精品在线| 九九九九一级| 亚洲综人网| 长长久久88视频| 欧美日产国产在线成人第一区| 2020天天色综合| 午夜成人福利影视| 嗯嗯啊啊视频在线看| 欧美一级黄片视频在线| 九七色图| a啊啊啊啊啊啊啊啊一区二区| 久久极品一区二区| 亚洲强奸乱伦影视网| 啪啪啪亚欧美视频| 日韩亚洲Av人人夜夜澡人人爽| 日本超碰在线国产一区| 日本操嫩b网| 成人性爱免费播放| 久久区| 人妻少妇久久| 亚洲天堂区| 五月天黄色激情视频| 性色av大全| 性一级黄色录像片网站导航| 蜜臀99久久精品| 久久国99999| 色噜噜人妻av 中文字幕| 国产精品无码论坛| av久日| 人人人人插| 久久本道| 亚洲第一页色| 99热在线观看| 天天综合精品| 日本有码久久| 天天干人人乐| 综合亚洲网| 97爱啪| 欧美在线 亚洲| 神马久久久久久久久久| 在线 亚洲 网爆 自拍| 亚洲 欧美都市激情| 国产成人精品日本视频| 国产精品婬乱一级毛片彝族| 男人的天堂午夜av| 翔田千里无码中出中文字幕| 小日子操bb在线看| 免费超碰97在线观看| 91精品微拍福利| 国产隔壁老王影院在线| 久久精品国产亚洲AV嘿嘿| 樱花蜜乳av| 亚洲砖码砖专无区2023| 91少妇高潮| 黄色AV影视| 久久69| 国产亚卅97| 操高情无码| 久久久久人| 欧美人妻色| 欧美一级专区免费大片 | 久久首页| 伦理片秋霞免费影院| 黄网色一区二区三区四区精品| 激情五月天社区| 九九热九九| 国产精品老熟女一区二区| 偷拍 亚洲| 97视频在线观看高清资源| 蜜桃色院一区久久 | 日本黄色裸日本黄色裸体| 国产不卡免费在线视频| 久久一区二区三区入口| www.zbzhongsen.com| 久久伊人大香蕉| 日本特黄f c2| 蜜桃色院一区久久| 精品人妻高清麻豆av| 国产日韩久久| 夜间福利片1000无码| 蜜臀操逼黄色视频操的好爽| 色爱综合网| 白丝AV网站| 国产精彩女在线观看视频| 校园春色AV天堂| 六月天婷婷| 传媒在线观看一区二区三区| 久久久久久久久久久久黄色| 久久久久久午夜男人的天堂| 色综合V| 日本www操操操| 欧美色偷拍 | 色99999| 在线一道啪| 狠狠操狠狠| 天美传媒在线一区| 国产丝袜啪啪| 一类无码操逼视频| 九九九九九九九精品视频| 啊啊啊快操我视频| 黄页av| 青草青草久热| 综合激情97 | 丝袜无码a片| 欧美97网| 午夜福利精品| 久久综合日韩亚洲欧美| 91老司机精品| 91美女视频直播| 亚欧免费| 一区=区三区视频| 精品国产乱码久久久| 91香蕉视频在线观看免费| 无码免费一区二区三区啪啪| 欧洲性爱无码区| 男人的天堂VA| 偷拍综合亚洲| 中文字幕视频免费| 麻豆人妻少妇在线免费观看| 少妇熟女一区二区三区| 伊人久久大香大香线蕉中文| 精品久久九| 成全动漫视频观看免费下载| 97超碰国产精品| 人妻熟女一区二区三区视频| 久精品无码av一区二免费国产在线观看| 91n美女视频| 亚洲成人AB| 欧美日韩 强奸乱伦| 屌妞视频久久久久久久| 亚洲精品自拍| 亚洲一二三精品久久网 | 看黑丝美女操逼青青网站| 尤物视频新赏网鲜网色诱网| 国产亚洲精品美女久久久m| 大香网伊人久久综合网eew| 草草电影院| 3571色综合一区二区二区| 久久久999国产精品| 久久精品色欧美aⅴ一区二区| 日本黄页视频在线观看| 午夜爽爽爽在线观看永久入口姬片| 99在线观看无大码| 26uuu偷拍亚洲欧洲综合| 久久超碰免费的| 国产隔壁老王影院在线| 久久精视频美日韩在线视频| 97精品一区二区三区免费| 自拍亚洲综合| 久久精品国产AV一区二区三区| 亚洲瓯美色图| 岛国黄| 999熟女精品| 国产 日韩 另类 视频一区爱| 美女网站黄页| 9色在线| 亚洲久久久久| 99re8超碰| 欧美黄色大片在线观看| 午夜无码熟妇丰满人妻| 伊人五月天| 欧美色网络| 99.色网| 国产精品人人爽人人做可爱福利| 亚洲色图欧美另类在线| 操屄不卡视频| 97aiaiai| 一区二区国产视频在线观看| 久久精视频美日韩在线视频| 激情一区二区| 国产精品高潮久久AV| 亚洲av综合色区无码一| 97色操| 日韩成人高清一区二区| 精品欧美А∨无码黑人大荫蒂| 五月婷婷性爱| 九七毛片九九毛片| 国产精品久久久无码aV去| 成人片在线播放| 亚洲丁香花色| 美女诱惑久久| 欧美在线视频播放| 乱人伦 国语对白:视频直接看| 久久精品一区二区一8| 亚洲系列欧美| 男人天堂.AB| 亚洲精品影视老司机| 97超碰色色| AV中文字幕剧情1区2区3| 97精品国产97久久久久久| 九九久久国产精品怡红院| 波多野结衣被操50分钟免费视频| 亚洲日本韩国极品一区二区| 五月婷婷六月丁香| 色九九久九九| 99re国产精品视频| 久久一二三四不卡| 懂色中文一区二区三区 | 国产AV人人 夜夜人人澡| 亚洲欧美色图| 91丨熟女丨丰满熟女| 久久久男人的天堂| 人人操人人插人www| 久草色悠悠在线视频| 黄片www视频免费| 91精品国产综合久久久蜜臀| 国产精品一区二区三| 久久99网站| 亚洲综合在线91| 精品成人亚洲午夜电影| 狠狠色五月亚洲91| 大香蕉之青青草原| 少妇69中文| 天天操av懂色| 另类小说五月天| 久久国内| 激情综合二| 日本操逼视频不卡直接放| 亚洲欧美日韩激情不卡| 后入式999| 欧美天堂第二区| 97色诱| 久jiu久神马影院| 99热综合| 色色色色综合网| 大香蕉一线视频| 日韩A优精品在线观看| 亚洲**2021在线观看| 久久精品店| 成人国产二区三区在线,男女精品。| 智利AV在线网| 蜜臀av网址| 欧美日韩人妻婷婷一区| 色www精品视频在线观看| 婷婷久久综合| 日本超碰在线国产一区| 综合少妇网| 99re久久| 亚洲欧美国产中文视频| 成 人 影视 一区 二区 三区 四区| av午夜玫瑰| 久久一区二区蜜桃| 久久久内射良家| 日韩精品人妻中文字有码在线 | 欧美日韩精品久久| 美性中文综合网| 亚洲精品国产av天美传媒| 亚洲AV无码| 国产日韩精品一区二区三区| 97网址www| 亚洲妇色| 9久精品视频在线观看| 欧美少妇性乱| 加勒比性爱成人在线| 久久久久久久久国产| 免费亚洲国产精品久久一区| 中文字幕乱偷人妻久久艾草网| 欧美人人天天网| 2020中文字幕在线| 加勒比色99999| 高清孕妇孕交 交| 亚州综合网| 综合av社区| 国产女乱淫真高清免费视频| 中文字幕成人理论在线| 九九热精品| 欧美人妻精品| 无码久| 精品人妻一区二区蜜桃视频 | 九九精品美女高溯喷水| 97精品视频免费| 美国aaaaa一级黄片| 天天舔九色婷婷| 这里只有精品久久| 日韩乱中文| 国产精品亚洲色婷婷久久久| 亚洲日韩XXX| yazhouzaixian| 97天天日| 亚洲国产成人精品久久久国产成人一区二区三. | 婷婷五月天激情小说| 久久久久国产亚洲一区欧美色图日韩 | 999熟女精品| 超碰地址久久| 亚欧性爱无码| 亚洲人人操| 国产精品久久久久久久久久久久久久久久久久| 精品美女人人干| 另类图片综合| 午夜福利精品| 日韩美女久久一区二区三区| 偷拍片久久| 超碰在线一区| 入口操逼网站| 欧美高清性猛交| 日本布卡一区二三区| 日韩亚洲中文有码视频| 人妻啊啊人妻啊| 九九九热精品| 91精品国产一区三一| 91丨豆花丨熟女| 99热在线播放| 天天操美美| 丝袜AV一区二区三区| 国产精品熟女九色九色蜜臀| 人人操人人精品影片| 5252色欧美在线| 久久一区,青青青青草视频在线播放| 深爱五月天| 青青草视频久久| 三级片大波波| 亚洲熟女一区| 美女操逼A A| 亚洲五月丁香花狠狠干一区二区三区| 午夜综合在线| 欧美五十路熟| 欧美亚洲性爱一区二区| 四虎精品永久在线观看| 黄色无码高清黄色无码网站| 五月丁香成人网| 久久9免费视频| 淫荡少妇免费| 最新中文字幕av| 狠狠操使劲操| 96精品在线| 91bbbbbb| 91一起操| 五十路熟女在线不卡观看一区二区| 日本操逼视频不卡直接放| 人人妻人人操人人乐| 久久亚洲一区女同性恋中文字幕| 国产综合永久精品日韩鬼片| 国产九区| 国产人妖的免费的视频| 密臀在线免费观看| 国产精品999aaa| 综合网色| 97鸡把在线视频| 久99视频| 九九九九亚洲| 黄色视频特级毛片| 欧美高潮| 色婷婷五月综合激情中文字幕| 亚洲综合 欧美| 亚洲激情综合另类男同| 日本性爱欧美性爱| 天天看天天在线精品| 国产操伦| 九九热精品在线| 欧美在线播放aaaa| 中文字幕久久亚州无码| 操人人| 日日黄色三级网站| 日本狂喷奶水在线播放212| 久久夜嗨| 中日韩熟女| 日日日日做夜夜夜夜做无码97| 操逼片中文| 综合情欲网| 久热九九| 超碰97人妻在线| 韩日男人的天堂| 国产美女高潮| 亚洲熟妇熟在线电影视频| 久久精品福利影院| 殴洲老熟女| 亚洲精品一区二区三区在线播放 | 加勒比大香蕉视频在线| 久久夜夜| 夜夜狼人妻| 亚洲色系另类精品国产| 激情情色五月天| 9久久精品| 国产精品人妻无码久久久老鸭窝| 亚洲97P| 亚洲成?V人片在线观看福利| 青青草色AV| 久久久久日本视| 国产欧美日韩一区二区三区| chaopen97久久| 欧美极品女人的天堂| 人妻二区| 天美传媒精品久久视频| 男人天堂婷婷五月天校园春色| 亚洲男人综合| 亚洲一二三四区在线免费看视频| 色一射色一射| 亚洲少妇在线观看| 激情五月综合| 伊人性在线视频| 国产成人91一区二区三区| 日韩欧亚中文在线| 日本欧美成人片AAAA| 黄人人操人人操| 99精品无码| 97超碰无码网| 色婷婷综合网站| 免费观看性欧美一级| 天天影视综合色| 爱欲AV| 久久久婷| 精品久久久久久中文字幕视频免费| 校园春色亚洲无码| 欧美性猛交美女自慰91| 日美免费黄片| 视频一区二区三区精品| 久久精品人妻一区二区| 神马久久久久眼| 午夜福利成人免费视频| 影音先锋日本一区二区| 国色综合天| 啊啊啊啊啊啊啊在线| 久久国色天香香蕉| 色综合婷婷| 超碰97人人cao| 乱人乱色一区二区三区免费| 神马久久中文字幕| 久热伊人99re| 激情婷婷五月天| 性暴力欧美猛交在线直播| 亚洲欧美碰碰| 亚洲清纯综合| 久久精品人妻一区二区| 男人天堂站| 欧美精品自慰系列寂寞少妇| 国产精品区在线12p| AAAA级日本片免费视频| 操人妻视频| 日韩在线人妻网站| 粉嫩不卡一区二区性爱| 婷婷人妻激情| www.婷婷| 天天影视91看看| 色综合加勒比四四季| 中文字幕老熟妇黄色视频| 91free福利| 国语对白在线播放视频| 免费一级a毛片久久久久久鸭绿欲| 97碰| 中文字幕一区二区三区50路| 人人操人人操人妻人| 天天日熟妇| 啊啊啊好湿久久| 99.色网| 亚洲色图a| 麻豆国产av网| 97玖玖人妻| 色综合中文字幕不卡| 国产熟女少妇一区| 91狠婷| 蜜臀AV成人精品蜜臀AV久久| 亚洲欧美setu| 久久久精品视频欧州站| 超碰97日韩| 日韩一级二级三级免费看完整版 | 91网站18+| 欲色综合| 国产强奸乱伦无码视频| 国产精品原创巨作?v网站| 小视频玖玖| 无码人妻丰满热妇又大又粗| 色噜噜精品一区二区三| 老司机老司机午夜影院| 欧美一区二区三区日韩| 久久99亚洲精品久久99果| 丁香成人五月天| 久久精品色欧美aⅴ一区二区| 国产乱伦一二三区| 久操综合在线| 亚洲图片偷拍视频区| 快灬快灬 一下爽蜜桃在线观看| 日本不卡卡一区| 九九热AV| 国产一级黄色片在线观看| 干b在线性社区| 爆乳免费黄网站| 老熟妇综合| 国产精品久久久久999| 色九九久九九| 97国产超碰| 香伊人在线| 每日更新AV| 五月丁香六月婷| 色婷婷综合久久久久中文一区二区| 无码人妻丰满熟妇奶水区毛片| 欧洲精品人妻| 有码专区最新中文字幕有码| 少妇久久久久久| 另类图片综合| 国产免a费看黄片在线| 亚洲一卡2卡3卡4卡乱码网站 | 大香蕉一人| aV中亚| 午夜福利免费福利视频| 天天干天天插| 俺去久久| 韩国嫰模上门援交视频| 女生久久网| 久久91视频| 丁香五月激情网| 久久一二三四五六七八九区区| 久9久9久9久9久9久9| 日本孕妇一区二区视频操逼免费看 | 国产视频一区二区免费| 伊人综合色网| 久久久久国产精品人妻aⅴ天堂| 97干97色| 久久99视频| 试看60秒| 日本性交操一区二区不卡系列| 日本99热| 亚洲综合色在线| 久久久久亚洲av综合波多野制衣| 亚洲 图片 综合91| 精品人妻一二三| 120分钟婬片免费看| 中国熟女网站| 日韩欧美操逼xxx| 亚洲图片 91| 乱人乱色一区二区三区免费| 激情小说成人日本无码一| 日本97久久久精品| 老司机福利青青草| 夜夜一区二区| 大香蕉中文201| 日韩欧美经典在线观看| 99后入| 欧美性爱中文字幕无线码| 97久久精品国产| 人人么人人操| 天天看片天天爽| 囯产精品久久久久久久久久二区三区| 精人妻一区二区三区| 欧美成97爱| 乱伦a片视频| 国产丝袜视频| 欧美高潮| 日韩精品在线放| 色九区| 久草精品一区| 人人操人人摸人人骑| 黄网色一区二区三区四区精品| 伊人97色天使| henhen91| 一级A片女人高潮叫床| 国产精品久久久视频| 人妻另类| www.91理论| 嗯嗯嗯啊啊啊操的我好爽| 日韩天天综合| 青青操综合网| 天堂麻豆天美| 97干在线| 色人久久| 日本一级不卡一二区| 国产久久免费精品视频| 裸体美女免费看网站青草| 欧美一区二区三区成人性生活| 国产拍偷精品网站| 天天欧美欧美亚洲网| 超碰在线综合97| 国产成人手机视频激情| 一区二区三区四区姦女| 亚洲日韩天堂| 天天插天天射| 久久熟女精品不卡一区| 一线黄色免费性爱片| 又黄又粗又硬又长又大| 中文字幕天堂在线| 久操视频免费在线观看| 97超碰9| 97操碰| 国产精品白丝www| www.色操逼| 97精品人妻一二三四| 午夜福利精品| 97就爱干| 国产精品无码在线| 欧美中字不卡| 午夜影美女日鸡鸡天天视频国产| 婷婷另类小说| 无码精品久久久天天影视| 精品然女一区二区| 一本精品日本在线视频精品 | 日韩熟女操逼| 91国产大片| 欧美日韩色综合网| 青青青艹在线视频| 免费亚洲黄色视频在线观看| 国产视频大全| 日韩丰满熟妇| 九九九九免费视频| 亚洲天堂无码| 91欧| 区日韩亚洲乱码av电影| 草草草视频在线免费看| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | www.久久最新地址| 国产诱惑| av中文在线| 久操精品| 91国产大片| 国产中文精品一区二区在线观看| 亚洲资源网| 国内毛片无码一级毛片| 欧美色视| 艾草av| 日韩国产在线观看av| 羞答答AV中文字| 99∨VTV| 色欲三区| 大香蕉日韩欧美| 校园春色综合| 国产AV色黄看到爽| 高清孕妇孕交 交孕妇| 婷婷色综合| 18禁无码永久免费无限制| 久久99深爱久久99精品| 这里只有精品视频| 国产高清视频无码在线| 天天插天天操天天摸天天射天天看| 欧美一区二区亚洲天堂| 综合另类| 亚洲色图综合网| 精品久久視頻在线| 日本欧美一区二区三区视频麻豆| 97国产综合欧美| 东北夫妻性偷拍| 国产精品自拍xxxx| 日躁天天爽爽| 久湿久久| 东北黄色电影| 无码人妻丰满热妇又大又粗| 国产精品96久久久久久| 久久精品中文| 亚洲日韩AV视色| 操逼视频亚洲| 成人羞羞视频国产| 亚洲91射| 97大色网| 五月天综合网| 欧美大香蕉同搞| 女性91网站| 干b网| 欧美日韩婷婷中文| 青青操青娱乐| 日韩丝袜二区| 久草精品国产99| 深喉吞精| 插入粉嫩少妇视频| 射欧美综合| 天天爽爽爽爽| 中文字幕精品资源在线| 色婷婷六月丁香七月婷婷| 天天综合青苹果| 亚洲女人毛茸茸91| 男生女生啊啊啊啊| 欧美黑人性猛交91| 桃花色涩综合影院| 久久直播国产| 人人操人人舒服| 色与欲影视| av橘色网站| 射丝袜大香蕉| 另类 综合 日韩 欧美 亚洲| 国产蜜臀精品一区免费尤物| 国产精品免费视频不卡| 综合免费无码中文| 大香蕉一区二区在线观看.| 亚洲av性爱电影| 热热色91| 97中文热色| 91欧美www| 色香网| AV在线播放网址| 日本一久是| 青青青艹在线视频| 丝袜美腿校园春色| 骚逼一区二区| 91天天综合网,天天综合网| 欧美色图亚洲色图成人在在线| 人妻丝袜无 码视频专区| 色999亚洲人成色| 亚洲国产欧美中日韩成人综合视频| www.99中文字幕| 黄色AAAAAAAAAAA大片| 啪啪视频亚洲第一| 精品成人亚洲午夜电影| 精品国产一区二区三区香蕉欧美 | 97在线观视频免费观看| 伊人玖玖网| 久久超碰98| 国产精品久久久久久久久久久久久久久久| 亚洲码和欧洲精品激情系列| 人人操天天爽| 亚洲欧美日韩有码| 亚洲淫色网中文| 国产性爱欧美性爱在线| 国产中文日韩欧美一区二区三区人妻丝袜美腿 | 欧美综合网站999| 日韩在线观看AV| 国产中文大片资源中文字幕 | 天天天天做夜夜夜夜做| 偷拍 精品 另类 四区| 精品久一区免费| 久久久久七视频| 色网综合网| 久久精品国产97欧美精品亚洲|