99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

大模型+AI 3D建模:智慧農(nóng)業(yè)數(shù)字孿生大屏實(shí)戰(zhàn)

大模型+AI 3D建模:智慧農(nóng)業(yè)數(shù)字孿生大屏實(shí)戰(zhàn) 1. 項(xiàng)目緣起與整體設(shè)計(jì)思路1.1 為什么想到用大模型加3D建模來做農(nóng)業(yè)大屏去年底我接手了一個(gè)智慧農(nóng)業(yè)園區(qū)的數(shù)字化項(xiàng)目甲方最初的訴求很樸素把園區(qū)里的傳感器數(shù)據(jù)、氣象站數(shù)據(jù)、灌溉設(shè)備狀態(tài)集中到一個(gè)大屏上展示。我一開始想的是常規(guī)方案用ECharts堆圖表再配幾個(gè)數(shù)字翻牌器兩天就能交付。但去現(xiàn)場踏勘之后我改主意了——這個(gè)園區(qū)有1200畝分成了育苗區(qū)、種植區(qū)、加工區(qū)、倉儲(chǔ)區(qū)四個(gè)功能板塊光靠二維圖表根本表達(dá)不清楚空間關(guān)系。比如灌溉閥門A3-07報(bào)警了你在表格里看到一行紅字但你不知道它在哪塊地、離哪個(gè)泵房最近、影響的是哪幾壟作物。所以我就想做一個(gè)3D數(shù)字孿生大屏把整個(gè)園區(qū)按真實(shí)地形和建筑布局還原出來傳感器數(shù)據(jù)直接掛在對應(yīng)的3D模型上點(diǎn)擊就能看詳情。這個(gè)思路不新鮮但傳統(tǒng)做法是找建模師手工建模1200畝的園區(qū)光是建筑和地塊的模型報(bào)價(jià)就報(bào)了六萬多工期三周。我預(yù)算不夠時(shí)間也來不及于是開始琢磨能不能用AI來壓縮建模環(huán)節(jié)。這就是這個(gè)項(xiàng)目的核心思路用大語言模型做需求拆解和代碼生成用AI 3D建模工具做資產(chǎn)生產(chǎn)用Three.js做前端渲染和交互最終拼出一個(gè)可巡檢的3D農(nóng)業(yè)大屏。整個(gè)鏈路里GPT-6 Astra負(fù)責(zé)的是“大腦”角色幫我寫Three.js場景代碼、處理數(shù)據(jù)映射邏輯、生成巡檢路徑算法Tripo3D負(fù)責(zé)的是“手”的角色把文字描述或者參考圖直接轉(zhuǎn)成GLB模型Blender MCP則是中間的“修整臺(tái)”用來做模型減面、坐標(biāo)歸零、材質(zhì)烘焙這些收尾工作。這套方案適合誰參考我覺得有三類人一是做智慧城市、智慧園區(qū)、數(shù)字孿生方向的前端或者全棧開發(fā)者想快速出原型但不想被建??ㄗ《寝r(nóng)業(yè)信息化領(lǐng)域的實(shí)施人員手頭有數(shù)據(jù)但缺可視化手段三是對AI輔助3D開發(fā)感興趣的技術(shù)愛好者想看看當(dāng)前工具鏈到底能做到什么程度。需要說明的是這套流程不是“一鍵生成”中間有不少手工干預(yù)的環(huán)節(jié)我會(huì)在后面的章節(jié)里把每個(gè)坑都講清楚。1.2 技術(shù)選型的取舍邏輯在動(dòng)手之前我對比了幾條路線這里把思考過程攤開講方便你判斷自己的項(xiàng)目適不適合照搬。第一條路線是純手工建模加Three.js。這是最穩(wěn)的方案模型質(zhì)量可控但成本高、周期長。我算過一筆賬一個(gè)中等精度的農(nóng)業(yè)園區(qū)模型包含地形、道路、建筑、大棚、設(shè)備熟練建模師大概需要15到20個(gè)工作日按市場價(jià)折算下來接近兩萬。如果后續(xù)還要改布局返工成本更高。對于預(yù)算充足、工期寬松的項(xiàng)目這條路仍然是最優(yōu)解。第二條路線是用游戲引擎比如Unity或者Unreal做數(shù)字孿生再導(dǎo)出WebGL。這條路渲染效果最好但對前端團(tuán)隊(duì)不友好打包體積大瀏覽器加載慢而且和現(xiàn)有Web數(shù)據(jù)平臺(tái)的對接成本高。農(nóng)業(yè)大屏通常是B端交付客戶電腦配置參差不齊太重的前端方案容易翻車。第三條路線就是我最終選的AI生成模型加Three.js輕量渲染。核心優(yōu)勢是資產(chǎn)生產(chǎn)成本被壓到極低Tripo3D生成一個(gè)基礎(chǔ)模型大概幾十秒雖然精度不如手工建模但對于大屏這種中遠(yuǎn)景展示場景完全夠用。而且GLB格式是Three.js原生支持的加載鏈路短不需要額外的轉(zhuǎn)換工具。GPT-6 Astra在這里的價(jià)值不是“替代程序員”而是把Three.js里那些重復(fù)性的場景搭建代碼、材質(zhì)配置代碼、交互邏輯代碼快速產(chǎn)出我只需要做審核和微調(diào)。這里要特別說明一點(diǎn)AI生成的模型不能直接用于近景特寫。Tripo3D目前的輸出精度在幾千到幾萬面之間貼圖分辨率也有限你把它放到鏡頭前會(huì)看到明顯的粗糙感。但大屏場景通常是俯瞰視角或者中距離巡檢視角這個(gè)精度是夠的。我的做法是把園區(qū)按重要性分級(jí)核心建筑用AI生成后手工修整普通大棚和地塊用AI直接生成遠(yuǎn)景的山體和樹林用程序化生成這樣把算力花在刀刃上。1.3 整體架構(gòu)與數(shù)據(jù)流向整個(gè)系統(tǒng)的架構(gòu)我畫過好幾版最終落地的版本分成四層。最底層是數(shù)據(jù)層園區(qū)現(xiàn)有的傳感器通過MQTT協(xié)議上報(bào)數(shù)據(jù)我這邊用Node.js寫了一個(gè)聚合服務(wù)把原始數(shù)據(jù)清洗后存到PostgreSQL里同時(shí)通過WebSocket推送給前端。這一層和3D無關(guān)但它是大屏的“血液”沒有實(shí)時(shí)數(shù)據(jù)3D場景就是個(gè)空殼。第二層是模型資產(chǎn)層所有GLB文件存在對象存儲(chǔ)里通過CDN分發(fā)。這里有個(gè)細(xì)節(jié)GLB文件要提前做Draco壓縮否則一個(gè)精細(xì)點(diǎn)的模型動(dòng)輒十幾兆瀏覽器加載會(huì)卡死。我用Blender MCP批量處理了一遍把面數(shù)壓到原來的30%左右體積降到兩到三兆加載速度明顯改善。第三層是渲染層也就是Three.js場景。這里面包含地形網(wǎng)格、建筑模型、設(shè)備模型、標(biāo)簽系統(tǒng)、巡檢路徑動(dòng)畫。GPT-6 Astra幫我生成了場景初始化的骨架代碼包括相機(jī)設(shè)置、光照配置、OrbitControls控制器、Raycaster拾取邏輯。我在此基礎(chǔ)上做了大量修改因?yàn)锳I生成的代碼有個(gè)通病它喜歡用最新版本的API但實(shí)際項(xiàng)目里你可能被鎖定在某個(gè)穩(wěn)定版本上需要手動(dòng)降級(jí)適配。第四層是交互層包括大屏的UI面板、數(shù)據(jù)卡片、報(bào)警彈窗、巡檢模式切換。這一層我用Vue3加Element Plus做的和Three.js場景通過事件總線通信。點(diǎn)擊3D場景里的設(shè)備模型右側(cè)面板就彈出對應(yīng)的實(shí)時(shí)數(shù)據(jù)切換到巡檢模式相機(jī)就沿著預(yù)設(shè)路徑自動(dòng)飛行遇到報(bào)警設(shè)備自動(dòng)停留并高亮。數(shù)據(jù)流向是這樣的傳感器到聚合服務(wù)到WebSocket到前端狀態(tài)管理到Three.js場景更新。整個(gè)鏈路我壓到了500毫秒以內(nèi)實(shí)測下來大屏上的數(shù)據(jù)刷新基本感覺不到延遲。2. 核心工具鏈拆解與關(guān)鍵細(xì)節(jié)2.1 GPT-6 Astra在項(xiàng)目中的實(shí)際角色很多人聽到“用大模型做3D大屏”第一反應(yīng)是讓AI直接生成整個(gè)場景。我試過不現(xiàn)實(shí)。GPT-6 Astra再強(qiáng)它也沒法憑空知道你園區(qū)的地形起伏、建筑朝向、道路走向。但它能在三個(gè)環(huán)節(jié)幫上大忙。第一個(gè)環(huán)節(jié)是代碼骨架生成。Three.js的場景初始化代碼其實(shí)很套路化無非是創(chuàng)建Scene、Camera、Renderer、Lights再加OrbitControls。但每次寫都要查文檔尤其是版本更新后API有變動(dòng)。我直接把需求描述給GPT-6 Astra“用Three.js r160版本創(chuàng)建一個(gè)包含環(huán)境光、平行光、陰影貼圖的場景相機(jī)用透視相機(jī)初始位置在園區(qū)東南角上方200米控制器限制俯仰角在15度到85度之間?!彼o出的代碼基本可用我只需要改幾個(gè)參數(shù)。第二個(gè)環(huán)節(jié)是數(shù)據(jù)映射邏輯。園區(qū)有三百多個(gè)傳感器點(diǎn)位每個(gè)點(diǎn)位要對應(yīng)到3D模型上的一個(gè)位置。手動(dòng)一個(gè)個(gè)寫坐標(biāo)太蠢了。我的做法是把傳感器ID和對應(yīng)的經(jīng)緯度整理成CSV讓GPT-6 Astra寫一個(gè)轉(zhuǎn)換函數(shù)把經(jīng)緯度轉(zhuǎn)成Three.js場景里的世界坐標(biāo)。它給出的方案是用墨卡托投影做近似轉(zhuǎn)換再乘以一個(gè)縮放系數(shù)。我實(shí)測下來誤差在可接受范圍內(nèi)畢竟大屏展示不需要測繪級(jí)精度。第三個(gè)環(huán)節(jié)是巡檢路徑算法。巡檢模式需要相機(jī)沿著一條平滑曲線飛行經(jīng)過所有關(guān)鍵設(shè)備點(diǎn)位。這本質(zhì)上是一個(gè)旅行商問題的變體但不需要嚴(yán)格最優(yōu)解只要路徑合理、不穿模就行。GPT-6 Astra給我寫了一個(gè)基于CatmullRomCurve3的路徑生成函數(shù)輸入是一組Vector3點(diǎn)位輸出是一條平滑曲線。我在此基礎(chǔ)上加了速度控制和停留邏輯效果很穩(wěn)。注意GPT-6 Astra生成的代碼一定要逐行審核尤其是涉及坐標(biāo)轉(zhuǎn)換和矩陣運(yùn)算的部分。我遇到過它把右手坐標(biāo)系和左手坐標(biāo)系搞混的情況導(dǎo)致模型位置整體偏移。另外它有時(shí)候會(huì)“幻覺”出一些不存在的API比如給Three.js的某個(gè)類加了一個(gè)官方文檔里沒有的方法運(yùn)行時(shí)報(bào)錯(cuò)才發(fā)現(xiàn)。2.2 Tripo3D生成農(nóng)業(yè)模型的實(shí)操要點(diǎn)Tripo3D的核心能力是文本或圖片生成3D模型輸出格式支持GLB、FBX、OBJ等。我在這個(gè)項(xiàng)目里主要用它生成了四類資產(chǎn)溫室大棚、農(nóng)機(jī)設(shè)備、倉儲(chǔ)建筑、樹木植被。先說溫室大棚。我用的是文生3D模式提示詞寫的是“a large agricultural greenhouse with arched roof, metal frame, semi-transparent plastic covering, realistic style”。生成時(shí)間大概40秒出來的模型結(jié)構(gòu)基本正確拱形屋頂和框架都在但貼圖比較糊塑料膜的半透明效果也沒出來。我的處理方式是把模型導(dǎo)入Blender用MCP插件做兩件事——一是重新展UV二是換上一張自己找的溫室膜材質(zhì)貼圖。這樣處理后大棚在場景里的觀感提升很明顯。農(nóng)機(jī)設(shè)備我試過兩種方式。一種是文生3D提示詞描述“a red agricultural tractor with large wheels, front loader, detailed”。生成的模型遠(yuǎn)看沒問題近看細(xì)節(jié)缺失輪胎沒有紋路駕駛艙是實(shí)心的。另一種是圖生3D我從網(wǎng)上找了一張拖拉機(jī)的側(cè)視圖上傳給Tripo3D生成的模型明顯更接近參考圖比例也更準(zhǔn)。所以我的經(jīng)驗(yàn)是能提供參考圖就不要純靠文字描述圖生3D的命中率高得多。倉儲(chǔ)建筑相對簡單方盒子加屋頂Tripo3D生成的質(zhì)量足夠用。樹木植被我生成了一批基礎(chǔ)模型然后在Three.js里用InstancedMesh做批量渲染同一棵樹復(fù)制幾百棵通過隨機(jī)旋轉(zhuǎn)和縮放制造差異感。這里有個(gè)性能優(yōu)化的點(diǎn)樹木模型的面數(shù)要控制在500面以內(nèi)否則幾百棵實(shí)例化之后GPU壓力會(huì)很大。提示Tripo3D生成模型時(shí)提示詞里加上“l(fā)ow poly”或者“game ready”可以控制面數(shù)但不要加“high detail”否則面數(shù)爆炸后續(xù)減面很痛苦。另外生成后的模型默認(rèn)原點(diǎn)可能在幾何中心導(dǎo)入Three.js之前要用Blender把原點(diǎn)歸到模型底部中心否則放置到場景里會(huì)陷進(jìn)地面。2.3 Blender MCP做模型后處理的完整流程Blender MCP是我在這個(gè)項(xiàng)目里發(fā)現(xiàn)的一個(gè)效率利器。簡單說它讓你可以用自然語言指令控制Blender比如“把當(dāng)前選中的模型面數(shù)減到5000以下”、“給這個(gè)模型添加一個(gè)平面UV展開”、“導(dǎo)出為GLB格式并開啟Draco壓縮”。對于不熟悉Blender快捷鍵的開發(fā)者來說這比手動(dòng)操作快太多了。我的后處理流程固定為五步。第一步是導(dǎo)入與檢查把Tripo3D下載的GLB拖進(jìn)Blender用MCP指令“report the polygon count and bounding box of the selected object”查看面數(shù)和包圍盒尺寸。如果面數(shù)超過兩萬就進(jìn)入減面流程。第二步是減面。MCP指令是“add a decimate modifier to the selected object with ratio 0.3 and apply it”。這里ratio的選擇要看模型復(fù)雜度一般0.2到0.4之間比較合適。減面太狠會(huì)導(dǎo)致模型變形減面不夠則性能優(yōu)化效果不明顯。我一般會(huì)減到原始面數(shù)的30%左右然后目視檢查有沒有明顯的破面。第三步是UV與材質(zhì)。Tripo3D生成的模型自帶UV和貼圖但UV布局往往很亂貼圖分辨率也低。我的做法是用MCP指令“smart uv project the selected object with angle limit 66 degrees”重新展UV然后換上一張更高清的貼圖。這一步對最終觀感影響很大值得花時(shí)間。第四步是坐標(biāo)歸零。MCP指令“set the origin of the selected object to the bottom center of its bounding box”確保模型的原點(diǎn)在底部中心。這樣在Three.js里設(shè)置position的時(shí)候y坐標(biāo)直接填0就是貼地放置不用再算偏移量。第五步是導(dǎo)出。MCP指令“export the selected object as glb with draco compression enabled”。Draco壓縮能把模型體積壓到原來的20%到30%對加載速度提升非常明顯。但要注意Three.js加載Draco壓縮的GLB需要額外引入DRACOLoader這個(gè)后面會(huì)講。2.4 Three.js場景搭建的核心配置Three.js是這個(gè)項(xiàng)目的渲染核心配置項(xiàng)很多我挑幾個(gè)關(guān)鍵的說。渲染器配置。我用的是WebGLRenderer開了antialias抗鋸齒shadowMap啟用PCFSoftShadowMaptoneMapping用ACESFilmicToneMappingoutputColorSpace設(shè)為SRGBColorSpace。這幾個(gè)參數(shù)組合下來畫面觀感比較接近真實(shí)。但要注意開了陰影之后性能下降明顯如果場景里模型很多建議只對核心建筑開陰影普通設(shè)備用假陰影貼圖代替。相機(jī)與控制器。大屏場景我用了兩個(gè)相機(jī)模式俯瞰模式用OrthographicCamera巡檢模式用PerspectiveCamera。OrbitControls的enableDamping設(shè)為truedampingFactor設(shè)0.05這樣拖動(dòng)的時(shí)候有慣性手感更順滑。maxPolarAngle限制在85度防止相機(jī)轉(zhuǎn)到地面以下。光照方案。我用的是環(huán)境光加平行光加半球光的組合。環(huán)境光強(qiáng)度0.4平行光強(qiáng)度1.2位置在場景東南上方投射陰影。半球光用來模擬天空散射天空色用淺藍(lán)地面色用土黃強(qiáng)度0.6。這套光照參數(shù)是我調(diào)了十幾版之后定下來的農(nóng)業(yè)場景需要偏暖的色調(diào)太冷會(huì)顯得像工業(yè)廠房。性能優(yōu)化。除了前面說的Draco壓縮和InstancedMesh我還做了視錐剔除和LOD分級(jí)。視錐剔除Three.js默認(rèn)開啟不用額外配置。LOD分級(jí)需要手動(dòng)做給每個(gè)模型準(zhǔn)備高、中、低三個(gè)精度版本根據(jù)相機(jī)距離切換。農(nóng)業(yè)大屏的相機(jī)距離通常比較遠(yuǎn)所以中低精度模型的使用頻率更高。注意Three.js的版本選擇很重要。我一開始用了最新的r162結(jié)果發(fā)現(xiàn)和項(xiàng)目里其他依賴有沖突最后退回到r158才穩(wěn)定。建議在package.json里鎖定版本號(hào)不要用^符號(hào)避免自動(dòng)升級(jí)導(dǎo)致意外。3. 從零到可巡檢的完整實(shí)操過程3.1 園區(qū)地形與地塊的生成地形是整個(gè)場景的基礎(chǔ)。我沒有園區(qū)的精確DEM數(shù)據(jù)所以用了一個(gè)取巧的辦法用GPT-6 Astra生成一段程序化地形代碼基于Perlin噪聲生成起伏然后手動(dòng)調(diào)整幾個(gè)關(guān)鍵區(qū)域的高度讓它們和實(shí)際地塊對應(yīng)。具體操作是這樣的。先創(chuàng)建一個(gè)PlaneGeometry尺寸設(shè)為2000乘2000分段數(shù)設(shè)為200乘200這樣有兩萬個(gè)頂點(diǎn)足夠表現(xiàn)地形細(xì)節(jié)。然后寫一個(gè)頂點(diǎn)著色器或者直接在JavaScript里遍歷頂點(diǎn)用噪聲函數(shù)計(jì)算每個(gè)頂點(diǎn)的高度。我用的是simplex-noise這個(gè)庫比原生Perlin噪聲更平滑。高度范圍控制在0到15米之間因?yàn)閳@區(qū)整體比較平坦不需要太夸張的起伏。地塊的劃分我用的是紋理遮罩法。先在地形上貼一張衛(wèi)星圖作為底圖然后在Blender里畫一張遮罩圖用不同顏色標(biāo)記育苗區(qū)、種植區(qū)、加工區(qū)、倉儲(chǔ)區(qū)。在Three.js里用ShaderMaterial讀取遮罩圖的顏色混合不同的地表材質(zhì)。這樣地塊邊界清晰而且切換地塊高亮的時(shí)候只需要改遮罩圖的某個(gè)通道值性能開銷很小。道路系統(tǒng)我用的是樣條曲線加擠出。先用CatmullRomCurve3畫幾條主干道的中心線然后用ExtrudeGeometry沿著曲線擠出路面。路面材質(zhì)用深灰色加一點(diǎn)粗糙度看起來像瀝青。道路兩側(cè)我放了路燈模型也是Tripo3D生成的用InstancedMesh批量放置。這里踩過一個(gè)坑地形和道路的接縫處容易穿模。因?yàn)榈匦斡衅鸱缆肥瞧降膬烧呓唤绲牡胤綍?huì)出現(xiàn)縫隙或者重疊。我的解決辦法是把道路的高度稍微抬高0.1米然后在地形上沿著道路中心線做一次平滑處理把附近的頂點(diǎn)高度拉平。這樣接縫就不明顯了。3.2 建筑與設(shè)備模型的導(dǎo)入與擺放模型導(dǎo)入Three.js的標(biāo)準(zhǔn)流程是用GLTFLoader加載GLB文件拿到scene對象后設(shè)置position、rotation、scale然后add到場景里。但實(shí)際操作中有幾個(gè)細(xì)節(jié)要注意。坐標(biāo)系統(tǒng)一。Blender用的是Z軸向上Three.js用的是Y軸向上。雖然GLTF格式本身會(huì)做轉(zhuǎn)換但如果你在Blender里旋轉(zhuǎn)過模型導(dǎo)出后可能會(huì)出問題。我的習(xí)慣是在Blender里就把所有模型調(diào)整到Y(jié)軸向上的姿態(tài)導(dǎo)出時(shí)勾選“Y Up”選項(xiàng)這樣導(dǎo)入Three.js后不用再旋轉(zhuǎn)。批量擺放。園區(qū)里有幾十個(gè)大棚一個(gè)個(gè)手動(dòng)設(shè)置坐標(biāo)太慢了。我的做法是維護(hù)一個(gè)JSON配置文件里面記錄每個(gè)模型的類型、位置、旋轉(zhuǎn)角度、縮放比例。前端讀取這個(gè)JSON循環(huán)創(chuàng)建模型實(shí)例。這樣后續(xù)調(diào)整布局只需要改JSON不用動(dòng)代碼。// 模型擺放配置示例 const layoutConfig [ { type: greenhouse, position: [120, 0, -80], rotation: 0, scale: 1.0 }, { type: greenhouse, position: [160, 0, -80], rotation: 0, scale: 1.0 }, { type: warehouse, position: [-200, 0, 150], rotation: Math.PI / 2, scale: 1.2 }, { type: tractor, position: [50, 0, 30], rotation: Math.PI / 4, scale: 0.8 } ];材質(zhì)共享。如果每個(gè)模型實(shí)例都用自己的材質(zhì)顯存占用會(huì)很高。我的做法是相同類型的模型共享同一個(gè)材質(zhì)對象通過修改材質(zhì)的color屬性來區(qū)分不同狀態(tài)。比如正常狀態(tài)是原色報(bào)警狀態(tài)改成紅色選中狀態(tài)加自發(fā)光。這樣只需要維護(hù)少量材質(zhì)性能好很多。點(diǎn)擊拾取。用Raycaster做模型拾取監(jiān)聽鼠標(biāo)點(diǎn)擊事件把鼠標(biāo)坐標(biāo)轉(zhuǎn)成NDC坐標(biāo)然后從相機(jī)發(fā)射射線檢測和哪些模型相交。這里要注意InstancedMesh的拾取需要特殊處理因?yàn)樗乃袑?shí)例共享一個(gè)幾何體Raycaster返回的intersect對象里有一個(gè)instanceId屬性通過這個(gè)ID可以知道點(diǎn)的是哪個(gè)實(shí)例。3.3 傳感器數(shù)據(jù)與3D場景的綁定數(shù)據(jù)綁定是這個(gè)項(xiàng)目的靈魂。沒有數(shù)據(jù)3D場景就是個(gè)好看的模型展示有了數(shù)據(jù)它才是一個(gè)活的數(shù)字孿生。我的數(shù)據(jù)綁定方案是點(diǎn)位映射加狀態(tài)驅(qū)動(dòng)。每個(gè)傳感器在數(shù)據(jù)庫里有一個(gè)唯一ID同時(shí)有一個(gè)對應(yīng)的3D坐標(biāo)。前端啟動(dòng)時(shí)拉取所有傳感器的實(shí)時(shí)數(shù)據(jù)然后遍歷數(shù)據(jù)根據(jù)傳感器ID找到對應(yīng)的3D模型或者點(diǎn)位標(biāo)記更新它的狀態(tài)。具體實(shí)現(xiàn)上我把傳感器分成兩類。一類是有實(shí)體模型的設(shè)備比如灌溉閥門、氣象站、攝像頭這些設(shè)備本身就有3D模型數(shù)據(jù)直接掛在模型上。另一類是純數(shù)據(jù)點(diǎn)位比如土壤墑情傳感器它埋在地下沒有可見的實(shí)體我用一個(gè)懸浮的圖標(biāo)或者光柱來表示。狀態(tài)驅(qū)動(dòng)我用的是顏色加動(dòng)畫。正常狀態(tài)是綠色警告狀態(tài)是黃色報(bào)警狀態(tài)是紅色加閃爍。閃爍動(dòng)畫用sin函數(shù)控制材質(zhì)的emissiveIntensity周期設(shè)為1秒。這樣在大屏上掃一眼就能看出哪些點(diǎn)位有問題。數(shù)據(jù)更新頻率我控制在每秒一次。太頻繁了前端渲染壓力大太慢了又顯得遲鈍。WebSocket收到新數(shù)據(jù)后不直接改Three.js對象而是先更新Vue的響應(yīng)式狀態(tài)然后通過watch監(jiān)聽狀態(tài)變化再批量更新3D場景。這樣避免了頻繁的DOM操作和渲染調(diào)用。提示傳感器坐標(biāo)轉(zhuǎn)換是個(gè)容易出錯(cuò)的環(huán)節(jié)。如果你的園區(qū)不大可以用簡單的線性映射把經(jīng)緯度范圍映射到場景的XZ平面范圍。如果園區(qū)很大或者靠近極點(diǎn)就需要用墨卡托投影。我建議先用小規(guī)模數(shù)據(jù)驗(yàn)證映射關(guān)系確認(rèn)無誤后再批量導(dǎo)入。3.4 巡檢模式的路徑設(shè)計(jì)與實(shí)現(xiàn)巡檢模式是我個(gè)人最滿意的功能。點(diǎn)擊“開始巡檢”按鈕后相機(jī)自動(dòng)沿著預(yù)設(shè)路徑飛行依次經(jīng)過所有關(guān)鍵設(shè)備每到一個(gè)設(shè)備就停留三秒彈出數(shù)據(jù)卡片如果有報(bào)警就高亮顯示。路徑設(shè)計(jì)我用的是關(guān)鍵點(diǎn)加平滑曲線。先手動(dòng)在場景里標(biāo)出所有需要巡檢的點(diǎn)位一般是園區(qū)的四個(gè)角加中心再加幾個(gè)重點(diǎn)設(shè)備區(qū)域。然后用CatmullRomCurve3把這些點(diǎn)連成一條平滑曲線。CatmullRomCurve3的好處是曲線會(huì)穿過所有控制點(diǎn)而且可以通過tension參數(shù)控制彎曲程度。// 巡檢路徑生成 const waypoints [ new THREE.Vector3(-300, 80, -300), new THREE.Vector3(300, 80, -300), new THREE.Vector3(300, 80, 300), new THREE.Vector3(-300, 80, 300), new THREE.Vector3(0, 100, 0) ]; const curve new THREE.CatmullRomCurve3(waypoints, true, catmullrom, 0.5);相機(jī)飛行我用的是曲線參數(shù)插值。定義一個(gè)變量t從0到1每幀增加一個(gè)步長然后用curve.getPointAt(t)獲取當(dāng)前位置用curve.getTangentAt(t)獲取朝向設(shè)置相機(jī)的position和lookAt。步長根據(jù)曲線總長度和期望飛行速度計(jì)算我設(shè)的是每秒飛行50米這樣繞園區(qū)一圈大概兩分鐘。停留邏輯我用的是狀態(tài)機(jī)。巡檢狀態(tài)分為“飛行中”和“停留中”。飛行中時(shí)t持續(xù)增加當(dāng)相機(jī)位置接近某個(gè)關(guān)鍵設(shè)備時(shí)切換到停留狀態(tài)t暫停增加彈出數(shù)據(jù)卡片。停留三秒后切回飛行狀態(tài)。這里判斷“接近”用的是距離閾值我設(shè)的是15米小于這個(gè)距離就觸發(fā)停留。有個(gè)細(xì)節(jié)要注意曲線閉合時(shí)首尾銜接要平滑。CatmullRomCurve3的closed參數(shù)設(shè)為true會(huì)自動(dòng)閉合但閉合點(diǎn)的切線可能不連續(xù)導(dǎo)致相機(jī)在起點(diǎn)附近抖動(dòng)。我的解決辦法是在路徑末尾多加一個(gè)和起點(diǎn)重合的控制點(diǎn)這樣閉合處的切線就連續(xù)了。3.5 大屏UI與3D場景的聯(lián)動(dòng)大屏的UI層我用Vue3加Element Plus搭建整體布局是左側(cè)數(shù)據(jù)面板、中間3D場景、右側(cè)報(bào)警列表、底部統(tǒng)計(jì)欄。UI和3D場景的聯(lián)動(dòng)通過一個(gè)事件總線實(shí)現(xiàn)我用的是mitt這個(gè)輕量庫。聯(lián)動(dòng)邏輯分兩個(gè)方向。從3D到UI點(diǎn)擊3D場景里的設(shè)備模型觸發(fā)pick事件事件總線廣播設(shè)備ID右側(cè)面板監(jiān)聽到后拉取該設(shè)備的詳細(xì)數(shù)據(jù)并展示。從UI到3D點(diǎn)擊右側(cè)報(bào)警列表里的某條報(bào)警事件總線廣播設(shè)備ID3D場景監(jiān)聽到后把相機(jī)飛到該設(shè)備位置并高亮模型。相機(jī)飛行動(dòng)畫我用的是GSAP比手寫緩動(dòng)函數(shù)方便。定義一個(gè)目標(biāo)位置和目標(biāo)朝向用gsap.to在1.5秒內(nèi)完成過渡ease用power2.inOut觀感很順滑。// 相機(jī)飛行動(dòng)畫 gsap.to(camera.position, { x: targetPosition.x, y: targetPosition.y, z: targetPosition.z, duration: 1.5, ease: power2.inOut, onUpdate: () { camera.lookAt(targetLookAt); } });UI面板的數(shù)據(jù)刷新我用的是節(jié)流加防抖。傳感器數(shù)據(jù)每秒推送一次但UI不需要每秒都重繪我設(shè)了500毫秒的節(jié)流保證數(shù)據(jù)不會(huì)積壓。報(bào)警彈窗用了防抖同一個(gè)設(shè)備短時(shí)間內(nèi)多次報(bào)警只彈一次。4. 常見問題與排查技巧實(shí)錄4.1 Three.js貼圖不顯示的排查思路貼圖不顯示是Three.js新手最容易遇到的問題我至少遇到過五六次原因各不相同。這里整理一個(gè)排查清單按可能性從高到低排列。第一檢查貼圖路徑。Three.js的TextureLoader加載貼圖是異步的如果路徑寫錯(cuò)了控制臺(tái)會(huì)報(bào)404但有時(shí)候被其他日志淹沒了。我的習(xí)慣是在loader的回調(diào)里加一個(gè)console.log確認(rèn)貼圖加載成功。第二檢查色彩空間。Three.js r152之后貼圖的colorSpace默認(rèn)是NoColorSpace需要手動(dòng)設(shè)為SRGBColorSpace否則貼圖會(huì)偏暗或者偏灰。這個(gè)坑我踩過貼圖明明加載了但看起來像蒙了一層灰。第三檢查UV坐標(biāo)。如果模型是從Tripo3D生成的UV可能有問題。在Blender里檢查UV編輯器看看UV有沒有超出0到1的范圍或者有沒有重疊。重新展UV通常能解決。第四檢查材質(zhì)類型。MeshBasicMaterial不需要光照就能顯示貼圖但MeshStandardMaterial需要光照。如果場景里沒有光源標(biāo)準(zhǔn)材質(zhì)的貼圖就是黑的。加一個(gè)環(huán)境光就能看到。第五檢查貼圖翻轉(zhuǎn)。GLTF格式的貼圖Y軸和Three.js的默認(rèn)設(shè)置可能不一致需要設(shè)置texture.flipY false。這個(gè)在加載GLB時(shí)GLTFLoader會(huì)自動(dòng)處理但如果你手動(dòng)加載貼圖就要注意。問題現(xiàn)象可能原因解決方法貼圖完全黑沒有光源添加環(huán)境光或平行光貼圖偏灰色彩空間錯(cuò)誤設(shè)置texture.colorSpace SRGBColorSpace貼圖錯(cuò)位UV坐標(biāo)問題在Blender中重新展UV貼圖不顯示路徑錯(cuò)誤或未加載完成檢查控制臺(tái)404確認(rèn)回調(diào)執(zhí)行貼圖翻轉(zhuǎn)flipY設(shè)置錯(cuò)誤設(shè)置texture.flipY false4.2 頁面卡頓的性能優(yōu)化實(shí)錄Three.js場景卡頓的原因很多我按影響程度從大到小排個(gè)序。第一位是模型面數(shù)過高。一個(gè)精細(xì)的GLB模型可能有幾十萬面幾個(gè)這樣的模型就能讓幀率掉到20以下。解決辦法就是前面說的Draco壓縮加減面把面數(shù)控制在合理范圍。我的經(jīng)驗(yàn)值是單個(gè)模型不超過一萬面場景總面數(shù)不超過五十萬面。第二位是繪制調(diào)用過多。每個(gè)模型實(shí)例都是一次draw call幾百個(gè)模型就是幾百次draw callGPU切換狀態(tài)的開銷很大。解決辦法是用InstancedMesh合并相同幾何體的實(shí)例或者用MergedGeometry把靜態(tài)模型合并成一個(gè)。我用了InstancedMesh之后樹木的draw call從三百多降到了一次。第三位是陰影計(jì)算。實(shí)時(shí)陰影很吃性能尤其是陰影貼圖分辨率高的時(shí)候。我的做法是只對核心建筑開陰影陰影貼圖分辨率設(shè)為1024陰影相機(jī)范圍盡量收緊不要覆蓋整個(gè)場景。第四位是紋理過大。一張4096乘4096的貼圖占用的顯存是1024乘1024的16倍。農(nóng)業(yè)大屏不需要那么高的紋理精度我統(tǒng)一壓到1024個(gè)別重點(diǎn)模型用2048。第五位是后處理效果。Bloom、SSAO這些后處理效果很漂亮但很吃性能。我在大屏上只開了輕微的BloomSSAO直接關(guān)掉幀率從35提升到55。提示用Chrome的Performance面板錄制一段運(yùn)行時(shí)的性能數(shù)據(jù)看看時(shí)間主要花在哪里。如果是GPU瓶頸優(yōu)化模型和紋理如果是CPU瓶頸優(yōu)化JavaScript邏輯和減少draw call。不要盲目優(yōu)化先定位瓶頸。4.3 GLB模型加載失敗的常見原因GLB加載失敗通常有幾個(gè)固定原因我整理成速查表??缬騿栴}。如果GLB文件存在CDN上而你的網(wǎng)頁域名和CDN域名不一致瀏覽器會(huì)攔截。解決辦法是在CDN上配置CORS頭允許你的域名訪問。文件損壞。Tripo3D下載的GLB偶爾會(huì)有損壞尤其是網(wǎng)絡(luò)不穩(wěn)定的情況下。重新下載一次通常能解決。如果還不行用Blender打開看看能不能正常導(dǎo)入不能導(dǎo)入就是文件本身有問題。Draco解碼器未加載。如果GLB用了Draco壓縮Three.js需要額外引入DRACOLoader并設(shè)置解碼器路徑。忘了這一步的話加載會(huì)直接報(bào)錯(cuò)。// Draco加載器配置 import { DRACOLoader } from three/examples/jsm/loaders/DRACOLoader.js; const dracoLoader new DRACOLoader(); dracoLoader.setDecoderPath(/draco/); const gltfLoader new GLTFLoader(); gltfLoader.setDRACOLoader(dracoLoader);版本不兼容。GLTFLoader的版本要和Three.js核心庫的版本匹配混用不同版本的模塊會(huì)報(bào)錯(cuò)。我的做法是用npm安裝three然后從three/examples/jsm里引入loader保證版本一致。內(nèi)存不足。如果場景里加載了太多模型瀏覽器內(nèi)存耗盡加載會(huì)失敗。解決辦法是分批加載或者用LOD策略遠(yuǎn)處的模型先不加載。4.4 巡檢路徑穿模與相機(jī)抖動(dòng)的處理巡檢路徑穿模是指相機(jī)飛行時(shí)穿過了建筑或者地形畫面突然變黑或者看到模型內(nèi)部。這個(gè)問題我調(diào)試了很久最終用了三個(gè)措施來解決。第一抬高路徑高度。把巡檢路徑的Y坐標(biāo)統(tǒng)一抬高到建筑最高點(diǎn)以上。園區(qū)里最高的建筑是倉儲(chǔ)棚大概12米我把路徑高度設(shè)在20米以上這樣就不會(huì)撞到建筑。第二路徑點(diǎn)避讓。在設(shè)置路徑控制點(diǎn)時(shí)避開建筑密集區(qū)。如果必須經(jīng)過就繞行。我手動(dòng)調(diào)整了幾個(gè)控制點(diǎn)的位置讓路徑從道路上方經(jīng)過而不是從大棚上方穿過。第三相機(jī)近裁剪面調(diào)整。相機(jī)的near值設(shè)得太小會(huì)導(dǎo)致深度精度問題設(shè)得太大又會(huì)導(dǎo)致近處模型被裁剪。我設(shè)的是0.1配合路徑高度基本不會(huì)穿模。相機(jī)抖動(dòng)是另一個(gè)問題表現(xiàn)為飛行過程中畫面輕微晃動(dòng)。原因是曲線切線計(jì)算不連續(xù)或者幀率不穩(wěn)定導(dǎo)致t值跳躍。解決辦法是用curve.getPointAt而不是getPoint前者是按弧長參數(shù)化速度更均勻。另外把相機(jī)的lookAt目標(biāo)也做平滑處理不要直接看向下一個(gè)路徑點(diǎn)而是看向當(dāng)前切線方向再往前一點(diǎn)的位置。4.5 數(shù)據(jù)延遲與狀態(tài)不同步的解決數(shù)據(jù)延遲表現(xiàn)為大屏上的數(shù)據(jù)和實(shí)際傳感器讀數(shù)不一致通常延遲幾秒甚至十幾秒。排查下來有幾個(gè)原因。WebSocket消息積壓。如果前端處理消息的速度跟不上推送速度消息會(huì)積壓。我的解決辦法是在前端加一個(gè)消息隊(duì)列按時(shí)間戳排序丟棄過期的消息只處理最新的。狀態(tài)更新觸發(fā)過多渲染。每次數(shù)據(jù)更新都觸發(fā)Three.js重新渲染如果數(shù)據(jù)量大渲染次數(shù)太多會(huì)導(dǎo)致卡頓和延遲。我的做法是批量更新把一秒內(nèi)的數(shù)據(jù)變更收集起來統(tǒng)一更新一次場景。數(shù)據(jù)庫查詢慢。如果聚合服務(wù)每次收到請求都查數(shù)據(jù)庫查詢慢了就會(huì)拖累整個(gè)鏈路。我的優(yōu)化是加Redis緩存熱點(diǎn)數(shù)據(jù)直接從緩存讀數(shù)據(jù)庫只做持久化。網(wǎng)絡(luò)抖動(dòng)。園區(qū)現(xiàn)場的網(wǎng)絡(luò)環(huán)境不一定穩(wěn)定WebSocket斷線重連期間數(shù)據(jù)會(huì)丟失。我的做法是前端維護(hù)一個(gè)本地緩存斷線期間用緩存數(shù)據(jù)展示重連后拉取最新數(shù)據(jù)覆蓋。問題排查方法解決措施數(shù)據(jù)延遲超過5秒檢查WebSocket消息隊(duì)列長度加消息隊(duì)列丟棄過期消息狀態(tài)更新卡頓用Performance面板看渲染頻率批量更新降低渲染頻率斷線后數(shù)據(jù)不更新檢查WebSocket連接狀態(tài)加斷線重連和本地緩存數(shù)據(jù)與現(xiàn)場不符對比傳感器原始讀數(shù)檢查聚合服務(wù)的清洗邏輯5. 項(xiàng)目復(fù)盤與可擴(kuò)展方向5.1 這套方案的實(shí)際效果與局限項(xiàng)目最終交付的時(shí)候園區(qū)那邊組織了驗(yàn)收。大屏在會(huì)議室的大電視上跑了一下午幀率穩(wěn)定在50到60之間巡檢模式走了一圈沒有穿模數(shù)據(jù)刷新延遲在可接受范圍內(nèi)。甲方最滿意的是巡檢功能以前他們要開車?yán)@園區(qū)一圈檢查設(shè)備現(xiàn)在坐在辦公室里點(diǎn)一下按鈕就能看個(gè)大概。但我也要客觀說幾個(gè)局限。第一模型精度有限。Tripo3D生成的模型在大屏中遠(yuǎn)景下沒問題但如果甲方要求做設(shè)備內(nèi)部結(jié)構(gòu)展示比如打開水泵看葉輪那這套方案就撐不住了必須手工建模。第二AI生成的代碼需要人工審核。GPT-6 Astra寫的Three.js代碼大概有70%可以直接用剩下30%需要改主要是版本兼容和邊界條件處理。第三數(shù)據(jù)準(zhǔn)確性依賴傳感器本身。3D大屏只是展示層如果傳感器數(shù)據(jù)本身不準(zhǔn)大屏上顯示的就是錯(cuò)誤信息這個(gè)鍋不能讓可視化背。5.2 后續(xù)可以擴(kuò)展的幾個(gè)方向這個(gè)項(xiàng)目做完之后我腦子里還有幾個(gè)擴(kuò)展方向有些已經(jīng)在規(guī)劃了。第一個(gè)方向是接入視頻流。園區(qū)里已經(jīng)有攝像頭可以把實(shí)時(shí)視頻流投射到3D場景里的攝像頭模型上點(diǎn)擊攝像頭就能看到實(shí)時(shí)畫面。技術(shù)上用WebRTC或者HLS都可以難點(diǎn)在于多路視頻同時(shí)播放的性能優(yōu)化。第二個(gè)方向是歷史數(shù)據(jù)回放。把過去一周或者一個(gè)月的數(shù)據(jù)存下來做一個(gè)時(shí)間軸拖動(dòng)時(shí)間軸就能看到園區(qū)狀態(tài)的變化過程。這個(gè)功能對分析病蟲害傳播、灌溉效果很有價(jià)值。第三個(gè)方向是移動(dòng)端適配。現(xiàn)在的大屏是給PC瀏覽器做的如果能在手機(jī)或者平板上看巡檢人員就不用回辦公室了。Three.js在移動(dòng)端的性能是個(gè)挑戰(zhàn)需要做更激進(jìn)的LOD和紋理壓縮。第四個(gè)方向是AI預(yù)警?,F(xiàn)在的大屏只做展示不做判斷。如果接入一個(gè)簡單的時(shí)序預(yù)測模型根據(jù)歷史數(shù)據(jù)預(yù)測未來幾小時(shí)的土壤濕度、溫度變化提前發(fā)出預(yù)警價(jià)值會(huì)更大。5.3 給后來者的幾條實(shí)在建議如果你也想用這套方案做類似的項(xiàng)目我有幾條經(jīng)驗(yàn)可以分享。不要追求一步到位。我一開始想做一個(gè)全功能的數(shù)字孿生結(jié)果發(fā)現(xiàn)每個(gè)環(huán)節(jié)都有坑進(jìn)度嚴(yán)重滯后。后來調(diào)整策略先做最小可用版本地形加建筑加數(shù)據(jù)展示跑通了再逐步加巡檢、加報(bào)警、加歷史回放。這樣每完成一個(gè)模塊都有成就感也方便向甲方匯報(bào)進(jìn)度。模型資產(chǎn)要提前規(guī)劃。不要等到場景搭好了才去生成模型那樣會(huì)手忙腳亂。我的做法是項(xiàng)目啟動(dòng)第一周就集中生成所有模型然后在Blender里批量處理后面搭場景的時(shí)候直接調(diào)用效率高很多。性能優(yōu)化要貫穿始終。不要等到卡頓了才優(yōu)化那樣往往要推倒重來。從第一個(gè)模型導(dǎo)入開始就注意面數(shù)、紋理大小、draw call數(shù)量后面會(huì)省很多事。保留手工調(diào)整的余地。AI工具再方便也不能完全替代人工判斷。模型的位置、角度、比例路徑的走向光照的參數(shù)這些都需要根據(jù)實(shí)際效果反復(fù)調(diào)整。把AI當(dāng)成一個(gè)高效的助手而不是全能的替代者。最后說一個(gè)我踩過的最大的坑不要在項(xiàng)目初期就鎖定Three.js的最新版本。我一開始用了當(dāng)時(shí)最新的r162結(jié)果發(fā)現(xiàn)和項(xiàng)目里其他依賴有沖突又退回到r158浪費(fèi)了兩天時(shí)間。建議用經(jīng)過社區(qū)驗(yàn)證的穩(wěn)定版本等生態(tài)跟上了再升級(jí)。這個(gè)教訓(xùn)讓我在后續(xù)項(xiàng)目里都養(yǎng)成了鎖定依賴版本的習(xí)慣package.json里堅(jiān)決不用^符號(hào)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月天婷爱综合| 五月激情婷婷色| 日日噜狠狠| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | 99热欧美精品| 五月婷婷丁香91| 亚洲无码色| caopeng超碰| 九九美女视频| 91九九热| 九九色情网站| www久久久久久久久久久| www.婷婷亚洲基地| 99激情视频| 伊人六月无码视频| 97丁香花五月天激情小说| 日本色超碰| 无码人妻丰满熟妇奶水区码| 99国产精品久久久久久久久久久| 天天干天天做| 99视频内射三四| 色色色色色色网站| 婷婷情爱五月天6| 丁香五月婷婷丫| 色狠狠综合网| 亚洲综合九九| www狠狠| 婷婷六月天| 久久久国产精品黄毛片| 国产欧美日韩综合精品一区二区| 另类小说五月天| 亚洲无码yw| 99re思思热久久| 狠狠色激情在线| 丁香五月婷婷啪啪| wWw色五月| 日本片日本片祼观看网站在线看中文版网页在线看| 婷婷成人综合| 激情五月丁香婷婷夜夜操| 中文在线成人| 五月天丁香网站| 五月激情婷婷国产精品久久久久久| 激情五月天婷婷播播久久综合91 | 99视频在线观看网址| 美女久久婷婷| 欧美人人超级碰| 婷婷五月激情小说| 六月婷婷啪啪| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 久久激情五月婷婷| 夜夜夜夜夜操| 久久er99热精品一区二区| 色欲婷婷五月天| 天天日天天舔| 婷婷成人五月天| 99热这里只有精品首页| 久久精品99国产精品日本| 婷婷丁香五月亚洲17cao| 99精品国产热久久91色欲| 女人天堂AV| 五月天婷婷成人| 91精品综合久久久久久五月丁香| 天天肏高清在线| 久综合| 97婷婷狠狠| 天堂久久精品| 激情五月天。| 五月丁香啪啪啪啪| 久久99热精品a片在线观看| 亚洲狠狠操| 人妻VideOssS人妻| 久久99精品九九久久久婷婷| 亚洲精品白浆高清久久久久久| 9久热精品在线视频| 丁香五月婷婷啪啪视频| 色色免费网站| 丁香成人色情五月天| 婷婷操婷婷干婷婷射| 激情第四色| 丁香六月久久| 色婷婷在线视频观看| 超爽内射| 久久小视频免费| www.日韩艹| 99国产这里只有精品| 噜噜狠狠色| 欧美激情五月天| 激情五月天天| 天天爽天天爽天天爽天天爽天天爽| 狠狠干在线视频| 5月丁香综合图区| www.久久久久久久久久久| av网站不卡在线| 色婷婷综合亚洲| 五月婷婷天堂| 激情五月丁香综合网站| 这里只有精彩视频| 综合色吧| 成人电影丁香六月天| 中文久久婷婷| 香蕉曰比| 五月情四婷婷| 婷婷五月天激情文学| 亚洲第一成人无码A片| 久热久操久热久草国产91| 操操操www.com| 人妻VideOssS人妻高清| 免费看欧美成人A片无码| 久久丁香综合精品综合| 亚洲五月天伊人| 婷婷在线播放| 欧美精品A片一区在线观看| 五月份婷婷| 人妻精品久久久久久| 开心五月综合激情网| 国产内射婷婷| 婷婷五月精品在线| 精品一二三区久久AAA片| 9热在线视频精品| 人人色性网| 狠狠爱激情网| 色域五月婷婷丁香| 婷婷五月影院| 青青久久大香蕉| 2020久久婷婷五月| 天堂成人A片永久免费网站| 伊人五月综合网| 俺去也在线www色官网| 亚洲网视屏| 丁香六月综合激| 丁香五月大片| 亚洲乱码日产精品BD| 婷婷色九月| 久久机热/这里只有精品| 精品一二三区久久AAA片| 激情綜合網址| 色婷久九| WWW.久久久久久久| 超碰色综合| 97操碰在线97| 草综合14| 草草操操| 狠狠综合网| 日韩av在线电影| 五月天婷婷在线视频| 五月天婷婷丁香成人网| 色吧五月婷婷| 91精品久久久久久久久| 五月色婷| 97涩涩丁香五月天| 久热99久热| 五月天色婷婷网| 青吴乐视频| 婷婷激情综合网| 久热婷婷综合| 欧美VA在线| 久色大香蕉| 99在线亚洲| 狠狠狠狠狠狠草| 色五月成人在线| 五月婷婷视频| 激情丁香五月| 色五月婷婷成人视频| 色色婷| 思思热久在线观看视频| www.91AV.com| 激情av| 97福利视频| 久久人妻久久| 日本成人噜噜| 欧洲亚洲免费视频9| 五月丁香啪啪网| 另类五月婷婷| 性爱网六月丁香| 播五月开心婷婷欧美综合| 操日视频| 艹B高清无码| 99热成人在线| 五月丁香六月综合情在线观看 | 色狠狠综合入口| 久久99人人| 天天摸色吧天天摸色吧| 91久久婷婷| 少妇水多A片太爽了| 啪啪啪五月天| AV九九| 日韩成人精品中文字幕| 亚洲热综合| 啪啪激情网| 亚洲爆乳无码精品AAA片蜜桃| 五月噜噜| 色激情综合| 99热9| 互月天综合| 91视频精品99| 1024在线视频| 成熟妇人A片免费看网站| 热99精品视频| 天天综合激情| 14色综合婷婷| 亚洲传媒在线观看| 天天干,夜夜爽| 亚洲操b| 久热婷婷| 久久婷婷久久| 91av成人| 亚洲欧洲另类图片| 99网| 六月激情网| 亚洲va欧美va天堂v国产综合| 五月丁香香蕉| 91碰在线| www一起操| 色五月激情五月| 色欲婷婷五月天丁香| oVV4WIB3vFi8D| 色色综合激情| 婷婷色一二三区波多野结衣| 婷婷五月综合国产精品| 久久久激情| 能看的av| 超碰在线免费9| 亚洲九九99精品视频在线播放| 91丨九色丨大屁股| 日韩精品999| 伊人久久大香线蕉亚洲五月天,| 亚洲精品成人| 人人播| 亚洲成人中心| 激情五月天综合网| 色在线99| 9久热在线视频精品| 中国激情网| 亚洲五月天综合| 久草 天堂| www91在线| 色噜噜狠狠狠狠色综合久欧美| 激情综合婷婷| 国产精品久久久久久久久久| 天天插天天插| AV中文网| 91精品刘玥| 青草视频在线观看视频 | 亚洲乱码日产精品BD| 超碰人人干| 蜜臀av粉嫩av懂色av| 激情婷婷啪啪| 26uuu在线观看| 色色色色色爱| 五月综合无码| 五月香婷婷| www夜夜| 丁香六月婷婷激情| 久久色五月天| 91久久99久久91熟女精品| 久色激情| 婷婷狠狠操| 久综合网| 成人午夜天| 亚洲乱码日产精品BD| 日产精品一线二线三线芒果| 五月天婷婷综合色| 免费成片在线观看| 超碰人人操在线| 99热在线中文字幕| 日日天天天| 色五月xxx| 丁香五月网络网络| 淫荡综合网| 玖玖资源站蜜臀| 久久伊人五月天| 这里只有精品视频| 久9热| 99re热视频这里只精品| 久久久日韩特色特黄AAAA| 去色色五月天| 丁香婷婷六月激情文学 | 久久久性爱视频| 久久玖玖综合| 开心激情站| 在线看片h站| 久草婷妨| 日韩啪啪网| site:xiongshengzz.com| 丁香五月AV在线| 亚洲色色精品| 色99日韩| 大香蕉视频婷婷| 九色 在线| 丁香色五月直播| 丁香月五月天婷婷久久| 五月丁香婷婷婷激情爱爱| 欧美99热| 九九成年视频| 色五月无码| 婷婷精品综合| a网站免费观看| 婷婷丁香精品视频在线观看| 色色综合网站| 色五婷婷开心缴| 综合网亚洲| 亚洲欧美综合7777色亭亭| 人人叉久| 五月丁香婷婷成人伊人网| 激情五月婷婷开心网| 99热欧美| 欧美婷婷综合网| 五月丁香久人妻中文| 亚洲、热| 六月婷婷综合| 久99热| 婷婷丁香人妻久久在线观看| 欧美日综合| 91久久九色| 激情五月激情综合网一级丸片| 久久五月综合| 先锋影音av色五月天资源站| 99 热| 色深爱五月| 中文字幕人妻熟女在线| 香蕉综合在线| www久久艹| 久久久久久久久久久久久9| 99久在线观看| 婷婷刺激综合| 色五月天丁香婷婷色| 五月天亚洲最大成人| 97超碰在线免费观看| 91a片爽| 五月婷婷激情四季| 五月丁香免费看| 色播五月丁香综合| 久久婷婷五月综合伊人| 曰本久久女| 人妻系列久久久久久久久久久| 翔田千里 50岁 无码| 色激情网| 亚洲99精品欧美一区| 成人做爰A片免费看网站找不到了| 亚洲AV中文在线| 五月丁香综合在线| 9久操| 激情婷婷六月| 99热国产在线| 色噜噜狠狠插综合| 日本A片一区| 丁香婷五月| 成人片黄网站色大片免费毛片| 五月婷婷av| 99国产精品久久久久久久久久久| AV在线收看| 九月丁香五月婷婷| 九月婷婷综合在线| 欧美婷婷成人| 久婷久婷| 可以看的AV| 99久久99久久综合| 六月丁香婷| 婷婷六月丁香在线| 久久久天堂国产精品女人| 99re66热这里只有精品| 色婷婷综合网| 激情五月色综合国产精品| 色色国产| 久久亚洲婷婷| 综合激情sV| 天天操天天插| 亚洲中文丁香| 欧美熟女视频 色婷婷| 99 这里只有精品| 成熟妇人A片免费看网站| www.五月婷婷久久.com| 99综合入口| 99视频这里有精品| 六月丁香久久| 95精品区一区二| 丁香五月天啪啪激情综和网| 性爱人人网| 变态另类9| 天天色播| 丁香五月婷婷av影院| 99热国产在线| 亚洲AV人人操| 性按摩玩人妻HD中文字幕| 精品怡红九九九| 欧美激情-区二区三区| 婷婷综合在线| 九九热这里都是精品6| 色婷婷成人做爰A片免费看网站| 另类激情五月| 色综合中文| 婷婷综合网| 三级大香蕉网| 午夜天堂啪啪| 六月婷婷天堂| 亚洲色热| 免费观看的av| 五月婷丁香久久久| 五月丁香好婷婷A片网| 超碰在线99| 99热精品一区| 9191avse| 性爱111111| 51XX午夜影福利| 五月婷婷就去色| 日韩三级视频一区二区| 五月婷婷六月丁香| WWW.17C亚洲精品| 再綫Av免费視品| 久久婷婷六月综合综合| 色五月激情五月| 天天日综合| 婷婷成人网五月天| 色爱99| 少妇2做爰HD韩国电影| 天天做天天爱| 婷婷五月AV| 大香蕉婷婷五月天| 97婷婷五月激情六月丁香伊人| 五月婷丁香| 色丁香影院| 日韩免费乱轮网站| 色九月欧美| 久久大国产香蕉| 婷婷精品在线| 99久视频| 丁香婷婷婷五月| a色色色色色| 久久婷婷激情久久| 天堂va久久久噜噜噜久久Va| 五月天久久色| 裸睡玩奶头(高H)| 欧美色色色色色色色| 天天摸夜夜夜| 色五月成人网| 日本噜噜色网| 六月婷伊人| 99re热在线视频| 野外99热| 亚州第一A片| 五月天丁香色色| 亚洲激情五月天| 色丁香五月婷婷| 天天综合天综合| 五月天开心成人网| 激情五月天啪啪| 九九国产精视频| 亚洲AV人人操| 九月婷婷久久久| 99视频九九热| 性生活视频98791| 99re视频在线| www.99日本| 99久久精彩视频| 激情丁香五月综合| 激情综合网站| 第四色网婷婷| 99自拍视频网站| 丁香婷婷五月综合影院| 中文资源在线a | 玖玖婷婷色五月| 婷婷丁香黄色| 五月婷久久草| 天天射天天干天插色综合| 综合性爱网| 婷婷五月激情综合| 五月天激情社区| 五月亭亭综合五码| 五月天啪啪| 亚洲视频伍月婷婷| 九九热啪啪| 东京热伊人| 天天操天天曰| 丰满老熟妇BBBBB搡BBB| 色呦呦在线| 亚洲国产成人AV在线| 国洲夜色亚热在线久久| 五月天综合激情网| XXXX岛国| 久久免费视频62| 天天爽天天摸天天爱| 五月天婷婷乱论小说| 久久怡红院| 色婷丁香| 免费无码毛片一区二区A片| 亚洲成人在线在线| 国产日韩av片| 五月天堂婷婷| www.狠狠操| 色色五月婷| 亚洲AV免费在线| 人妻日日日| 色婷婷亚洲在线观看| 久久综合影院| 五月丁香成人| 99久在线精品99re5热视频| 亚洲无码另类| 丁香五月天大香蕉啪啪| 日韩色久| 第六色在线| 丁婷婷五月天在线播放| 久久HD| 五月刺激丁香月综合| 9999热在线免费观看| 99久久久免费| 久久视频这里99| 大香蕉伊人99| 亚洲av另类在线观看| 激情五月综合久久| 夜夜操夜夜姧| 中文字幕,综合,91| 色色操| 99ri国产精品| a69在线视频| 日韩aaa| 99热这里有精品| 婷婷自拍| 99aese| 日韩啪啪视频| 97在线/日本| 色综合天天网| 丁香五月综合| 亚洲成Av人片乱码色第1集| 蜜乳9188| 亚洲AV中文在线| 婷婷综合丁香| 色五月开心五月激情五月| 这里只有精品视频在线| 丁香婷婷欧美综合| 色色色色色级无码| 日韩成人无码人妻| 久久五月婷婷视频| 永久AⅤ1| 7EzOBIhNq85TO| 久久停停超碰| 久久激情天堂| 99热999| 丁香六月爱综合| av在线资源| 色99免费视频中文| 狠狠干五月丁香综合网| 国产精品久久久爽爽爽麻豆色哟哟| 91人人操人人爱| 激情婷婷网| 色噜噜狠狠色综无码久久合欧美| 色婷婷影视| 天天操中文字幕| 色色色色色日韩午夜激情 | www.婷婷,com| 激情五月综合网| 色九九九综合| 99热这里只有精品一区| 天堂在线伊久| 婷婷五月天成人基地| 超碰91在线| 丁香综合婷婷开心激情网| 丁香五婷婷| 狠狠色丁香久久婷婷综合五月| 色婷五月| 9精品国产在热久久| 思思热久久久久思思热| www.色多多婷| 丁香五月区| 丁香五月婷婷总啪啪| 五月丁香六月激情综合在线| 国产精品久久久爽爽爽麻豆色哟哟 | 五月天婷婷三级黄| 91精品丝袜久久久久久| 日本va网站| 精品人妻伦九区久久AAA片| 中文网AV| 亚洲精品白浆高清久久久久久| 久久丁香五月婷婷激情综合网| 99热这里只有精品在线观看| 亚州欧美国产久精国产99综合视频| 五月婷婷香| 婷婷五月在线综合| 91在线操逼视频| 色色色欧美色色| 五月婷婷碰碰| 丁五月激情视频免费| 久久五月情| 六月婷婷色色色| 久久 婷婷 五月天| av在线资源| 内射丰满人妻| 婷婷五月激情综合啪啪| 久久作爱| 国产婷婷综合| 欧美超碰亚洲| 婷婷五月天久久| 97色五月天| 97超碰9久热婷婷热| 久久精彩视频| 天天摸.天天mo| 又大又粗九一在线| 久色激情| 天天婷婷天天| 成人在线网站| 欧亚成人A片一区二区| 成人九九视频| 久激情网| 碰碰人人人| 色噜噜狠狠色综合网| 天天搞夜夜爽夜夜爽| 亚洲狠狠色丁香婷婷综合久久| 99爱在线观看视频| 天天日天天插天天操| 在线视频九色97| 日本综合色色| 视色综合| 草综合网| 国产44页| 韩国真做片在线观看| 天天爽天天日| 五月丁六月香av| 久久久欧美精品sm网站| 中文字幕成人网站| 无码激情| 99综合视频| 五月婷婷综合网在线播放| 色五月自偷自拍婷婷婷婷| 成人av免费观看| 婷婷五月激情五月激情| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 久久这里有精品在线观看| 99在线资源| 成人做爰黄A片免费看直播室男男| 丁香五月人妻| 日本熟女一区二区| 综合在线网| 欧美性猛交99久久久99| www久久久久久久久久久久久久久久久| 色5月婷婷色| 99精品久久久久久久婷婷久久| 狠狠色色| 亚洲色图45p| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 亚洲综合色五月| 草综合网| 亚洲综合五月天婷婷丁香| 婷婷丁香久久网| 欧美色五月| 亚洲热久久| 婷婷综合成人| 婷婷五月综合亚洲| 久8色色| 五月婷婷熟女| 五月丁香婷婷激情在线视频| 日韩婷婷五月| 九九综合九九| 久久网日本| 99碰视频| 99色| 密乳Va| 国产色99| 激情综合色婷婷啪啪六月天| 亚洲av成人一区二区电影在线| 国产成人AV不卡| 五月丁香六月激情| 亚洲精品久久久久AV无码| 久热这里只有| 亚洲超碰在线| 精国产品一区二区三区A片| 99热在线观看精品| 婷婷开心激情| 婷婷视频网| 五月天婷婷激情| 五月婷婷色| 五月天色色色| 99精品成人无码A片观看金桔 | 潘金莲AAAAAAAAAA| 操精品9| 日本激情综合| 91九色PORNY中文啦| 婷婷免费视频| 丁香激情五月| 国产91视频| 任你爽视频| 亚洲VA欧美VA| 欧美噜一噜| 九九热这里只有精品9| 操你av| 99热免费精品| 婷婷五月天久久| 开心激情网五月天| 开心五月色婷婷综合开心网| 嫩草AV久久伊人妇女超级A| 五月色情| 97久久超视频| 成人av在线电影| WWW五月婷婷| 国产精品蜜臀99| 亚洲婷婷免费| 日韩AV大全| 乱精品一区字幕二区| 丁香深五月婷婷| www.日韩国产| 激情五月伊人婷婷| 天天夜天天色天天| 九九大香蕉黄色影院| 五月丁香成人网| http:色情日本com| 丁香五月婷婷亚洲另类| 午夜婷婷| 中文国产五月天| 色偷偷色婷婷| 国产伦亲子伦亲子视频观看| 丁香综合久久| 伊人五月天日日夜夜久久久天天| cc精品国产性传播| 五月天婷婷在线播放| 九九成人电影婷婷| 精品99在线| 婷婷激情五月天色| 丁香久久综合| 狠狠色 综合色区| 日本视频99| 五月丁激情| 99色热视频在线| 五月丁香激情啪啪| 九久久精品视频99| www.狠狠色.com| 五月婷婷|欧美| 黄色三级毛片中字| 久久久18| 俺去也五月| 五月综合激情婷婷六月色窝| 99人人精品| 丁香五月综合在线| 六月激情婷婷| 97操男人的天堂| 天天婷婷天天| 操99| 停停综合色色| 丁香婷婷色五月天| 26uuu国产| 999激情视频| 亚洲小视频| 色色国产| 亚洲思思热久| 香蕉婷婷色五月| 嫩草视频。| 狠狠人妻久久久久久综合丁香| 97碰久久| 欧美日韩国产一区二区| 狠狠色婷婷六月激情网| 年轻的妺妺伦理HD中文| 久久久婷| 黄色五月婷婷| 99精品97| 九九热这里只有精品6| 99五月香婷婷丁香在线视频| 影音先锋女人av鲁色资源网小说免费| 91丨九色丨高潮丰满日本| 婷婷丁香婷婷97| 婷婷在线午夜| BBWCUCKOLD精品熟妇| 99re这里只有精品99| 狼友视频在线观看18| 五月丁香婷婷啪啪网| 亚洲另类噜噜| 99色人| 丁香五月天啪啪激情综合网| 香蕉久久国产AV一区二区| 激情五月激情综合俺也去婷婷小说| 亚洲情色一区| 97婷婷狠狠| 丁香五婷婷| 六月婷婷香蕉| 丁香五月手机在线| 色综合丁香婷婷| 先锋资源91| 久热AA| 五月综合激情| 99九色视频在线观看| 五月婷婷AV| 色色五月婷| 直接看的AV| 人妻久久久久| 九九99精品视频在线观看| 五月婷婷高清| 五月婷婷综合在线| 伊人国产婷婷五月天| 无码一区精品一区视频| 婷婷五月天在婷| 欧美偷偷操| 五月婷婷激情五月| 99免费热视频在线| 五月丁香综合在线| 五月婷高清视频| 狠狠爱青青草| 日本五月婷婷| 99自拍视频网站| 色播五月天激情| 五月丁香婷婷国产精品综合| 久爱综合| 五月丁香六月婷婷网| 国产成人在线不卡AV| 成人短视频在线| Se.婷婷五月天| 熟女人妻视频| 激情五月婷婷开心网| 99九九在线精品热动漫| 人人爱人人草| 丁香五月第四色88| av第一二区| 色五月丁香婷婷| 岛国av网| 日本乱论99| 99这里有精品| 五月天色裸体视频| 91婷婷丁香五月| 丁香五月色情| av色色国产| AV大香蕉| 中文字幕在线视频播放| 人妻激情综合| 五月婷婷影视| 亚洲综合另类| 99国产精品久久久久久久久久久| 五月激情综合美女久久| 五月天堂色| 色五月丁香91| 婷婷丁香五另类网站| 激情五月无码| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | av在线观看网站| 色综合久久88色综合天天人守婷| 丁香婷婷综合色五月激情国产基地| 婷婷人人操| 丁香花五月天| 欧洲亚洲免费视频9| 成人做爰黄A片免费看直播室男男| www.狠狠操| 丁香月五月天婷婷久久| 天天综合91入口| 成人做爰A片免费看网站找不到了 噼里啪啦在线观看免费完整版视频 | 狠狠色综合网站| 亚洲综合婷婷| 久久婷婷五| 伊人五月天| 天堂综合久| 激情综合另类| 婷婷五月天成人五月天| 9热在线视频| 亚洲字幕AV一区二区三区四区| 久久久久久97| 亚洲人成人五月天| 五月天激日本色情在线| 小骚穴电影| 日韩一级淫乱片一区二区三区| 激情婷婷| 99综合网| 五月婷婷综合久久| 无码G高清天| 91久久1118| 丁香久久九九99| 丁香五月婷婷激情97| 六月丁香啪啪| 99热色精品| 婷婷爱五月天人人爱| 狠狠88综合久久久久噜噜噜| 日韩黄色网络| 久久婷婷资源| 婷婷五月欧美AA片免费| 字幕网AV中文字幕| 五月色丁香| 天天干夜夜谢| 久婷婷| 影音先锋91| 日日干夜夜干| 色噜噜狠噜噜视频| 99精在线| se99视频| 激情小说视频图片网| 日日日影院| 五月婷婷免费视频| 伊人六月丁香婷婷| www.狠狠狠狠| AV五月丁香| 五月综合激情图片| 亚洲九九免费| 久久婷婷五月国产色综合激情| 色色色999| 婷婷五月天色色| 97色碰| 激情欧美婷婷| 五月色情婷婷| 丁香六月婷婷综合色| 欧美噜噜久久久XXX| 新久久五月天激情| 色婷婷视频| www.婷婷五月天啪啪| 久1色色| 欧美日韓成人亚洲精品另类| 开心婷婷五月花| 爱的综合网| 婷婷五月深深爱| 夜夜夜夜撸夜夜操| 高清无码网址| 在线播放中文字幕| 九九香蕉网| 中文字幕乱码亚洲精品一区| 亚洲六月色| 男人的天堂在线婷婷 | 色性综合| 五月激情婷婷六月丁香| 人妻尝试久久久久久久久久久久| 亚洲人人操BD| XX色综合| 久久99精品九九久久久婷婷| 丁香五月天之婷婷影院| 少妇被躁爽到高潮无码文| 万月丁香狠狠爱| 久久天堂色| 人人干99| 五月色亭丁香| 99色免费视频| 日本一级一片免费视频| 婷婷五月天开心网| 99视频| 野外99热| 久操大香蕉| 亚洲一区先锋影音| 人妻少妇色综合| 99啪啪| 成人网在线观看视频| 精品一区二区三区三区| 超碰人人操人人干| 逼逼AV| 亚洲视频色婷婷| 99re8这里只有精品99re8热视频| 婷婷五月天丁香| 五月天婷婷网站| 自拍偷窥99热| 蜜臀嫩草| 久久五月丁香| 激情五月婷婷色综合| 色色激情网| 五月婷婷激情69| 98色花堂98t.R| 国产精品久久欧美久久一区| 五月天婷婷久草丁香| 人人爱干人人爱草| 色色亚洲五月天| 香蕉综合网| www.无码com| 性 色 婷婷| 日本色色网站| 日本黄 色 片| 第四色激情网| 99免费热视频| 97人人射| 色婷婷久久综| 婷婷色情小说| 激情小说五月天| 综合网狠狠| 五月婷婷香蕉| 婷婷五月天丁香花| 玖玖热99| 婷婷中文字幕版| 婷婷久久五月天| a片在线免费观看一区| 亚色网站小视频| 97色永久免费视频| 综合五月激情| 婷婷成人在线| 久久丁香五月天| 99久久新视频| 麻豆五月丁香婷婷| 丁香五月综合| 欧美色五月| 91凹凸在线| 9在线9在线婷婷在线国产| 深爱激情网婷婷| 五月丁香人妻| 日本婷久久| 99精品色| 99热伊人综合| 激情五月婷婷综合网| 综合色图区| 丁香五月色情| 丁香五月婷婷超碰在线| 99色| 久色婷婷200| 九色视频入口91| 五月天自拍视频| 五月婷婷综合在线| aaa丁香五月天| 亚洲永久免费| 99啪| 色你久久| 操人久久| 五月婷婷成人| 九九人人自拍| 丁香婷婷色情| 日本久久人| 婷婷激情图片| 欧美WW在线网| 天天干天天拍| 97五月天婷婷综合激情网| 日日夜夜婷婷| 欧美日韩精品一区二区三区钱| 狠狠干伊人| www.99精品日操伊人乱碰在线| 色9色| 北京熟妇搡BBBB搡BBBB| 99热这只有| 成人做爰A片免费看视频| 这里只有精品99视频| 色婷婷基地| 婷婷五月天激情在线观看| 久久小视频| 五月丁香啪啪啪啪| 五月天激情美女久久| 色五月亚洲开心网| 爱iii做iiii日日| 综合五月婷婷| 中文字幕丰满人妻无码专区| 亚州操操| 色五月婷婷婷婷婷婷婷婷婷婷| 婷婷五月激情五月激情| 掩去也综合五月视频| 丁香色婷婷| 噜噜噜噜在线| 97色碰碰公开视频| 狠狠综合网| 超碰在线成人| 色婷婷丁香五月| 丁香五月激情婷婷| 欧美成人日韩| 婷婷色导航| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | WWW.激情| 影音 五月 婷婷 久久| 十月色综合| 91丨九色丨丰满人妖| 天天日日夜夜| 久久99成人性爱高清视频| 午夜日韩久久久网站| 欧洲毛片基地c区| 亚洲激情无码久久| 嫩草哈哈操| 91久久色| 99小精品| 久久五月天激情婷婷| 亚洲av网站| wwccc久久久| 7777精品伊人久久久大香线蕉最新版| 久婷| 久久这里都是精品视频| 日本九九九九九九| 99re思思久久| 亚洲噜色| 九九久久五月天综合伊人| 丁香六月婷婷综合| 丁香五月天天高清在线| 激情久久肏屄视频| 人妻熟女一区二区AV| 五月天婷婷影院| 亚洲中文无码成人| 色哟哟精品| 久久综合丁香五月| 青青草青青草五月天| 五月婷婷激情综合| 这里只有精品99视频| 91亚洲免费片| 日韩无码成人电影| 五月天六月色| 激情精品久久| 欧美日韩五月婷婷| 成人做爰A片免费看网站找不到了 噼里啪啦在线观看免费完整版视频 | 六月激情久久| 婷婷色五月亚洲| 99超级碰碰| 色五月丁香A欧美com | 久草热久草在线视频| 少妇性按摩无码中文A片| 五月熟妇婷婷久久| 婷婷欧美激情综合| 色99久草在线| www.色综合| 色婷婷在线视频| 99热精品一| 久久综合激情五月天| 丁香久久久| 热99玖玖99玖玖99九九| 色色热| 男人天堂99| 99热费观看| 婷婷五月天色网久| 婷婷99狠狠| 成人中文字幕在线| 丁香五月伊人| 99国产精品白浆在线观看免费| 97色片| 五月丁香激情综合网| 99久久成人| 丁香六月婷婷缴情欧美| 9久热在线视频精品| 91九色PORNY中文啦| 人妻无码视频网| www.久久| 色色色五月婷婷| 精品久热69| 色色日本| 26uuuuuuuu国产| 五月婷婷在线网站| 亚洲视频在线观看99| 香蕉久久国产AV一区二区| 亚洲色婷婷五月天| 欧洲区自拍| 亚洲中文AV网站| 99久99久| 激情九月婷婷九月| 三十熟女| 人妻熟人中文字幕一区二区| 久久综合五月| 综合激情五月丁香| 97色久| 丁香六月激情| 亚洲熟女色| 色综合久久88色综合天天99| 日本3级片一区2区| 蜜臀99精品| 综合网啪| 日本三久久| 國語久久婷| 99热国产| 99这里只有| 激情伊人五月天| 91丨九色丨东北熟女| 婷婷金品综合视频| 天天干夜夜想| 天天日夜夜爽| 精品夜夜澡人妻无码AV| 97高清国语自产拍| 色色欧美。| 亚洲成人网址在线观看| 日本丰满久久| 伊人大香蕉在线视频| 色九九七七| 人妻精品在线| 五月丁香手机在线| 亚洲avjiujiur91| 六月丁香婷婷网| 色色欧美色色| 五月婷婷五月色| 在线中文字幕av| 人妻久久久久久久 | 色综合天天天天做夜夜| 99A片| 色丁香婷婷| 婷婷亚洲天堂| 久久六月婷婷| 四色五月视频| 99九九在线观看免费| 色热久资源| wwccc久久久| 婷婷色正月| 色欲天天综合| 激情丁香五月| 色天使久久综合| 1024婷婷综合久久五月天| 色五月大香蕉| 日本噜噜色网| 日韩色色视频| 99这里只有精品视频| 搡BBBB搡BBB搡五十| 噜噜噜狠狠色综合| 婷婷五月在线综合| 五月丁香婷婷综合网色欲| 丁香六月天之亚州热女 | 日韩无码亚欧无码| 91人操| 色七色九九| 五月丁香六月综合激情无码软件亮点| 狠狠五月激情丁香六月| 丁香五月激情综合| 久久日曰| 99精品热视频只有精品10| 激情五月五月五月婷婷| 色婷婷丁香五月| 亚洲综合激情五月久久| 激情婷婷黄色五月| 久久精彩免费视频精彩免费视频| 亚洲 无码 中文字幕 中出 | 97五月天| 去色色五月天| 天堂AV三级| 婷婷五月激情五月激情| 久热这里| 激情性爱网站| 色婷婷丁香五月高清在线| 久久久久久人妻| 色墦五月丁香| 99人人操人人操人人精| 婷婷色系婷色| av在线免费播放| 超碰2021| 久久五月天合网| 五月丁香啪啪啪| 日日噜噜夜夜狠狠久久丁香五月| 操日视频| 99热这里只有精品最新| 久久人妻视频| 26.uuu丁香五月婷婷| 六月丁香五月激情婷婷| 成人丁香五月| 综合精品啪啪| 婷婷六月丁香色| 久久综合性| 五月丁香中文婷婷中文| 婷婷丁香五月激情中文字幕版| 中美日韩成人在线| 婷婷六月偷拍| 五月天婷婷在看| 婷婷六月久久综合导航| 色九九丁香九月色九九色| 五月丁香婷中文字幕| 五月天成人综合| 9精品在线| 可以看的av| 婷婷九月丁香中文| 五月丁香六月婷婷亚洲激情综合| 97碰在线| 97超级碰碰碰| 婷婷五月视频| 国产在线网| 欧美婷婷五月无砖| 五月婷婷激情五月| 久久久久激情| 亚洲人妻Av| 色五月婷婷伊人| 99爱在线视频观看| 亚洲色就是色色色| 日日噜噜久久婷婷五月天 | 亚洲精品视频在线播放| 日日干日日| 美腿丝袜AV天堂网| 九九九九这里只有精品| 日本91在线播放| 五月天欧美激情| 99燥99日| 狠色狠色狠色狠色狠色网| 色999五月色| 天天搞夜夜爽夜夜爽| 色五月婷婷久久| 婷婷99中文字幕| www.99热视频| 秋霞A V毛片| 婷婷天堂站| 激情综合久久| 99这里| 99热 免费| 国产欧美精品AAAAAA片| 狠狠人人| 日韩少妇内射免费播放| 丁香六月婷婷高清| 天堂成人A片永久免费网站| 亚洲色婷婷网站| 香蕉久操| 天天婷婷色六月| 9视频1在线| 超碰99热|