日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满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
返回資訊列表
日韩日本欧美在线观看| 不卡av免费在线网址| 日本成人A片网站| 九一综合精品视品av| 野狼福利社区| 亚洲的天堂网| 色综合色综合网| 亚洲天堂欧美| 欧洲色综合| 日韩ab网 | 奸色色 男人天堂 天天射| 一本大道久| 欧美综合站| 日韩欧美午夜一区二区| 欧美综合色| 丁香五月AV| 久久久精品中文字幕爱豆| 九九九久久久久| 天天操狠狠日夜夜干超碰撸com视频在线观看 | 午夜黄色免费在线观看| 中英熟女操女| 精品久久久久久AV无码| 欧美国产婷婷久久| 美女上床网站| 91爱欧美| 97久久久精品| 久久鲁夜| 久久久久久久久久久久久久久性生活视频 | 美女91av| 男人的天堂VA在线| 青青草在线视频人人想人人上| 日韩精品中文字幕一| 少妇久久久久久| av橘色网站| 夜夜综合| 伊人96在线| 国产午夜视频| 亚洲精品国产日韩无码AV永久免| 色欲三区| 992视频一区| 狠狠爱AV| 亚洲玖玖爱| 波多野结衣AV无码一区| 精品久久久久久中文字幕视频免费| 艹少妇网站| 96AV精品| 午夜国产综合视频在线观看| 男人的天堂三级| 久久久久久网址| 丝袜熟女2P| 神马久久久久久久| 偷拍视频青青草在线视频| 亚洲97久久精品亚洲| 日韩欧美麻豆 | 成人性爱免费播放| www.高清无码诱惑一区.com | 韩日男人的天堂| 91亚洲色图| 久久久久久久久久黄色网| 人人九九精| 91碰碰| 大香蕉综合网| 春色综合免费| 国产60区。| 在线无码操| 性91| 99少妇| 99xav| 99婷婷| 大香蕉一区二区在线观看.| 天天欧美97| 男人的天堂日韩| 一区二区三区四区五区高清无码永久视频| 偷窥自拍A片| 成人国产二区三区在线,男女精品。| 天天爽天天干| 五月天婷婷综合| 中文字幕黄片在线| 亚洲日韩欧美一区二区| 久久一二三四五六七八九区区| 日韩成人精品中文字幕| 婷婷五月天成人网| 国产精品一二三免费网站| a v网站在线播放| 五月婷婷六月丁香网址| 国产精品视频麻豆入口| 伊人黄色片| 国产美女在线精品免费看| 偷拍综合网| 综合 亚洲 欧美| 天天综合官网| 一区二区中文| 免费黄色片。| 亚洲欧美精品福利在线| 日本大片日本一区二区免费高清| 午夜精品99久久久久传媒| 狠狠操狠狠| 射 色综合| 激情终合网| 骚女高跟AV在线| 欧美成人国产精品| 中国特猛少妇色xxx| 九九九999久久久网站| 中国小夫妻勾搭露脸淫荡对白| 射欧美综合| 樱花草社区www中国| 男人天堂网手机版婷婷| 麻豆国产97在线| 色香网| 欧美精品久久| 久久久久久人| 国产精品无码在线| 国产精品天干天干综合网麻豆| 97欧美色| 亚州一区二区成人片免费| 97青青操视频| 粉嫩av在线| HEYZO高无码国产精品227| 嗯嗯嗯嗯啊啊啊好紧好大| 后入式在线免费观看60秒| 欧美丝袜亚洲| 超碰在线看| 久久內射| www.伪伪| 亚洲成人AB| 久久久亚洲欧美综合| 人妻天堂综合网| 亚州色图片在线色| 尤物网址| 操死我了啊啊啊| 亚洲**2021在线观看| 男人夜色天堂ss| 视频黄站| 色五月激情综合网| 欧美综合亚洲| 人妻少妇久久久| 941超碰| 亚洲国产精品9999在线观看| 欧美亚洲影视| 国产成人自拍视频视频| 97超碰国产亚洲精品| 韩国一级婬片A片AAAAA| 69精品| 校园春色 男人天堂| 91欧美少妇| 五月丁香六月| 啪啪免费| 色妇综合网| 国产伦乱91| 91美| 久草成人影片| 超碰在线974| 中文字幕精品亚洲熟女| 激情九月婷婷| 日本东京热久久久电影| avav青青草久久夜| 国产乱码久久| 留下AⅤ黄色片| 久操免费在线| 亚洲男人天堂视频| 啊啊啊啊在线观看网址| 97人人模人人爽人人| 欧美超碰97| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 欧美一级AAAAAAA| 爱妻综合网| 欧洲免费一区二| 奇米狠999| 91国产丝袜白虎| 日本一区99| 91美女丝袜诱惑视频| 26UUU欧美激情一区二区| 日产中文字幕2020| 欧美人人天天网| 欧美男女午夜啪啪| 免费9 1久久| 黄色一区二区秘书性感| 国产欧美日韩一区二区三区| 中文字幕高清精品一区| 亚洲欧美综合| 特级特黄一级毛片免费| 岛国黄片网站| 这里只有精品视频在线观看麻豆| 久久成人国产精品| av爱爱爱| 欧美1区二区三区公司| 强奸乱伦免费网站| 日本成人A片网站| 国产午夜精品理论片一二三区区| 操人人| 欧美,日韩,亚洲视频| 熟女精品va中文字幕| 熟妇在线视频一区二区| 国产黄a三级三级三级av在线看| 91一区二区| 91亚州欧美| 高树玛利亚无码流出| 蜜臀久久99精品久久久久免费观| 视频黄站| 天天色天天干天天爱| 殴美在线AⅤ| 无码免费精品高清| 蜜臀久久99精品久久久老,,| 性一交一乱一交A片久久四色| 立川理惠加勒比无码| a网站免费观看| 大香蕉啪啪啪啪在线| 婷婷丁香人妻| 亚洲二区精品在线观看| 国产精品视频电影| 亚洲精品97p| 青青草原伊人网| yw尤物av无码点击进入麻豆| 成人电影一区| 欧美激情亚洲情色| 天天摸夜夜添无码小视频| 精品久久久久久亚洲| 亚洲综合99999| 国产美女口爆吞精| 97超碰色色| 家庭乱伦网站国产| 国模不卡一本二本三电影| 青青草好吊色| 久久九九综合| 精品二区久久| www网站黄| 91日日| 97在线看| 亚洲丝袜色图| 国产一区二区三区白丝| 大乔未久88一区| 国产最新小视频在线播放下载| 99热综合| 啊啊啊草死我| 91国产精品在线看| 97天堂| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 亚洲色五月| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 欧美大香蕉97| 久草免费福利在线播放| 日韩电影中文字幕| 97久精品| 日韩乱插| 丰满美女一级毛片在线播放| 快点操死我| 20cm女自慰在线日韩欧美| 少妇特黄一区二区三区| 欧美人妻少妇| 裸体1区| 欧美专区日本专区| 黑人精品一区二区在线播放| 一级免费精品| 欧美专利1区2区3区4区5区免费| 波多野42部激情无码喷潮| 91老熟女老女人国产老太| 国产无码三级视频在线观看| 精品视频一区二区| 精品一国2| 欧美淫穴| 国产做?爰片久久毛片?片美国| 天天操天天干美女网址导航| 中日无幕一二三四区| 国产精品麻豆视频网站| 秋霞成人做爱| 久久性爱视频免费看| 五十路熟女在线不卡观看一区二区| 男人的天堂2010| 一本大道不卡一二三区| 日韩成人高清一区二区| 天天干嫩逼网| 99国产女人| 少妇蹲下买菜露大唇0| 极品后入免费视频| 超碰地址97| 色5月婷婷| 影音先锋视频在线| 国产激情av女片自拍| 偷拍三区| 青娱乐 青青青操 日逼| 伊人亚洲综合| 亚洲欧洲自拍| 中文字幕三四区| 日韩欧美~中文字| 在线小说视频一区| 大逼色网站| 精品欧美日韩在线观看| 亚洲国产天堂| 天天谢天天干| 思思99热| 青青伊人加勒比海| 久久亚洲日韩熟女精品| 国产精品不卡少妇白| 一区二区三区四区理论片| 久九九九九九九九热| 91宗合网| 无码外流操逼视频| 色婷婷视频| 亚洲色图欧美色图制服丝袜| 超碰久久网| 日本不卡免费二区| 日本成人A片免费看| 日韩在线观看字幕精品| 黑人中出21连凳花野真衣| 最新中文字幕av| 777超碰| 亚洲男人综合| 亚洲精品819| 中文字幕精品三级久久久| 天天影视综合色| 曰韩av中文字幕专区| 欧美精品自慰系列寂寞少妇| 久久久久久久综合,国产| 久久黄人人爽视频| 午夜欧美女人操逼| 久久熟女久| 97视频在线播放| 亚洲精品乱码久久久久久蜜桃麻豆 | 久久久久久性爱视频| 伊人成人情色综合| 97伦综合| 国产精品久久久久无码AV会牛| 国产成人综合网| 厕所偷拍在线| 9999久久久久| 思思热在线cao| 蜜臀AV一区二区三区激情综合| 日韩黄片视频试看| 无码人妻精品一区二区三区九九| 91欧美色| 1区2区3区中文字幕日韩| 亚洲āv网址在线观看| 中文字幕黑人大片| 欧美,日韩,中文,另类| 夜色AV无码手机在线影院| 欧美在线色| 日本一区二区成人在线| 大香蕉伊然在亚洲91| 国产熟女精品一区二区| 91亚洲不卡一区| 97超碰欧美中文字幕| 日本久操视频| 色色色欧美| 亚洲精品九九九九九九| 亚洲精品99| 久久AV无码AV| 麻豆国产成人精品| 很很热性爱视频| 亚洲色图 91| 超碰久久性爱| 玖玖玖玖精品国产剧情| 男人久久天堂| 亚洲第一二区另类图| 天堂中文日本在线观看| 亚洲天天综合| 久久av网| 精品少妇一区二区三区免费观看| 亚洲高清无码在线桃色| 啊啊啊好想要| 精品欧美日韩在线观看| 少妇同性| 区日韩亚洲乱码av电影| 成人三一级一片aaa| 国产精品大香蕉| 中文字幕国产| 国产成人精品一区| 婷婷五月天激情网| 国产探花精品在线| 中日韩一区二区三区欧美| 东北女人| 亚洲国产精品久久久男人的天堂| 97操97色| 免费黄色A片| 亚洲网站一区二区在线| 亚91网| 久久久96精品| 激情四射五月天| 国产AV人人 夜夜人人澡| 中文字幕视频2区| 天综合网| 欧美黄色图片| 婷婷丁香一区二区三区| 粉嫩久久久久| 一区二区不卡| 天天操熟妇| 日韩人妻无码不卡网站| 亚洲欧洲成人在线电影| 奇米四色影视777久久久| 精品二999| 嗯嗯嗯啊啊啊干死我吧| 欧美青青视频| 91操熟女视频| 国产农村妇女精品| 日韩欧美国产一区二区三区四区| 视频在线观看免费一区二区三区 | 精品久久久久,69国产成人精| a网站免费观看| 九九九九九九亚洲| 男女香蕉一区二区| 农村少妇久久久久久久| se吧提供国产乱老熟视频胖女人| 亚洲精品毛片在线观看| 天天干,天天日| 很很热性爱视频| 国产成人资源| 玖日综合网| 国产精品高清2021在线| 国产精品交换一区二区| 久久骚| 操一操摸一摸| 思思视频免费看网站| 午夜精品久久久99| 黄色不卡视频| 欧美成人性活片| 欧洲熟妇xxXx欧美老妇裸体| 国产小炒后入式| 东京热男人天堂| 一本一道vs波多野结衣| 久久9 9 9精品| 91老熟女老女人国产老太| 精品无码产区一区二| 日韩欧美国产一区二区三区四区| 婷婷15月天青娱乐| 国产家庭乱伦表演| 91neishe| 国产日产欧产美韩系列麻豆免费| 99国产在线 精品 视频| 午夜福利在线合集| 欧美 亚洲 偷拍自拍| 熟妇激情| 午夜国产成人福利视频| 精久久久| 精品国产精品一区二区| 97在线播放 | 插入逼91| 久久大陆| 亚洲av国产av综合av卡| 九九九九97| 国产伦精品一区二区三区在线观| 自拍啪啪视频| 久久久久久国产精品| 91老熟妇| 九九热免费国产视频婷婷伊人| 亚洲黄色电影| 歐美一級亂黃99在綫精品| 午夜福利激情在线视频| 四虎免费在线播放| 九九热免费国产视频婷婷伊人 | 黑人黄片在线免费观看| 日韩兔费看黄片| 1204av韩国| 久久久18| 亚洲中文字幕av| 中国一级αV| 大香蕉人妻久久| 久超超碰| 天天影视网综合少妇| 亚洲av综合伊人久久| 亚洲综合色在线| 精品无码一区二区| 国产女人高潮视频| 91九色精品熟女内射| 91久久久久久久| 天天色综合天天操| 午夜AV污污污| chaopen97久久| 人妻内射一区二区在线视频| 九色精品视频导航1| 骚货人妻偷情自拍在线视频| 日韩毛片9| 无码 黑人一区二区三区| 欧美男人一区| 日韩精品人妻| 精品久久久久9999| 人妻精品免费一二三区| 国产suv精品一区二区四区999| 91女日逼| 密桃99999| 色九九九九| 人人操 欧美| 天天看天天综合成人网| 99热这里只有精品18| 日韩人妻无码专区| 极品久久久久久久久久久久久久| 强奸抽插av| 亚洲最大黄网| 91大神精品长腿在线观看网站| 国产成人精品日本亚洲语言| 欧美三级偷拍| 国产精品96| 丁香五月激情婷婷| 欧美亚洲se91| 国产又色又粗又黄又爽| 国产丰满熟夫69mpp| av天堂加勒比| 日本综合色图| 国产亚热在线久久| 91无码人妻| 91久操| 国产极品999| 玖玖久久久| 一二三区在线| 夜夜爽夜夜| 日本熟女不卡视频| 色超碰综合| 国产精品视频一区二区三区八戒| 国产精品另类一区大香蕉| 2018天天日天天日| 大香蕉在线免| 亚洲风情在线观看| 人妻酒店出差被中出免费在线播放| 精品国产www久久| 国产农村妇女一区二区| 久久久国产三级黄色片| 91丝袜美女| 欧美专区日本专区| 男人的天堂va在线| 熟女一区二区| 大香网伊人久久综合网eew| 国产av强奸美女| 国产精品69久久久久孕妇欧美 | 无码聚合| 色69大色97香蕉| 黄片在线免费在线观看| 久久久久亚洲Av无码专区老牛影视 | 大香蕉婷婷| 国产精品一区二区手机看片| 亚欧美色图| ss久久| 一级啊性爱在线视频| 欧美黑人熟妇精品91| 蜜臀99999| 亚洲人妻av| 成人免费看吃奶视频网站| 欧洲一区二区三区四区在线观看| 麻豆精品久久久久久久| 亚洲AV秘 精品久久老牛影视| 99re28在线观看| 国产精品网站www| 五月丁香啪啪啪| 久久69精品久久久久久久| 九九九国产| 欧美91网站| 91男女啊啊啊| 九九久久99| www.大香| ,成人免费啪啪视频| 中文字幕AV中出| 亚洲欲| 九九久久国产精品| 亚欧精品久久久久久久久久久| 18禁免费视频| 涩综合导航| 国产高清自拍| 超碰在线91| 久久9免费视频| 好屌色综合| 九九九综合精品| 看一级黄色视频| 插穴性爱视频在线观看| 99e久久国产精品| 亚洲欧美人妻| 欧美精品97| 人妻精品一区二区三区| 中文字幕一二三| 国产超碰97| 97超碰色中文字幕| 蜜臀无码一区二区| 在线小视频| 欧美久久久| 欧美日韩国产人人| 中文字幕视频免费| 老司机午夜福利视频一区二区| 九九热精彩视频| 99精品久久久久久| 色偷偷综合91久久噜噜| 噜噜噜噜久久久精品免费| 精品国产乱码久久久A| 欧美激情精品久久久久久| 久久风骚城市人| 快播久久人人aV| 亚洲精品电影| 精品免费囯产一区二区三区| 亚洲美女精品九九视频| 亚洲资源站| 日韩视频中文字幕| 国产三级资源在线观看| 亚洲麻豆av一区二区| 亚洲av综合伊人久久| 亚洲午夜未满十八勿入网站日本又色又爽又黄 | 欧美老妇曰批的视频| 狠狠操夜夜| 殴美在线AⅤ| 99热这里只有精品地址 | 久久人妻无码毛片A片麻豆| 色妇91| 天天日美女的B| 欧美后入式| 色香av| 亚洲欧美综合网| 区二区亚洲婷| 亚洲综合色男人网| 欧美成人性活片| 加勒比日本在线| 欧美少妇性乱| 懂色AV蜜臀无码精品APP| 日逼97| 性久久| 美国aaaaa一级黄片| 黄页网站成人免费| 思思热在线cao| 日韩精品人妻中文字幕不卡乱码| 99爱久久视频频| 综合天天。| 天天看天天日天天操| 97综合在线观看| 欧美亚洲第一页| K8久久久久| 天天视频网站黄| 91天天爱| 亚洲高清自拍| 中文字幕jul-617人妻熟女| 超碰激情808| 91 偷| 日日夜夜精品| 久久综合中文国产| 天天看天天日天天操| 草莓精品视频| 欧美色图 人妻| JIZZJIZZ亚洲女人被躁| www.狠狠操| 99日视频在线免费| caoni国产亚洲av| 亚洲三级网址久久最新| 国产中出内射一区二区| 天美精品av| 97色欧洲| 亚洲成人综合在线| www.成人无码| 黄色片大香蕉| 97chaopenrihan| 中国女人内射6XXXXX| 国产视频大全| 美女写真| 高清不卡 中文 人妻| 久久成人午夜精品影院| 超碰碰激情97+久| 日韩中文字幕视频| 最新av在线| 日韩乱伦AⅤ| 91精产一区二区三区| 精品午夜福利国产一区二区在线观看 | 国产色呦呦| 欧美精品,四区。五区| 中文字幕aⅴ在线视频| 精品妇操一区二区三区| 亚洲国产午夜真人一级片中文字幕精品黄网站| 欧美色图20p| 色婷婷在线视频| 99re视频这里只有精品| 亚洲91极品| 精品人妻中文字幕高清| 99999精品成人| 国产特级毛片AAAAAA高潮流水| 妇女视频网站| 顶级丝袜熟女一区二区三区 | 91欧美亚洲| 久久久久久亚洲精品中文字幕人妻| 日本一区二区不卡| 狠狠图片青青草| 在线观看AV片| 99re这里只有精品2| 久久久久久午夜男人的天堂| 国产精品视频内谢女人| 夜夜操一区二区| 国产精品亚洲免费| 91综合网站| 色五月天AV| 黄色欧美性爱视频| 欧美AB在线| 91嫩草欧美| 思思性爱| 日韩欧无码一区二区三区免费不卡| 青青操在线亚洲视频观看欧美在线| 中文字幕亚洲永久精品| 国内一级精品| 97久久精品国产| 牛牛aV| AAAA级日本片免费视频| av久日| 欧美色棕合| 免费亚洲黄色视频在线观看| 992大香蕉| 亚洲精品一二牛牛| 九九99精品视频在线观看| 黄色成人网久久久久久| 九九久久99| 亚欧美色图| 久久精品国产亚洲5555| 91麻豆va国产精品| 久久加勒比| 动漫av中文| 吻戏激情性巴克| 丁香六月激情| 欧美色图91| 色香伊人| 日日夜夜骚| 久久九九网| 亚洲一曲日韩精品| 欧美v日韩v亚洲v最新在线| 蜜桃视频啊啊啊啊| 亚洲欧洲精品成人| 五月天色五月| 日韩探花精品在线视频| 亚洲成人激情小说视频| 人妻激情视频| 久久亚洲色图中文字幕| 有码人妻系列| 狠狠爱综合网| 婷婷中文网| 国产在线激情视频| 亚洲中字幕日本一区二区三区| 免费男人的天堂| 天天摸天天舔天天操| 熟妇人妻一区二区| 人妻天天夜夜爽一区二区| 全免费a敌肛交毛片免费| 免费国产电影一区二区| 九九碰九九爱97超碰| 欧美综合色图网| 久久久一区二区| B049AV在线播放| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 在线视频日韩欧美国产| 免费精品中文字幕| 老司机天天操| 国产精品午夜福利亚洲综合网| 亚洲欧美伦综合| 大香蕉99re| 色与欲影视天天看综合网| 天堂涩涩| 操少妞在线视频| 欧美中字不卡| 久久成人午夜狠狠| 国产后入清纯| 国产精品69久久久久孕妇欧美| 国产精品久久久九九九| 九九国产热| 久久婷婷欧美| av久日| 日韩丨制服丨中文|在线| 学生妹天天看| 亚洲97网站| 国语精品av| 久久这里只| 国产一国产一级毛片古装| 中文字幕在线观| 乱伦一二三区| 91在线视频观看国产| 久久久久国产精品喷潮免费观看臀| 日韩亚洲精品一区二区| 在线中文字幕极品av| 操逼视频免费日韩无码| 超碰成人免费| 99久久com免费视频′| 双插在线| 香蕉大久久久| 亚洲美女精品九九视频| 免费AV中文网在线观看| 翔田千里一区二区三区奶水| 日韩成人精品视频自拍| 丁香五月天社区| 亚洲情色婷婷五月天| 熟女天天干| 九九九九97| 97chaopengongkai| 韩日精品四区| 熟女欧美日韩综合婷婷| 啊啊啊好疼| 欧美翘臀视频网站一区二区三区| 91肉片| 一本一道vs波多野结衣| 五月丁香激情综合网| 欧美久久毛片基地| 欧美精品欧美精品系列| 999999精品| 久久国产免费激情视频| 中文字幕视频在线观看一区二区| 99国产人成精品| 大乔未久88一区| 欧美日韩人妻精品系列一区二区三区| 97在线公开视频| 少妇被c 黄 免费观看| 北约熟女超碰| 婷婷丁香五月综合| 欧美97视频| 91色宗合| 亚洲毛片一级带毛片基地| 91狠狠综合久久久久久| 黑人与人妻| 97干97色| 激情五月丁香五月| 91AV天堂| 乱伦强奸区日韩| 婷婷五月天激情网| 色色99| 久久久久久久91| 亚洲成?V人片在线观看福利| 欧美在线伊人色| 日本幼女18+| 青娱乐亚洲自拍| 黄色二级片网站| 日韩猛交| 第一高清av中文字幕| 久日91在线| 亚洲一区二区在线观看91| 亚洲激情在线一区二区| 欧美大片一区二区三区| 欧美不卡在线一区二区| 天天肏美女| 中国少妇啪啪视频| 俞拍自拍| 懂色AV蜜臀无码精品APP| 久久一区二区加油站| 婷婷亚洲综合| 日本色婷婷| 香蕉色网| 一区二区三区国产在线播放| 欧美日韩亚洲少妇寂寞影院正在播放 | 我要色综合网| 日韩色| 97色视频在线| 欧美日韩国产成人高清| 五月婷婷六月激情| 欧美色91| 亚洲欧美国产日本一区二区三区| 大香蕉92| 久久香蕉综合一本到3atv| 日日干夜夜欢| 强奸乱伦av电影| 亚洲丝袜制服国产91_国语字幕免费观看完整版下载第5集_ | 97WW精品| 男人的天堂网页| 日本一区三级韩国| WWW.操逼.COM| 麻豆AV96熟妇人妻| 人妻中文字幕精品无码| Julia Annxxxxx| 国产成人精品日本视频| 97精品视频在线播放| 欧美丰满熟妇XXXX性ppX人交| 久9久9久9久9久9久9| 色爱国产| 无码78| 日本九九久久99播| 亚洲天天做日日做天天谢日日| 亚洲自拍欧美国产首页网曝| 国产精品999zyz| 日日躁狠狠躁天天躁精品| 色色热| 97无码视频在线播放| 97国产天堂岛| 久久久久国产精品片区无码直播| 91熟女视频网| 九九色色| 亚洲精品一区二区精品| 99国产精品自在自在| 99热精品在线| 日本高清免费一本视频在线观看| 97爱b| 国产97色在线| 亚洲日韩国产精品| 91总综合网| 十八禁视频网站| 永久免费观看的毛片的网站| 97色色,97综合| 国产亚洲综合欧美一区| 操一操摸一摸| 精彩久久中文| 欧美久久九九| 午夜电影在线观看无码专区| 色欲久久99国产精品久久久久久| 手机不卡视频不卡在线一二三区| 风流老熟女一区二区三区l| 鸥美中出| 天天激色| 久久久99久9| 国产AV超爽| 亚洲欧美色图小说| 天天影视91看看| 久久精品视频28| 99精品在线播放| 高潮的A片激情扒开一区| 青青草依人大香蕉| 天天天天天超碰| 亚州色图第三区| 国模无码一区二区三区在线| 欧美精品三区| 久久久精品,3| 色在线69堂| 香蕉精品二区二区| 五月天综合网| 校园春色 男人天堂 | 9 1超碰九色| 屌妞视频久久久久久久久久久久| www激情| 黄色AAAAAAAAAAA大片| 久久老女人| 日产精品久久久一区二区| 激情综合av| 日韩美脚一区二区网站| 亚洲欧美激情在线视频| 人妻少妇被猛烈进入中| 一区二区三区免费视频入口| 亚洲少妇视频| 国产av色网| 一区二区三区色综合| 五月天色图| 精品国产自在在线99| 婷婷激情四射| 国内自拍 日韩激情 99| 久操网线| 亚洲第一黄色av网站| 久久亚洲国产成人| av影片在线观看不卡| 日韩大香蕉AV影片| 熟女久久| 密臀成人视频久久久| 日韩 欧美 国产 麻豆| 自拍二页| 欧美国产视频| 少妇人妻无码| 熟女自慰久久久| Av色五月| 射丝袜高跟鞋99| 国产馆极品诱惑| 男人的天堂在线有码| 中文字幕一区av| 亚洲丝袜二区| 色五月av| 人人喜人人妻| 日本人妻一区二区| 黑丝少妇麻豆| 国产传媒美日韩av| 久久久久久久久久久999| 日产中文字幕2020| 中文幕97| 久久超碰av在线| 欧美色图小说综合| 激情情色五月天| 啊啊在线| 特色a在线上| 日韩性爱小视频| 国产精品露脸在线观看| 青娱乐欧美激情一区二区 | 足交视频老司机| 大干人妻| 丰满人妻-区二区三区免费看 | 四虎免费在线观看| 12一15性XXXX粉嫩国产| 先锋影音av先锋一区| 久久国产乱子伦精品免费女人| 91在线视频观看国产| 综合自拍| 精品少妇后入一区二区三区四区人妻巨乳 | 欧美亚洲厕所精品偷拍91| 伊人少妇久久久| 9久久久久久| 激情五月天中文字幕色| 国产AV色黄看到爽| 久久鲁干| 日本熟妇一区二区三区| 成人综合网 欧美| 97国产精品久久久久 | 97超碰无码网| www.av不卡中文字幕| 男人综合网| 性暴力欧美猛交在线直播| 无色无码| 夜夜操91744565| 久久人妻少妇| 亚洲天天综合| 殴美在线AⅤ| 99热综合在线| 国产欧洲精品亚洲午夜拍精品| 亚洲欧洲综合| 欧美日韩国产另类综合| 九九碰九九爱97| 婷婷情色五月天| 怡春院久久| 樱花蜜乳av| 九九在线视频| 亚洲黄色网址| av中亚| 亚洲成a人在线观看久| 欧美一区91大爱| 蜜桃精品一区二区三区久在线| 91性网| 色嗨嗨在线| 91在线视频免费中出| 久久99干一本高清| 亚洲一曲日韩精品| 小草精彩毛片| 在线洲亚线| 国产 日韩 欧美高清| 久久久久久久久久久六六| 亚州九九九精品视频| 久久在线观看免费视频| 97香蕉碰碰人妻国产欧美| 亚洲AV不卡在线观看尤物| 亚洲综合在线第一页| 国产成人精品日本视频| 亚洲精品骚逼| 色图综合网| 国产成人网| 中文精品少妇天堂| 国产精品网址| 人妻一区久久二区三区色播| 一区二区三区高清| 久久九九网| 91在线国产后入风骚翘臀美女素人| 一个国产在线综合网站| 久操B网| 999精品乱码| 91狠狠综合久久久| 性爱乱伦网址| 美女91AV| 神马久久中文字幕| 亚洲中文字幕噜噜噜久久久| 玖色av| 亚洲欧美精品一区天堂久久| 屁股久久久久久久久久| 97硬碰| 九九热九九| 精品国产91内射久久| 天美传媒av一区二区| 人妻嗯啊啊在线播放| 少妇熟女1区2区3区| 国产后入内射| 欧美中文字幕男人天堂久久精品| A一区片| 好爽视频在线观看视频 | 色成人Www精品永久观看| 骚女天天综合网| 天天爱综合网| 美女淫穴| 天堂日本亚洲欧美| 日本在线激情一区二区三区| 国产精品福利资源在线尤物| 天天干人人乐| 综合性视频99| 偷拍综合亚洲| 91撸色网 玖玖网 欧美| 亚洲少妇色| 破苞ⅩXXX性无码动漫无码| A级片日韩欧美国产欧美视频精选观看| 欧美综合777| 人妻免费观看| 亚州 综合 色图| 久久欧洲| 亚洲精品蜜桃久久久久久久| 欧美在线伊人色| 人人乐大香蕉| 理论久久婷婷网 8| 久久久久久久久久久六六| 五月天开心网| 亚洲国男人的天堂| 欧美日韩国产传媒在线精品| 五月丁香婷婷啪啪| 亚洲天堂另类美腿| 91N五十路| 天操老女人| 色五月激情AV在线| 老鸭窝成人| 亚洲无码视频免费在线观看网址!| 无人区高清电影免费观看一区二区三 www.qmcai2.com | 五十路六十路素人熟女| 免费?级毛片无码?∨蜜芽试看| 黄色视频60分钟| 日韩乱插| 日本一区二区电影网站| 亚洲视频二区 | 成人性爱电影一区二区| 嗯嗯啊中文字幕| 少妇无码av专区线| 国产真实野战在线视频| 亚洲宅男天堂| 久久鲁夜| 国产乱子伦久久精品综合一区二区三| julia ann久久| 精品国产乱码久久久久久口爆网站 | 99色天堂| 大香蕉综合久久| 97视频播放| 最新日日夜夜天天干干| 亚洲精品视频在线播放| 精品人妻夜夜草| 亚洲色图欧美色图综合| 国产精品点击进入在线影院| 亚洲五月婷婷| 嫩草91| 免费在线黄片视频| 91色黑人少妇| 欧美性天天| 激情综合网激情五月天| 97天天插| 国产精品无码av| 青青草色插素人| A级国产欧美激情在线| 日日夜夜狠狠| 国产精品一区二区麻豆| 成年女人18级毛片毛片免费观看| 91红杏| 国产精品ⅴ无码大片在线看.| 真实高潮91| 韩日色费| 美女干逼2| 免费A V在线播放| 亚州欧美综合| 亚洲日韩精品在线播放| 久久久无码精品人妻二区| 国产免费一区在线观看| 午夜美女诱惑电源网| 99re视频在线观看这里只有精品| 久久99久久99精品天美传媒棢·纸:. | 色原狠狠天天天| 亚洲精品日韩国产欧美| 超碰 欧美| 麻豆天美国美国产AV| 久久国产逼| 欧美 日韩第一性色| 久久久久久午夜男人的天堂| 国产色图乱伦| 91无码人妻| 男人的天堂不卡一区二区| 97综合| 欧美日韩97在线| 色五月婷婷在线| 不卡av在线中文字幕| 玖玖大干人妻| 欧美高潮在线| 国产成人网站在线观看| 曰韩中文人妻视频| 久久久9 9 9精品| 第二页中文字幕| 久久 国产精品 一区| 国产一级137片内射麻豆| 大粗鳼巴久久久久| 中文字幕久久亚州无码| 人妻天天夜夜爽一区二区| 大学生口爆吞精| 日日摸天天爽夜夜欢| 久久久精品一区二区| 欧中日成人免费影视| 九九99久久| 影音先锋国产精品| 2020中文在线一区二区三区| 亚洲精品自拍| 熟妇高潮精品一区二区三区下载| 夜夜肏2021|