色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

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

基于three.js的校園3D地圖開(kāi)發(fā)實(shí)踐:從坐標(biāo)轉(zhuǎn)換到性能優(yōu)化

基于three.js的校園3D地圖開(kāi)發(fā)實(shí)踐:從坐標(biāo)轉(zhuǎn)換到性能優(yōu)化 簡(jiǎn)介3D可視化技術(shù)正成為智慧校園與數(shù)字孿生場(chǎng)景的重要呈現(xiàn)方式。通過(guò)WebGL渲染引擎three.js開(kāi)發(fā)者可以在瀏覽器中構(gòu)建交互式三維地圖。實(shí)現(xiàn)過(guò)程中經(jīng)緯度坐標(biāo)需經(jīng)局部坐標(biāo)系轉(zhuǎn)換以避免浮點(diǎn)精度引發(fā)的場(chǎng)景抖動(dòng)地形可借助PlaneGeometry與噪聲函數(shù)生成建筑則通過(guò)ExtrudeGeometry拉伸并利用InstancedMesh合并繪制從而大幅降低draw call。該技術(shù)路徑不僅適用于校園也可推廣至園區(qū)、車(chē)間等小范圍場(chǎng)景甚至可與vue2百度的3D實(shí)景地圖模型加載相結(jié)合。掌握這些基礎(chǔ)原理與工程實(shí)踐即可高效完成從數(shù)據(jù)準(zhǔn)備到交互展示的完整流程。1. 項(xiàng)目定位與方案選擇為什么用 three.js 做 3D 地圖前陣子接到一個(gè)校園三維可視化需求要求把整個(gè)校區(qū)的地形、建筑、道路、水系在瀏覽器里做成可交互的 3D 場(chǎng)景。一提到 3D 地圖很多人第一反應(yīng)是 Cesium、Mapbox GL或者 UE5 像素流但綜合考慮項(xiàng)目預(yù)算、部署成本、前端技術(shù)棧之后我最終選擇了 three.js 作為核心渲染引擎。這篇博文就把整個(gè)實(shí)現(xiàn)過(guò)程拆開(kāi)講一講從數(shù)據(jù)準(zhǔn)備到坐標(biāo)轉(zhuǎn)換從地形生成到建筑建模從交互拾取到性能優(yōu)化一條線走完。先說(shuō)說(shuō)為什么是 three.js 而不是其他方案。Cesium 主打全球尺度加載傾斜攝影、地形瓦片確實(shí)強(qiáng)但如果需要的只是一個(gè)園區(qū)、一個(gè)校區(qū)、一個(gè)廠區(qū)這種小范圍場(chǎng)景用 Cesium 就像殺雞用牛刀學(xué)習(xí)成本高、包體體積大、API 抽象層級(jí)也重。Mapbox GL 的地圖底圖渲染很強(qiáng)但它本身是 2.5D 的想在它上面自由做建筑體塊拉伸、做水流動(dòng)畫(huà)、做自定義交互限制比較多。three.js 的好處是足夠底層也足夠靈活場(chǎng)景、網(wǎng)格、材質(zhì)、相機(jī)全部自己掌控做小范圍 3D 地圖再合適不過(guò)。它不叫“地圖引擎”但它能拼裝出你想要的一切地圖效果。這個(gè)方案適合誰(shuí)來(lái)參考如果你正在做智慧校園、智慧園區(qū)、數(shù)字孿生車(chē)間、展廳大屏可視化或者單純想給自己的個(gè)人項(xiàng)目做一個(gè)炫酷的 3D 小地圖這篇文章里的思路和代碼都可以直接復(fù)用。接下來(lái)我會(huì)以一個(gè)校園 3D 地圖項(xiàng)目為案例背景把關(guān)鍵環(huán)節(jié)逐一拆解每一步該怎么做、為什么這么做、坑在哪里都會(huì)講清楚。2. 數(shù)據(jù)準(zhǔn)備與坐標(biāo)系轉(zhuǎn)換地圖數(shù)據(jù)怎么變成 three.js 場(chǎng)景2.1 先搞清楚數(shù)據(jù)從哪來(lái)做 3D 地圖第一步不是寫(xiě)代碼而是搞數(shù)據(jù)。一個(gè)校園地圖需要的數(shù)據(jù)大致分四類(lèi)地形數(shù)據(jù)地塊范圍、高程信息如果沒(méi)有精確 DEM 數(shù)據(jù)可以用噪聲函數(shù)模擬起伏。建筑數(shù)據(jù)建筑輪廓多邊形、建筑高度、樓層數(shù)通常可以從 OpenStreetMap 導(dǎo)出 GeoJSON或者從規(guī)劃圖紙里人工繪制。道路與路網(wǎng)道路中心線或邊線同樣是 GeoJSON 格式。水系與綠地河流、湖泊、池塘的邊界以及綠化區(qū)域范圍。我用的是 OSM 導(dǎo)出的校園 GeoJSON加上自己補(bǔ)充的建筑高度字段。如果你在給一個(gè)具體園區(qū)做項(xiàng)目拿到 CAD 圖紙之后轉(zhuǎn)成 GeoJSON 也是常見(jiàn)路徑。注意OSM 的建筑數(shù)據(jù)常常缺高度需要人工調(diào)研或者按樓層數(shù)估算。我當(dāng)時(shí)是按“每層 3.5 米”乘樓層數(shù)算的誤差在可接受范圍內(nèi)。2.2 經(jīng)緯度坐標(biāo)怎么變成平面坐標(biāo)GeoJSON 里存的是經(jīng)緯度而 three.js 場(chǎng)景是一個(gè)三維笛卡爾坐標(biāo)系X 向右、Y 向上、Z 朝向屏幕外或者用 Z 表示南北方向。所以第一步必須做投影轉(zhuǎn)換。常用的做法是 Web Mercator 投影也就是把經(jīng)緯度轉(zhuǎn)成米制平面坐標(biāo)。不過(guò)實(shí)際項(xiàng)目里不需要引入很重的 GIS 庫(kù)簡(jiǎn)單算一個(gè)局部切平面就夠了function lonLatToMercator(lon, lat) { const x lon * 20037508.34 / 180; let y Math.log(Math.tan((90 lat) * Math.PI / 360)) / (Math.PI / 180); y y * 20037508.34 / 180; return { x, y }; }這樣做完所有經(jīng)緯度點(diǎn)都變成了以米為單位的平面坐標(biāo)。但 web 墨卡托的數(shù)值非常大幾百萬(wàn)的量級(jí)直接塞進(jìn) three.js 會(huì)觸發(fā)浮點(diǎn)數(shù)精度問(wèn)題導(dǎo)致場(chǎng)景抖動(dòng)、閃爍。解決辦法是“局部坐標(biāo)系化”把所有坐標(biāo)都減去中心點(diǎn)的坐標(biāo)讓場(chǎng)景原點(diǎn)附近的數(shù)值保持在幾千以內(nèi)。const center lonLatToMercator(centerLon, centerLat); const positions feature.geometry.coordinates[0].map(([lon, lat]) { const p lonLatToMercator(lon, lat); return { x: p.x - center.x, z: p.y - center.y }; });這里有個(gè)約定我把墨卡托的 y 放到了 three.js 的 z 軸上x(chóng) 保持不變。這樣地形上的東西南北方向和經(jīng)緯網(wǎng)一致后續(xù)擺放模型、調(diào)整相機(jī)方向都符合直覺(jué)。2.3 為什么局部坐標(biāo)系能避免精度坑three.js 的相機(jī)、場(chǎng)景節(jié)點(diǎn)在渲染時(shí)會(huì)做大量矩陣運(yùn)算坐標(biāo)值越大浮點(diǎn)數(shù)誤差越明顯。想象一下你在城市的另一端看一棟樓和站在樓底下看這棟樓同一個(gè)模型在空間里的表現(xiàn)截然不同。局部坐標(biāo)把項(xiàng)目范圍縮小到原點(diǎn)附近幾百米的場(chǎng)景里Float32 精度完全夠用。踩過(guò)這個(gè)坑之后我建議所有 GIS 數(shù)據(jù)進(jìn) three.js 之前都先做“去中心化”。別嫌麻煩這步不做后面模型抖動(dòng)、貼圖閃爍會(huì)折騰到你想放棄。3. 地形生成與場(chǎng)景環(huán)境先把“地”搭起來(lái)3.1 場(chǎng)景初始化核心流程其實(shí)只有幾行代碼但每一步都要有意識(shí)地去配置。const scene new THREE.Scene(); const camera new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 0.1, 10000); camera.position.set(300, 350, 500); const renderer new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(window.innerWidth, window.innerHeight); renderer.shadowMap.enabled true; document.body.appendChild(renderer.domElement);相機(jī)初始化位置我習(xí)慣放在地形的斜上方約 45 度俯視角看校園全景剛剛好??逛忼X必須打開(kāi)否則地形邊界、建筑邊緣的鋸齒會(huì)非常明顯尤其是大屏投放場(chǎng)景鋸齒一放大就很廉價(jià)。OrbitControls 是必裝的輔助庫(kù)它解決了相機(jī)旋轉(zhuǎn)、縮放、平移的基礎(chǔ)交互。import { OrbitControls } from three/examples/jsm/controls/OrbitControls.js; const controls new OrbitControls(camera, renderer.domElement); controls.enableDamping true; controls.maxPolarAngle Math.PI / 2.4;maxPolarAngle 限制最大俯視角度防止用戶把視角轉(zhuǎn)到地面以下。enableDamping 打開(kāi)慣性效果手感會(huì)順滑很多。3.2 用 PlaneGeometry 生成地形網(wǎng)格地形我直接用 PlaneGeometry 來(lái)生成分段數(shù)決定地形細(xì)膩度。一個(gè) 705 米 x 500 米的校園用 128 段 x 128 段頂點(diǎn)數(shù)約 1.6 萬(wàn)個(gè)完全夠用。const width 800; const depth 600; const segments 128; const geometry new THREE.PlaneGeometry(width, depth, segments, segments); geometry.rotateX(-Math.PI / 2);注意 rotateX。PlaneGeometry 默認(rèn)在 XY 平面旋轉(zhuǎn) -90 度后變成 XZ 平面Y 軸朝上這樣才符合 three.js 地形的通用做法。接下來(lái)要處理頂點(diǎn)高度。有真實(shí) DEM 數(shù)據(jù)的直接讀取高程數(shù)組寫(xiě)入頂點(diǎn) Y 值。沒(méi)有數(shù)據(jù)的情況下我用簡(jiǎn)單柏林噪聲來(lái)模擬地形起伏保證場(chǎng)景不死板。const positionAttribute geometry.attributes.position; for (let i 0; i positionAttribute.count; i) { const x positionAttribute.getX(i); const z positionAttribute.getZ(i); const height getNoiseHeight(x, z); positionAttribute.setY(i, height); } geometry.computeVertexNormals();computeVertexNormals 一定要調(diào)否則地形上光照表現(xiàn)是平的明暗變化完全沒(méi)有看起來(lái)像塑料片。3.3 頂點(diǎn)著色讓地形有質(zhì)感地形高度不只是幾何形態(tài)還可以映射成顏色。低洼處用藍(lán)綠色山丘用褐色頂部用灰白色這樣可以做出等高線般的視覺(jué)效果。const colors []; for (let i 0; i positionAttribute.count; i) { const y positionAttribute.getY(i); const t (y - minHeight) / (maxHeight - minHeight); const color new THREE.Color(); if (t 0.3) { color.setRGB(0.3, 0.6, 0.4); } else if (t 0.7) { color.setRGB(0.1, 0.4, 0.2); } else { color.setRGB(0.5, 0.5, 0.4); } colors.push(color.r, color.g, color.b); } geometry.setAttribute(color, new THREE.Float32BufferAttribute(colors, 3));用頂點(diǎn)色而不是貼圖的好處是不依賴(lài)外部圖片資源部署方便而且顏色隨地形動(dòng)態(tài)變化時(shí)只需要改數(shù)組非常靈活。材質(zhì)記得開(kāi)啟 vertexColors。const material new THREE.MeshStandardMaterial({ vertexColors: true }); const terrain new THREE.Mesh(geometry, material); scene.add(terrain);3.4 光照、霧和天空3D 地圖對(duì)光照要求不高但不打光不行。我習(xí)慣用一束平行光模擬太陽(yáng)再加一個(gè)環(huán)境光補(bǔ)亮陰影面。const sunLight new THREE.DirectionalLight(0xffffff, 1.5); sunLight.position.set(200, 400, 300); scene.add(sunLight); const ambient new THREE.AmbientLight(0xffffff, 0.6); scene.add(ambient);如果開(kāi)了陰影地形要設(shè)置 receiveShadow建筑要設(shè)置 castShadow。但陰影會(huì)顯著增加渲染開(kāi)銷(xiāo)移動(dòng)端建議直接關(guān)掉用偽陰影替代。再給場(chǎng)景加一層淡霧一是弱化地平線的硬邊二是有一種空間縱深的感覺(jué)。scene.fog new THREE.Fog(0xf0f5e8, 800, 2500);4. 建筑、道路和水系的模型化從“地圖”到“場(chǎng)景”4.1 建筑用 ExtrudeGeometry 拉伸拿到建筑輪廓后最直接的做法是利用 ExtrudeGeometry 把多邊形拉伸成體塊。const shape new THREE.Shape(); polygon.forEach((point, i) { if (i 0) shape.moveTo(point.x, point.z); else shape.lineTo(point.x, point.z); }); shape.closePath(); const extrudeSettings { depth: buildingHeight, bevelEnabled: false }; const geometry new THREE.ExtrudeGeometry(shape, extrudeSettings); const mesh new THREE.Mesh(geometry, buildingMaterial);這里的 depth 就是樓高Y 軸方向向上拉伸。bevelEnabled 必須設(shè)成 false否則建筑棱邊會(huì)有斜角樓體看起來(lái)圓滾滾而且會(huì)大幅增加頂點(diǎn)數(shù)。建筑材質(zhì)可以做成“白天模式”和“夜晚模式”兩套白天用淺灰白加一點(diǎn)環(huán)境反射夜晚把窗戶區(qū)域做成自發(fā)光。我在項(xiàng)目里給建筑材質(zhì)單獨(dú)加了 emissive 屬性夜晚讓色塊微微泛光大屏視覺(jué)效果很不錯(cuò)。4.2 建筑數(shù)量上百后怎么優(yōu)化校園里單體建筑四五十棟還好但如果做園區(qū)建筑上百棟逐個(gè)創(chuàng)建 Mesh 會(huì)導(dǎo)致 draw call 爆炸。優(yōu)化手段是用 InstancedMesh 批量渲染同種模型。不過(guò) InstancedMesh 要求所有實(shí)例共享同一個(gè)幾何體建筑高度各不相同怎么辦我的做法是把建筑按高度分成幾檔每檔用一個(gè)幾何體然后用 InstancedMesh 渲染同一檔里的所有建筑。const groupedBuildings buildBuildingsByHeight(buildings, [8, 16, 24, 36]); for (const [height, list] of groupedBuildings) { const geometry createBuildingGeometry(height); const mesh new THREE.InstancedMesh(geometry, material, list.length); list.forEach((building, i) { const matrix new THREE.Matrix4(); matrix.setPosition(building.x, height / 2, building.z); matrix.scale(new THREE.Vector3(building.scaleX, 1, building.scaleZ)); mesh.setMatrixAt(i, matrix); }); scene.add(mesh); }這樣一搞上百棟建筑只產(chǎn)生幾次 draw call幀率壓力小得多。4.3 道路怎么做才不“飄”道路數(shù)據(jù)通常是線或者窄多邊形。最簡(jiǎn)單的方式是把路網(wǎng)轉(zhuǎn)成 Line 對(duì)象配合 LineBasicMaterial 輸出。但如果想做出有質(zhì)感的道路我更推薦把道路兩邊線和中心線組合成多邊形然后貼到地形表面。最穩(wěn)妥的貼地做法是“偏移法”把道路多邊形每個(gè)頂點(diǎn)的高度采樣地形高度再手動(dòng)加 0.3 米的偏移量。不要試圖讓道路物理貼合地形網(wǎng)格那樣徒增復(fù)雜度。我試過(guò)把道路做成獨(dú)立 Mesh 貼在模型上只要偏移值大于地形起伏俯視看不出破綻側(cè)面看也不會(huì) z-fighting。水系同理用多邊形勾勒河岸、湖面邊界鋪一個(gè)透明材質(zhì)const waterMaterial new THREE.MeshStandardMaterial({ color: 0x3399ff, transparent: true, opacity: 0.7, });河岸邊緣多邊形的每個(gè)點(diǎn)同樣需要從地形采樣高度。這個(gè)步驟漏了的話水面就會(huì)在某處懸空或者穿到地下。4.4 河流流動(dòng)怎么做純靜態(tài)水面總感覺(jué)差點(diǎn)意思。給水面加一個(gè) UV 偏移做出流動(dòng)方向感waterMaterial.onBeforeCompile (shader) { shader.uniforms.uTime { value: 0 }; shader.vertexShader uniform float uTime; varying vec2 vUv; ${shader.vertexShader} .replace( #include begin_vertex, #include begin_vertex vUv uv; float flow sin(uv.x * 10.0 uTime) * 0.02; transformed.y flow; ); };要點(diǎn)是讓水面頂點(diǎn)做小幅正弦抖動(dòng)同時(shí)讓紋理采樣點(diǎn)隨時(shí)間偏移。做過(guò)之后河面有微微的波光流動(dòng)整個(gè)場(chǎng)景立刻“活”了。5. 交互與標(biāo)注點(diǎn)擊、懸浮、彈窗和文字標(biāo)簽5.1 鼠標(biāo)拾取建筑地圖沒(méi)有交互就沒(méi)有靈魂。three.js 里點(diǎn)擊判斷用 Raycasterconst raycaster new THREE.Raycaster(); const mouse new THREE.Vector2(); function onMouseClick(event) { mouse.x (event.clientX / window.innerWidth) * 2 - 1; mouse.y -(event.clientY / window.innerHeight) * 2 1; raycaster.setFromCamera(mouse, camera); const intersects raycaster.intersectObjects(buildingMeshes); if (intersects.length 0) { const building intersects[0].object; showBuildingInfo(building); } }這里有個(gè)經(jīng)驗(yàn)buildingMeshes 不要傳三維數(shù)組嵌套的對(duì)象要拍平成一維數(shù)組否則 Raycaster 遞歸遍歷會(huì)非常慢。建筑數(shù)量多的時(shí)候建議用三個(gè)參數(shù)快速篩選raycaster.intersectObjects(buildingMeshes, false)false 表示不遞歸子節(jié)點(diǎn)。5.2 標(biāo)注用 CSS2DRenderer 比 Sprite 強(qiáng)建筑上的名稱(chēng)標(biāo)注很多人會(huì)想到 Sprite。Sprite 確實(shí)會(huì)用但文字一旦多了就糊成一片而且縮放距離和相機(jī)交互很難控制。我更推薦 CSS2DRenderer它是把 HTML 標(biāo)簽掛在 3D 坐標(biāo)上清晰度完勝也能很方便地加 CSS 樣式、hover 效果。import { CSS2DRenderer, CSS2DObject } from three/examples/jsm/renderers/CSS2DRenderer.js; const labelRenderer new CSS2DRenderer(); labelRenderer.setSize(window.innerWidth, window.innerHeight); labelRenderer.domElement.style.position absolute; labelRenderer.domElement.style.top 0; labelRenderer.domElement.style.pointerEvents none; document.body.appendChild(labelRenderer.domElement);注意 CSS2DRenderer 的 DOM 元素要關(guān)閉 pointerEvents否則它會(huì)在 three.js canvas 上面蓋一層擋住鼠標(biāo)事件導(dǎo)致點(diǎn)擊拾取失效。這個(gè)坑我踩了一次排查半天才發(fā)現(xiàn)是標(biāo)簽層擋住了畫(huà)布。創(chuàng)建標(biāo)注對(duì)象const div document.createElement(div); div.className label; div.textContent building.name; const label new CSS2DObject(div); label.position.set(building.x, building.height 5, building.z); scene.add(label);標(biāo)注渲染循環(huán)里必須同時(shí)調(diào)用 CSS2DRenderer 的 renderlabelRenderer.render(scene, camera);5.3 點(diǎn)擊建筑高亮與信息面板點(diǎn)擊高亮我用的是兩種方案結(jié)合一是給建筑材質(zhì)設(shè)置 emissive 提亮二是給選中建筑加一層外發(fā)光邊框。最簡(jiǎn)單的是改 emissivebuilding.material.emissive.setHex(0xff8800);注意如果建筑是共享材質(zhì)直接改 material 會(huì)同時(shí)改變所有同材質(zhì)的建筑。所以必須 clone 一份材質(zhì)再改building.material building.material.clone(); building.material.emissive.setHex(0xff8800);信息面板就是普通的 HTML 絕對(duì)定位彈窗點(diǎn)擊建筑后顯示名稱(chēng)、樓層數(shù)、面積、用途。HTML 做展示層的優(yōu)勢(shì)是排版、樣式、響應(yīng)式都容易控制不用在 three.js 里畫(huà) UI。6. 性能優(yōu)化與常見(jiàn)問(wèn)題排查6.1 控制 draw callsthree.js 場(chǎng)景中每個(gè) Mesh 每個(gè)材質(zhì)基本對(duì)應(yīng)一次 draw call。校園場(chǎng)景如果建筑、路燈、樹(shù)木、路牌全部獨(dú)立生成幾百上千的 draw call 是常態(tài)低端設(shè)備掉幀嚴(yán)重。經(jīng)驗(yàn)值如下60 FPS 目標(biāo)下桌面端盡量控制在 300 次 draw call 以內(nèi)。移動(dòng)端大屏盡量控制在 100 次以內(nèi)。優(yōu)化手段按優(yōu)先級(jí)排InstancedMesh 合并同類(lèi)建筑、合并靜止的地形道路網(wǎng)格、刪除不可見(jiàn)物體、大場(chǎng)景開(kāi)視錐剔除、合并紋理圖集。6.2 浮點(diǎn)精度和坐標(biāo)抖動(dòng)前面提過(guò)局部坐標(biāo)能解決大部分精度問(wèn)題但還有一個(gè)補(bǔ)充技巧把 camera 的 position 也往原點(diǎn)靠。如果你做的是超大地圖比如整個(gè)城市那就需要“隨動(dòng)原點(diǎn)”方案即相機(jī)移動(dòng)時(shí)把整個(gè)場(chǎng)景反向移動(dòng)始終保持相機(jī)離原點(diǎn)很近。const offset camera.position.clone(); // 當(dāng)相機(jī)距離原點(diǎn)超過(guò)閾值時(shí) scene.position.sub(offset); camera.position.sub(offset);這不是我這個(gè)項(xiàng)目的剛需但如果你后續(xù)要擴(kuò)展到更大范圍建議提前架構(gòu)。6.3 常見(jiàn)問(wèn)題速查現(xiàn)象原因解決辦法地形邊緣閃白z-fighting相鄰 Mesh 貼太近偏移 0.01~0.1建筑飄在半空輪廓點(diǎn)高度未采樣地形每個(gè)點(diǎn)做高度采樣再加 baseY水面穿地水面頂點(diǎn)高度低于地形水面統(tǒng)一抬高到地形最高水位點(diǎn)擊沒(méi)反應(yīng)CSS2D 標(biāo)簽遮擋 canvaslabelRenderer.domElement.style.pointerEvents none移動(dòng)端卡頓陰影 抗鋸齒開(kāi)銷(xiāo)太大關(guān)陰影或關(guān) antialias建筑材質(zhì)全變了多個(gè)建筑共享同一個(gè) material修改前先 clone()相機(jī)穿地OrbitControls 未限制俯仰角設(shè)置 maxPolarAngle這七個(gè)問(wèn)題是我項(xiàng)目里實(shí)際遇到過(guò)的每一個(gè)都花了不少時(shí)間定位。尤其 z-fighting 和共享材質(zhì)定位過(guò)程極其迷惑經(jīng)驗(yàn)不分享出來(lái)真心難受。6.4 項(xiàng)目工程化在 Vue 里集成 three.js熱詞里提到“vue2 百度 3d 實(shí)景地圖加載 3d 模型”這個(gè)方向很多人問(wèn)。我在實(shí)際項(xiàng)目里是把 three.js 場(chǎng)景封裝成一個(gè)獨(dú)立的類(lèi)然后掛在 Vue 的 mounted 鉤子初始化卸載時(shí)銷(xiāo)毀渲染器和 scene。這里給出一個(gè)精簡(jiǎn)的集成模式export default { mounted() { this.map3d new Campus3DMap(); this.map3d.init(document.getElementById(map-container)); }, beforeDestroy() { this.map3d.dispose(); } };所有的 three.js 代碼盡量不直接寫(xiě)在 Vue 組件里而是抽成獨(dú)立模塊。好處是后續(xù)更換框架、復(fù)用場(chǎng)景、單元測(cè)試都方便。數(shù)據(jù)請(qǐng)求放在 Vue 層通過(guò)事件或方法注入到三維場(chǎng)景中這樣數(shù)據(jù)和渲染完全解耦。6.5 three.js 版本與資源獲取熱詞里有人問(wèn) three.js 怎么下載、中文文檔在哪統(tǒng)一說(shuō)一嘴。three.js 目前最推薦的方式是 npm 安裝npm install three如果做 CDN 引入官方推薦用 ES module 的 importmap 方式。中文文檔方面three.js 官方文檔是英文的國(guó)內(nèi)有一些中文鏡像站但更新可能滯后我更建議直接看官方示例和源碼遇到不懂的 API 去搜“three.js 類(lèi)名 用法”比看靜態(tài)文檔更高效。注意 npm 安裝版本要用 latest避免舊版本 API 和當(dāng)前示例代碼不一致。有些老教程用的是 Geometry新版已經(jīng)改成 BufferGeometry照著抄會(huì)出現(xiàn)各種報(bào)錯(cuò)。7. 還能怎么擴(kuò)展這個(gè)校園 3D 地圖做完之后我最大的體會(huì)是three.js 做小范圍 3D 地圖的能力被很多人低估了。它沒(méi)有內(nèi)置“地圖”的概念但正因如此它的表達(dá)完全由你掌控。你可以在上面疊加熱力圖、動(dòng)態(tài)軌跡、時(shí)鐘動(dòng)畫(huà)、夜景燈光秀、天氣系統(tǒng)甚至把 BIM 模型導(dǎo)進(jìn)去做樓宇內(nèi)部漫游。后續(xù)我打算在這個(gè)項(xiàng)目里加入行人導(dǎo)航動(dòng)畫(huà)讓小紅點(diǎn)在校園道路網(wǎng)里自動(dòng)尋路想一想就覺(jué)得可以做很多有趣的玩法。如果你正在規(guī)劃類(lèi)似項(xiàng)目我的建議是先從最小可行版本開(kāi)始一小塊地形、兩棟建筑、一條路跑通全流程再逐步增加密度和效果。別一上來(lái)就想做超大場(chǎng)景先解決“有沒(méi)有”再解決“好不好”。做 3D 地圖最磨人的不是 three.js 本身而是數(shù)據(jù)清理和坐標(biāo)系轉(zhuǎn)換這幾步耐心做扎實(shí)后面就能順暢很多。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美性生活内射| av黄图片在线观看| 免费在线视频97| 国产内射爽爽大片| 中文字幕亚洲永久精品| 色区久久| 热久久99999| 色www精品视频在线观看| 欧美线天码中字| 四方色播| 国产成人无码久久精品| 丁香九月激情啪| 日韩大香蕉| 国产在线视频午夜精华在| 久久久精品电影| 视频黄色国产一级| 五月丁香网站| 天天日骚逼熟女| 亚洲精品九九九| 亚洲 欧美 制服 另类 自拍| 亚洲精品美女久久久久久久久| 亚洲日韩精品在线播放| 国产视频三区四区| 久9爱经典视频| 午夜福利久久久噜久噜久久综合| 日韩电影天堂视频一区二区| 欧美丝袜中文字幕07在线| 激情五月天中文字幕色| 另类小说五月天| 久久一二区四| 蜜臀99久久精品久久久久久| 激情黄色片在线观看| 可以在线观看AV的网站| 成人熟女区| 欧洲综合色| 日本操逼视频不卡直接放| 日韩中文字幕视频在线观看| 闷骚老熟女15P| 操熟女91| 操比国产| 国产青视频| 欧美色图校园春色| 午夜福利视频在线一区| 老司机午夜福利视频一区二区| 国语精品对白| 一级特黄aaa大片在线观看成人一级片在线观看| 操逼网站视频漫画国产| 二三四区精品| 18禁无码永久免费无限制| 五月丁香| 97久操| 无码一区免费在线不卡| 少妇无码太爽| 亚洲色图 欧美| 久久久精品无码亚免费| 啊啊啊啊操死我了| 91国产操逼视频| 国产精品久久伊人| 人妻酒店出差被中出免费在线播放| 青青草公开在线免费不卡视频| 欧美αv.com| 丁香久久| 欧美综合1性辶| 日韩成人性爱电影在线播放| 男人的天堂在线| 深夜视频| 噜噜噜无码AV一级一级久久影院| 亚洲九九视频在线观看| 青青操综合网| 欧美性区| a男人的天堂久久一级A毛片| 精品久久在线区一区| 少妇无码999| 奇米四色影视777久久久| 欧美色66| 国岛片视频| 中文字幕神马久久| 久久精品中文字幕无码l| 久久偷拍人| 欧美成年人性爱视频免费观看| 丁香五月自拍| 久久这里只有精品9| 97啪啪| com 首页 18岁 禁区 女优 免费 精选 同城 | 亚欧美色图| 无码精品久久久天天影视| 日本一片一区| 丰满人妻aA一区二区三区| 国产原创精品| 国产成人无码啪| 91久久久久久久| 天天干人人干天天日97| 2017超碰| 不卡免费av在线播放| 综合性视频99| 四虎影院成年人片| 久久精品超碰| 国产精品国产自产拍高清AV| 美女啊啊啊啊啊| 国产成人久久久精品免费AV| 五月天亚洲网| 色综合网1| 一区超碰一区| 亚洲AV成人在线| 超碰人妻久久| 99久久com免费视频′| 国产精品播放| 日韩 成人 有码| 约操熟妇| 1024精品在线| 天堂精品小草| 亚洲熟女中文字幕在线| 久久αⅴ| 精品小视频在线| 亚洲精美粉嫩嫩泬在线观看| 2017,超碰| 黄污污污污| 日韩欧美性吧婷婷乱伦大香蕉 | av东京热男人的天堂| 欧美人与性动交a美精品| 91色堂| 色爱综合网| 97av在线观看| 后入式视频国产自| 天天日天天插| 欧美A片中文字幕| 好爽要喷了| 丁香五月综合| 天综合网| 九九九精品美女| 黄色二级片网站| 加勒比综合| 久久久不能久久久久| heyZO天然素人无码AⅤ专区| 人妻黑丝袜电影| 欧美在线播放aaaa| 啪啪啪东京| 91嫩草在线| 操美女高潮抽搐白浆| 欧美人妻少妇| 呦女网站| 日韩国产品视频中文字| 丝袜剧情| 免费观看日本操逼视频| 九九九999久久久网站| 欧美 综合| 久久鲁干| 做爱A级亚欧| 91色花堂| 日韩人妻无码专区| 最新av网站在线观看| 亚洲精品97p| 少妇诱惑视频| 五月丁香网站| 色综合色综合网| 久久精品国产Aⅴ| 99精品久久久久久| 九九热九九热| 欧美色图 人妻| 91精片| 九九人妻| 白丝少妇一区二区| 亚洲精品819| 亚洲一区日韩| 美女视频尤物网在线看| 97色综合中文网| 五毛骚逼极品美女怕怕| 五月天春色激情网| 亚洲综合激情五月久久| 九九精品无码专区免费| 好吊色青靑草| 欧美黑人168页欧美黑人167| 综合干干干av久久久综合网| 久久久婷| 欧美成人黄网色网站| 综合亚洲欧美精品日韩?v| 亚洲精品一卡二卡三卡福利视频网站 | 亚洲av无码国产精品字幕| 97中文综合| 色诱avtt| 嗯嗯啊啊啊好舒服| 亚洲日产专区| 久操热| 黄片视频,下载| 青青在线视频日韩欧美| 少妇无码999| 亚洲熟女少妇免费视频| 成人精品欧洲亚洲| 亚洲色悠悠久久88| 日韩人妻网站| 国产乱婷婷精品二区三区| 激情综合网激情五月天| 日韩乱伦视频| 中文字幕在线日亚州9| 美国aaaaa一级黄片| 色综合国产在线观看| 9久久久久| 女人香蕉久久毛毛片精品| 尤物视频网 刘玥| 综合欧美日韩在线| 神马影院午夜福利久久久| 天天看特黄的免费网站| 青青国产在线拍揄自揄拍| 日本天堂网| 91亚洲黑人| 五月天激情网站| 丁香五月av| 天天操天天舔| 亚洲欧美中文日韩视频中国语| 啪啪免费| 亚洲偷拍自拍在线视频| 久久美女福利是上海美女| 手机在线观看不卡无码av| 青青操综合网| 精品国产一级久久| 91大学精品激情戏| 中文字幕精品人妻丝袜| 嫩呦国产一区二区三区AV| 欧美性爱精品七区| 国产无码高清操逼视频| 国产女人高潮嗷嗷嗷叫小说| 中文字幕一区二区在线日韩精品| 伊人五月天激情| 久久香蕉国产线看观看猫咪av| 亚洲成人福利电影免费| 久久草大香蕉| 伊人天堂在线| 亚洲日本男人天堂网| 亚洲最大黄网| 婷婷五月天无码| 97视频在线观看网站| 日日嗷| 国产精品丝袜在线| 91久久免费视频互動交流| 欧美日韩不卡a片| 五月色网| 亚洲……91| 人人综合| 日比av无码| 男人的天堂 在线一区| 国产欧美日本亚洲精品| 一区二区视频在线播放| 99成人| 一区二区首页| 久久偷偷色综合蜜桃| 国产精品农村妇女精品| 日本爽爽爽爽爽爽免费视频| 粉嫩粉嫩一区性色AV片| 熟女人妻久久中文字幕一二区| 日本丝袜美腿人妻九九| 亚洲偷拍欧美激情| 久草午夜| 最新日产中文在线麻豆| 久久久久久久久久久97| 影音资源男人日韩| 国产青视频| 亚洲人综合| 欧美亚洲情色| 日韩AV无码中文一区二区| 五月婷婷色| 亚洲丝袜色图| 欧美亚洲厕所精品偷拍91| 97亚洲中文| 中文字幕中文字幕一区二区| 日本狠狠干| 色大香蕉97N| 99少妇| 欧美大波激情xxxx| 在线只有精品| 97爱b| 欧美视频一区二区三区| 国产成人欧美一区二区三区的国产| 成人福利视频网| 精品久久在线区一区| 91熟女.com| 三级日本一区二区三区| 色五月婷婷在线| 中文字幕十五区| 婷婷人妻激情| 精品国产丝袜一区二区三区乱码| 大香蕉伊人亚洲| 午夜精品久久久99热蜜桃的功能特点 | 琪琪精品免费一区二区三区| 亚洲麻豆精品二区三区| 免看60秒涩涩视频| 加勒比伊人| 九九色逼| 春色综合免费| 色呦呦呦在线观看视频| 富二代亚洲精品99| 99re视频在线播放青草| 国产青青综合伊人| 日本免费一级AAA大片器 | 日韩91网站| 久久五十路熟女人妻| 久久99精品视频| 亚洲污污网站| 狠狠操官网| 超碰三级秋霞| 久操电影网| 四虎影视永久在线免费| 天天干天天日天天射黄色大片| 我要色综合网站| 性影在线视频| 亚洲永久永久永久永久一级一级一级精品 | 欧美自拍偷拍综合图片| 国产伦精品免编号公布| 91观看 国产白丝| 久操精品网| 免费成人在线熟妇网| 国产精品一区二区久久精品| 精品无码一区二区| 91人妻熟女| 色五月婷婷久久| 亚洲天堂久| 2017人人操,人人摸| 国产有码一区| av毛片aaaaa免费看| av天堂影视中文在字幕在线中文| 九九这里只有精品| 精品人体无圣光凹凸| 97资源欧美| 无码久久亚洲高清,| 欧美人妻精品| 免费精品无码一级毛片牛牛影视| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 9久热| 欧美日韩人妻婷婷一区| 操操逼操操逼操操逼逼| 日本九九久久99| 欧美精品99久久久**| 伊人国产视频| 亚洲天堂7777| 亚洲少妇免费视频\| 亚洲各类熟们中文字幕| 青青草公开在线免费不卡视频| 国产高潮AA片免费看| 四虎免费在线播放| 久久婷婷五月综合| 日韩熟女三十乱伦| 97人亚洲综合字幕| 午夜电影在线观看无码专区| 天天噜| 手机看av网站在线看| 死我十八禁| 久久精品国产亚洲AV成人直播| 久操电影网| 91精品国产麻豆国产自产在| 国产熟女精品一区二区| 麻豆久久久久久久久丝袜| 91视频伊人| 色男人色天堂东京热| 最新日产中文在线麻豆| 亚洲中文字幕av | 男生女生啊啊啊啊| 亚洲成人美女无吗| 99热线麻豆 | 成人在线午夜视频一区| 最近的最新的中文字幕视频| 天天日天天干少妇日| 91狠狠综合久久久久久| 91亚洲色图| 亚洲三级网址久久最新| 成人免费福利网站国产| 屁股久久久久久久| 日本性爱不卡视频| 国产精品乱码久久| 99国内精品| 无码高清少妇久久| 国产国产亚洲一二三久久| 亚洲一区二区麻豆影院| 亚洲精品三区在线观看| 99re视频在线播放青草| 久久久久久久久久久999| HEYZO高无码国产精品227| 亚洲国产97| a人欧美综合天堂麻豆| 俺去俺来也在线www| 亚洲天堂加勒比| 日韩美女高潮喷水视频| 丁香六月婷婷久久综合| 中文字幕第9页萱萱影音先锋| 大屁股国产在线视频| 黑丝少妇| 国产激情av女片自拍| 欧美色图 色综合图| 一二三四视频在线社区中文字幕| 亚洲色偷偷色噜噜狠狠99网| 国产精品岛国片在线观看| 欧美天天性| 亚洲加勒比色图| 久久久久久久少妇| 婷婷AV一区二区三区| 久久天堂| 精品十八在线观看| 人妻人人澡人人爽人人| 亚洲有薄码区日本系列中文字幕| 操逼操网| 男人在线天堂| 南澳成人一级片在线播放| 欧美性暴力猛交XXXX| 丁香色婷婷| 黄色电影在线播放综合网站| 人人么人人操| 国产精品白丝www| 国产一区二区久久| 91在线限制级| 国产精品国产亚洲区艳妇糸列| 日本加勒比无码专区一二三| 91+欧美| 亚洲无码99| 国产精品久久久久久片| 国产精品爱欲| yiqicaoav| 在线洲亚线| 蜜臀一二三| 欧洲Au麻豆| 欧美后进式| 久久男女激情视频网站| 久久一区二区高清免费| 亚洲97成人在线观看| 国产9熟妇视频网站| 国内97干免费看| 任我爽视频在线观看| 久久麻豆一区二区| 狠狠穞A片一區二區三區| 欧美 亚洲 偷拍自拍| 欧美激情另类一区二区| 91亚洲色人| 国产无码精品久久久久久| 久久精品熟妇丰满人妻99| 91精品久久久久久| 亚洲在钱| 亚洲日韩少妇一道本视频| 亚洲美女色图| AV丝袜少妇| 夜夜騷av、一區二區| 精品四五区| 久草综合京东| 美日韩一卡二卡三卡免费人妻精品| 亚洲第一页色| 男人夜色天堂ss| Julia在线播放亚洲久久| 十八禁啪啦拍视频无遮挡| 日韩乱插| 90后性网国产欧美| 91粉芽高清在线一区二区| 国产激情综合五月久久| 五月天激情婷婷| av资源在线观看少妇| 9丨久久九九九 | 天天干18禁| 天天天肏屄肏屄肏屄欧美欧美| 91 亚欧| 97亚洲综合在线| 久久久久久加勒比| 国产sv美女内射| 熟妇色99| 天天日天天干天天操| 国产强奸无码乱伦| 日韩免费在线观看不卡| 精品中文字幕第一页| 午夜视频久久久久一区| 欧洲成人性爱视频| 日本高清一区二区在线| 五月丁香影视| 殴美牲| 亚洲一二三精品久久网 | 女人精品内射国产99| 欧美人黑A片无码免视费| 国内亚洲高清无码| 东京热视频网| 国产51色综合久久免费| 在线观看色视频| 日本日皮视频逼| 国产精品老师| 艳美熟妇先锋一二三区| 欧洲乱码视频| 99最新日韩偷拍视频| 久草精品在线| 色图综合网| 国产综合在线视频网站| 在免费jIzzjIzz在线视频| 亚洲精品成人激情在线| 91在线页| 今日头条成人一区二区三区四虎精品| 精品国产一区二区三区久久久蜜臀| 18禁久极品美女久久哦哟呀!| 国产欧美日产一区二区三区 - 国产欧美日 | 亚洲男人天堂2012| 一二三四视频在线社区中文字幕| 东京男人天堂| 中文字幕国产在线天堂| 精品成人动漫一区二区| 九九亚洲视频| 久久精品亚洲东京热色播| 色网综合网| 丝袜 亚洲 偷拍| 欧美亚洲第1页| a人片中文字幕一区二区| 色天天野狼综合社区| 久久激情婷婷| 亚州免费啪啪视频| 日韩国产成人自拍视频| 乱人伦 国语对白:视频直接看| 黄色小说亚洲| 欧美黑人168页欧美黑人167| 亚洲av青草久久一区二区| 精品人妻中文字幕4399| 五月丁香六月| www.AV有限公司一区| 美女91网| 国产精品一区二区a| 亚洲中文字母在线播放| 高清不卡视频| 懂色av中文字幕| 毛片一区二区| 国产日韩在线播放| 欧色综合| 78精品在线| 国产v片在线免费观看| 黄色网址在线免费观看| 亚洲福利中文字幕在线| 九九九九九九综合| 成人五级久久| 色五月婷婷五月天| 97在线青| 日韩欧无码一区二区三区免费不卡 | 国产欧美日韩臀| 亚洲成人在线乱码色午夜| 日韩精品一区二区高清| 人妻嗯啊啊在线播放| 天天干人妻| 亚洲美女AV无码| 日本三级R| 极品丝袜无码| 91情色在线| 日日操丁香五月天| 国产不卡片| 校园春色 亚洲| 懂色av色欲av蜜臀av| 色av中文字| 色欲久久99精品久久| 岛国激情视频在线观看| 日本一区二区电影网站| 这里只有97精品| 可以在线观看AV的网站| 91天天综合网,天天综合网| 久久久不卡| 91精品丝袜在线观看| 目产99999久久999| 绯色一区二区三区不卡少妇| 17c嫩草51久久91嫩草| 我爱大香蕉| 欧美综合网1| 100啪啪视频大全| 97超碰jingpin| 欧洲亚洲人妻无码久久三区四区| 五月婷网站| 亚洲人在线成线成人| 伊人网高清| 婷婷丁香成人| 亚洲日韩视频二区| 亚洲日本加勒比在线| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 国产av又色又爽又黄| 物尤视频一区二区| 国产精品午夜福利亚洲综合网| 亚洲人妻一区二区三区| 欧美天天综合网版| 99热综合| 久久久999国产精品| 中文字幕精品资源在线| 久草久日| aⅴ日韩成人电影av在线免费看av大全 | 啊啊啊在线观看| 亚洲国产精品乱码在线观看| 蜜桃久久一区二区| 九色97| 九色黄站| 91人人爽人人爽人人人,gav福利视频导航,日韩欧美亚洲国产字幕四区 | 亚洲日韩一区电影| 男人的天堂va在线| 午夜免费视频1000| 欧美99999| 久久久啊啊| 91夜色| 中文字幕加勒比海高清无码免费视频 | 人人干人人搞人人摸| 欧美激情亚洲情色| 国产日本久久免费精品| 超碰色美女| 久热无码| 神马久久久久| 麻豆一区二区三区精品| 成人三一级一片aaa| 色爽——AV| 91操人| 亚洲欧美校园| 99热精品在线| 日本熟妇浓毛hdsex| 好看的91视频| 美女一区二区国产精品| 欧美综色欧| 亚洲另类综合欧美| 青娱乐老司机视频| 骚熟女吞| 不卡免费av在线播放| 国产精品久久久久9999小说| 大胆91| 国产av强奸美女| 国产吹潮女在线观看| 99日韩| 亚洲 暴爽 AV人人爽日日碰| 亚洲少妇在线影音| 人人做人人妻人人夜视频| 乱人乱色一区二区三区免费| 农村妇女一级二级三级视频| 美女熟妇色| 欧美在线综合| 夜夜一区二区| 色哟哟综合| 在线电影亚洲色图| 天天色综合图片| 亚洲精品国产无码高清| 欧美日韩另类字幕中文| 亚洲另类综合欧美| 亚洲一级性爱视频免费看| 9.1小视频| 96久久科窝| 很黄很色的视频在线观看| 在线电影亚洲色图| 亚洲最大黄网| 久久精品色欧美aⅴ一区二区| 97精品免费| 97爱b| 免费视频无码| 亚洲色图欧美色图日韩色图| 精品免费囯产一区二区三区| 五十路二区在线| 美女操逼福利视频| 国产精品不卡av免费在线观看| 国产第11页| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | 91爱看| 国产精品亚洲免费| 国产AV色黄看到爽| 啊啊啊啊好多水| 裸体1区| 操狠狠| 人人摸人人干人人拍97| 精品人妻中文字幕高清| 亚洲日韩97| 男人天堂站| 人人扣人人操| 操逼天美3区| 欧美色青| 208天天久久九九九| 亚洲蜜臀懂色| 天天操天天插| 手机在线看片免费人成视频| 久久这里是精品| 国产精品白丝| 性欧美第一页| 日韩精品电影| 中文字幕少妇色| 99性爱| 欧美黄片欧美黄片xxx| 日韩熟女操逼| 淫荡网址| 91美女视频。| 天综合网欧美| 97色97好| 殴美牲| www久久99| 蜜乳AV一区二区三区四| 强奸乱伦免费网站| 蜜臀久久99精品久久久久| 色噜噜日韩精品| 国产第11页| 综合网亚| 午夜福利久久久噜久噜久久综合| 人妻熟女午夜精品在线| 国产女性无套 免费观看| 色就色综合| 人妻色偷色噜| 老妇女91| 91 丝袜在线播放| 欧美色图欧美| 久久禁| 高清不卡 中文 人妻| 一区,二区,三区视频| 欲色影视综合吧| 久久久久久久久久久久久9999| 精品视频久久久久九九九九9999| 色色五月婷| 成人短视频在线观看| 操屄不卡视频| 爆操无码| 日韩乱插| 欧美特大黄一级片片免费| 久操网线| 强奸乱伦av电影| 乱伦系列一区二区| 中文字幕aⅴ在线视频| AAAAAAAAA黄片| 国产精品久久99日日| 久久亚洲AV无码专区首页| 国产精品熟女九色九色蜜臀| 密乳AV免费观看| 亚洲国产尤物yw在线观看| 三级色综合| 中文字幕精品一区二区精| 户外裸露刺激视频第一区| 人人操,操人人| 成人免费在线网站| 中文字幕日本久久| 国产热RE99久久6国产精品首| 大香蕉黄色一区| 日本在线激情一区二区三区| 五月婷丁香| 天天日天天操心| 国产剧情一区在线观看| 亚洲情色电影网| 欧美熟妇视频| 欧美 青青草| 亚洲AO在线| 久久啊啊啊视频| 加勒比综合a∨| 97欧美色| AV女优男人的天堂| 97亚洲综合影院| 色哟哟综合| 大黄片做爱的大的| 精品区国产区一区二区三区| 91精品黄在线观看| 嗯嗯啊在线视频| 日韩二三区| 亚洲日韩少妇一道本视频| 蜜桃一区二区三区| 大香蕉日韩| 熟妇乱伦一区二区| 一级片在线观看高清无码| 97国产高清视频在线观看| 99精品热| 欧美亚洲第1页| 智利AV在线网| 欧美综合1性辶| 婷婷久久五月综合激情| 人人潮人人摸| 久久久久9999| 欧中日成人免费影视| 国产精品久久久999| 国产乱码久久久| 久久精品熟女亚洲AV麻豆软件| 国产隔壁老王影院在线| 色色色色网站| 狠狠中文字幕| 蜜臀AV成人精品蜜臀| 亚洲欧美综合图片| 久操91视频| 美中日韩无码| 丁香五月激情网| 超碰综合色| 深夜视频| 3028国产精品| 亚洲日韩AV视色| 亚洲欧美一区二区不卡视频播放| 精品一区二区2| 国产福利一区二| 国产亚洲色婷婷久久99精品91葵花宝典 | 精品国产污一区二区三区| 中文字幕视频免费| 夜夜躁狠狠躁日日躁av| 国产精品久久久久无码A√| www.久久| 黄色十八禁| 婷婷超| 国产懂色精品国产av| 欧美男女午夜啪啪| 欧美,亚洲,日韩,v,天堂,手机在线观看| 97久久超碰日韩精品| 亚洲小电影免费涩涩成人在线高清| 九九香蕉网| 日韩9999| 免费观看一区| 亚洲最新a在线观看| 日本裸体久久色噜噜| 肥佬影院91| 久久综合资源一区二区| 综合日本女人伊人| 久久久草草精品| 精品亚洲一区在线观看| 日本亚洲熟女视频| 手机久操欧美综合色码| 97国产人人| 日韩免费看黄片| 在线 亚洲 网爆 自拍| 99999国产| 一区二区三区视频国产免费| 婷婷综合在线观看| 亚洲人妻精品一区二区| 青草青草久热| 久久999久| 超碰九7| 久久精品国产亚洲AV嘿嘿| 日本少妇va7777| 亚洲第一视频 欧美风情 日韩| 亚洲另类小说卡通动漫| 俺去久久| 欲香欲色综合天天伊人| 国产欧美精选自拍一区| 久久久久久大| 中文字幕精品三级久久久| 99久久久久久亚洲精品不卡| 天综合网| 国产精选视频| 久久久婷婷婷| 天天综合网合集91| 色色色色日本| 大香蕉免| 天天日夜干| 懂色av色欲av蜜臀av| 欧美性色综合网| 夜夜骑夜夜操| 天天操夜夜操| 亚洲丝袜少妇在线| 中文字幕日本久久| 亚洲97网站| 欧美日韩在线国产在线| 九九九影院| 日韩Va亚洲va欧美Ⅴa久久| 麻豆影音天美视频| 欧美传媒| 青青草黑寡妇男人天堂| 天天看精品动漫视频一区| 亚洲成人一二三区| 午夜性生活av免费在线看| 天天日老熟妇| 亚州男人天堂| 97久久资源| 国产老太乱伦一区| 无码99| 国产毛片毛片4p懂色| 91色碰| 富女玩鸭子一级毛片| 麻豆黄四叶草网站| 翔田千里无码一区| 亚洲第一页欧美| 亚洲欧美高清无码| 亚洲一区二区三区麻豆传媒| 黄色激情电影在线观看| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 啊啊啊啊网站| 久久久影院| 国产偷人伦激情在线观看| 91暧暧| 日韩精品一区二区高清| 91天美传媒在线观看| 欧美成人AⅤ大片在线观看| 欧洲自拍色图gif在线| 国产成人手机视频激情| 91男同| 亚洲第一黄色av网站| 欧亚日本情色| av大香蕉| 久久精品人妻一区| 国产成自自拍在线观看| 东北少妇高潮zzzz| 96国产污污污丝袜| JIZZJIZZ国产精品喷水| 伊色久人大在线| 超碰久久性爱| 国产又黄又爽| 亚洲Av噜噜一区二区三区妖精| 免费伦费视频在线观看| 精品人妻一区二区蜜桃视频 | 久久久久久久国产a∨| 亚洲伊人青青草| 日韩AV片| 人人操 欧美| 男女性扦B| 欧美99| 精品人妻免费观看| 国产精品不卡一区二区三区| 91人妻Pr| 97在线公开视频| 十八禁网站在线| 免费观看性欧美一级| 亚洲清纯唯美| 精精夜夜| 园内精品自拍视频在线播放| 亚洲精品亚洲人成人网| 日本506070| 国产五码丝袜屁眼| 综合一区中亚洲国产成人综合精品 | 免费97视频| 色色色综合网| 国产午夜福利专区综合| 吊色| 亚洲、日韩、综合、另类| 亚欧无码在线| 亚洲人妻精品一区二区| 色av中文字幕| 亚洲欧美日韩综合在线尤物 | 欲香欲色| A啊啊在线观看| 欧美日韩91| 久久久久亚洲熟妇熟女| 九一国产精品| 爱爱动态120秒| 亚洲五码一区二区三区| 九九碰九九爱97超| 亚洲日韩欧美一区二区| 久久久无码国精品无码三区三区| 正在播放国产精品一区| 美女91在线| 欧美一级专区免费大片| 在线观看一卡二卡| 一区二区三区成人高清视频| 亚洲欧美综合网| 欧美夜夜骑视频| 懂色AV一区二区三区| 不卡一区二区日本视频| 超清中文乱码字幕| 欧美人人天天网| 99国内精品| 亚洲精品精品一区二区| 秋霞免费无码视频日韩A片| 国产日韩美女小穴视频网站不卡| 97在线观看免费视频l| 亚洲少妇喷视频看| 操高情无码| 亚洲欧洲av影音| 91色欧美| 欧美天天综合站| 天天综合网在线| 伊人成人中文字幕久久网| 五月婷婷丁香六月丁香| 97超碰欧美中文字幕| 中文字幕午夜精品久久久| 国产一级久久久| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | 丁香九月 婷婷| 亚洲人妻日日日| 欧美综合 站| 五月天色图| 日韩啪啪啪啪啪| 久久精视频美日韩在线视频| 日本 色 导航| 日韩一级久久毛片| 伊人操| 深喉吞精| 日韩中文9| av一区二区三区四区五区久草臀| 日韩99999色| 天天操夜夜操| 亚洲综合在线91| 欧美在线综合| 国产成人天堂| 亚洲av热热色| 中文乱码99| 日韩美脚一区二区网站| 亚洲激情综合| 爱做久久久久久| 中文自拍欧美影视| 家庭乱伦性爱av| 曰韩精品视频一区二区| 97精品一区二区视频| 天美传媒婬乱| 神马麻豆福利院| 欧色网址| 大香蕉中文网| 亚洲 日本 不卡| 国产9熟妇视频网站| 综合大香蕉美。| 色香综合天天影视综合 | 精品国产乱码久久久久久免费| 嫩草 我啊~嗯~在线| 操淫穴亚洲五月丁香 | 人妻中文在线| 爱我干综合| 自拍偷拍2025在线观看| 精品一二三区久久AAA片| 亚洲AV永久无码一区仙野| 一个人免费HD91视频| 黑人嘿嘿嘿超爽免费视频| 色噜噜精品一区二区三| 一级久久久久久久久久久 | 另类老少妇| 国产97色在线 | 亚洲| 精品少妇一区二区| 91情色在线| 国产9l 大屁股| 超碰97色| 69视频入口| 国产欧美日本亚洲精品| 人妻献身系列第54部| 国产理论视频在线播放| 国语国产操逼伊人AV网| 精品国产乱码久久久久久口爆网站| 久久国内| 亚洲 欧美 手机在线观看| 天美麻花大全视频| 日日爽夜夜爽| 婷婷色一区| 99啪啪| 96久久久精品| 深夜激情 | 可免费观看的av毛片中日美韩| 国产综合色精品在线观看| 色欲av国内精品久久久久久| 国产精品美女视频诱惑| 情趣丝袜无码操逼视频| 日韩国产欧美伦理在线| 国产 无码 一区二区| 综合色色网| 920日本午夜免费| 蜜臀精品1区2区| 日本999精品| 2020中文字幕在线| 97日亚洲欧美| 中英熟女操女| 人人操肉肉| 日本亚洲熟女视频| 啪啪91| 粉嫩AV一区夜夜嗨| 欧美性Fer办公室秘书| 97资源久久| 日韩操逼性鲍| 成人免费福利在线观看| 超碰免费在线| 91精品丝袜久久久久久无码人妻| 九九九九一级| 婷婷激情四射| 91成人高清在线观看| 国产真实野战在线视频| www.五月天| 亚洲Av噜噜一区二区三区妖精| 乱操9999| 大JI巴好深好爽又大又粗视频| 91东京热男人的天堂| 亚洲AV无码国产精品久久久久| 日韩有码免费视频| 97天天弄| 久久啊啊| 久久精品日韩| 91九色首页| 天天综合网1| 韩日欧亚a级| 国产福利视频精品视频| 日韩人妻无码专区| 91美乳| 日韩欧美久久婷婷网站| 91白嫩| 老熟女乱子伦中文字幕一区二区| 99色色| 96国产污污污丝袜| 中文乱码字幕观看| 无码黑人精品一区二区三区三| 久久久久久久人妻| 天天操天天日天天干| 干超碰碰熟女| 美女操逼福利视频| 欧美日韩国产在线| 国产精品久久久久久久免牛肉蒲团| 精品1区2区3区| 免费一级a毛片久久久久久鸭绿欲| 69精品少妇一区二区三区蜜桃| 高清肉丝中文无码| 亚洲情色综合| 国产精品久久久三级无码| 天天日日日射| 麻豆一区二区三区在线看| 亚洲免费在线探花| 天堂九九九九九九九九九| 无卡一区=区| 亚洲一区中文精品| 久久性爱城| 久久综合日韩亚洲欧美| 大香蕉99re| 午夜亚洲国产理论秋霞| 2020中文字幕| 91男人综合| 一二三区操逼国产91| 亚洲夜夜欢无码一区二区| 福利风月五月天影院| 日韩欧美三级| 欧美成人性爱视频免费观看| 综合久欧洲| 91精品人妻一区二区三区蜜桃| 国产九九九九九九九九| 久久久18禁| 少妇久久久久久| 综合色久| 综合大香蕉美。| 激情抓乳插进去啪啪啪日韩| 天天摸夜夜摸| 97精品在线视频| 中文久久爆乳| 99re在线精品78| 免费一级精品啪啪视频| 中文字幕国产精品1区| 日韩97在线| 日韩av在线播放不卡| 国产情色第一第二页在线观看| 成人无码在线超碰网| 人妻天天爽夜夜爽爽| 992视频一区| 色综合天天| 国产尤物在线三区| 333kkkk·亚洲com久久| 精品网站99999| 天天射天天操天天干天天吃2018| 五月婷婷综合网| 久久久免费视频18| 亚洲成人福利电影免费| 色网综合网| 色就色综合| 精品亚洲俞拍视频一区| 懂色中文一区二区三区| 免费农村成人少妇人妻Aa一区二区视频| 久一区久久蜜桃| 人妻少妇一区二区| 亚洲人久久久久日| 久久精品亚洲成a人天堂| wuyechaopeng| 国产性爱乱伦AV| 欧美72网页| 国产无码精品高清| 另类av天堂| 久久久亚洲Av| 绑缚麻绳人妻寝取完整版| 国产v片在线免费观看| 色诱avtt| 久热影视| 91久久堂| 日韩一级成人毛片免费观看 | 五月丁香大香蕉| 97久久超碰国产精品| 欧洲一级性爱视频在线观看| 日本97久久| 欧美十八禁在线看| 一二三区精品视频| 久久乐| 久久男人天堂| 丝袜综合| 婷婷去俺也去六月色| 四季AV综合网址| 欧美韩国你懂得在线| 久久久久久久久久久久久久久久9| 91精品久久久久五月天精品| 精品乱码久久久久| 黑人操一区二区| 无码人妻丰满熟妇区毛片| 国产成人精品亚洲日本| 夜夜爽夜夜高潮夜夜爽| 久无码| 久久东京热久久| 精品人妻夜夜草|