久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码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
返回資訊列表
男人的天堂在线2| ..日韩av毛片精品久久久| 国产美女口爆吞精视频| 国产精品探花色| 国产偷人伦激情在线观看| a v网站在线播放| 综合婷婷| www.91视频网| 伊人色综合网电影| 欧洲亚洲综合| 人人操人人大香蕉| 亚洲蜜臀视频精品久久| 天天操夜夜操狠很操| 精品丰满人妻一区二区三区免费观| 夜色97| 久久久久久久人妻丝袜| 9999伦理视频| 天天综合网~91| 操一区| 国产高清在线自在拍69| 欧美日本中字另类在线| 伊人久久亚洲中文字幕不卡| 两性色网| 国产精品午夜精品| 免费久久精品麻豆一区二区av| 亚洲熟女乱综合一区二区三区 | 国产福利电影| 四虎视频在线观看| 亚洲精品97| 久久久久久久久成人av解说| 精品久久九| 亚洲影院无码在线| 久久嫩草国产成人一区| 色综合V| 综合国产97| 91美女网站| 婷婷五月天影院| 人人妻人人色一区二区三区| 九九久久精品| 97视频在线免费观看| 6080yy午夜理论三级一区二区三区无码| www欧美91| 国产一区二区视频在线播放| 性色AV网站| 欧美美女自慰一区二区三区| 久草尤物| 狠肏骚人妻| 精品人妻一区二区三区免费视频| 东亚亚洲无码高清| 狠狠色五月亚洲91| 亚洲色天堂日韩中| 天天色天天干天天射| 好舒服视频| 欧美少妇性爱网站| 波多野结衣之双飞调教在线播放 | 一区在线国产播放| av激情亚洲五月天| 久久久111| 无码人妻精品一区二区中文| 日韩91网| wwe 天天干.com| 日本性交操一区二区不卡系列| 亚91亚洲网| 18禁美女裸体无遮挡啪啪| 蜜乳av一区二区三区| 日韩激情啪啪啪| 99精品人人爽| 日韩三级视频一区二区三区| 欧美亚洲在线| 欧美自拍偷拍综合图片| 99re黄| 日韩另类色图| 国产Aα| 南澳成人一级片在线播放| 亚洲s在线观看| 久久精品99| 神马福利久草| 水澄无码AV| www.99中文字幕| 妇女一区二区三区| 久久6热精品99视频| 三级精品三级在线观看| 丝袜美腿操av| 天天搞欧美| 激情99| 中文字幕交换人妻| 日韩操逼性鲍| 97超碰影音| 九九成人视频| a v网站在线播放| 中国AAAAAA黄色片| 日比av无码| 中文字幕人乱码中文字的预防方法 | 91欧美www| 亚洲综合伊人| 97视频网站在线观看| 久久综合资源一区二区| 久久岛国| 老鸭窝日丰县女人| 欧洲自拍色图gif在线| 久久精品欧美一区蜜桃| 99精品视频在线观看免费| 97久久久久| 91精品国久久久久久无码| 色综合一区二区三巨| 欧美网站免费| 岛国片国产成人亚洲播放| 91亚洲色图| 欧美在线电影| 青草精品视频日本久久久久网站在线| 9久9久| 亚州国产成人精品女人久久| 国产美脚女优尤物在线观看| 欧美有码亚洲中文字幕一区二区三区四区| 亚洲天堂,男人| 成人5码视频| 一区AV| AV中文字幕三四五| 中文字幕欧洲有码| 日本一线产区和二线产区伦理片| 97超碰伊人| 中文字幕av一区二区三区人妻少妇| m欧洲一级午老| 日韩欧美丝袜诱惑| 97日视频| 热久久国产精品视频大陆精品| 97精品国产97久久久久久| www.亚洲黄色| 国产极品美女高潮无套在线观看| 免费的很黄很污的全部视频| 亚洲高清国产理伦片| 四虎在线视频| 小说区 图片区色 综合区| 97操B| 偷拍亚洲情色| 久久系列| 国产精品4p在线观看| 一区二区影视| 国产亚洲精品久久久久小| 亚洲福利影院一区久久| 国产精品美女久久久久AⅤ国产馆| 性色av大全| 亚洲成人免费中文字幕| 欧美性爱视频免费一区一A| 日本成人免费一区二区三区| 久久毛卡| 91狠狠综合久久久久久| 国产美女91视频| 黄色不卡视频| 丰满人妻-区二区三区免费看| 亚洲 在线| 97se亚洲综合自| 狠狠爱综合网| 1级午夜影院费免区| 日韩 欧美 另类 人妻| 99色日| 精彩久久中文| 国产熟妇 码视频户外直播| 四虎国产精品永久地址入口| 欧美日本中字另类在线| 一品道视频一区二区三区| 啊啊啊好湿久久| 色综合20p| 伊人超碰97| 国产精品视频91久久| 国产精品嫩草影院免费| 人、人、摸,人、人、草| 熟妇在线视频一区二区| 五十路二区在线| 亚洲限制级| 欧美亚洲激情一二三| 亚洲日本天堂| 亚洲影院成人| 五月丁香成人网| 色婷婷综合久久久久中文一区二区| 青青草一区二区三区四| A级在线视频| hd成人一区二区在线| 手机不卡视频不卡在线一二三区| 久久机热| 欧美的性爱网站免费| 天天做日日爱夜夜爽| 欧美色图亚洲色图成人在在线| 蜜桃一区二区三区| 26uuu最新| 大香蕉一线视频| 亚洲一区二区三区麻豆传媒| 日韩亚洲欧美中文字幕| 男男H黄动漫啪啪无遮挡网站| 老熟女熟妇| 久久久亚洲精品中文字幕人妻| 日本操逼无码| 男人高清无码一区二区| 91丝袜激情在线| 91美女片在线| 手机看片1025| 欧美日韩小说| 久久久久国产精品片区无码直播| 91国产大片| 四季av一区二区凹凸精品小说| 强奸乱伦免费网站| 青青草在线视频欧美| 91丝袜在线观看| 久久九九网| 亚洲欧美91√| 亚洲一区二区中文字幕| 97操在线| 成人性爱免费播放| 伊人久久久日韩一区| 97亚洲精品| 亚码激情| 伊人操| 91丨九色丨东北熟女| 四虎影视永久在线观看精品免费网站| 中文字幕中文字幕一区二区| 婷婷15月天青娱乐| 二男一女成人A片| 欧美天天综| 成人av性爱电影在线观看| 人妻天天操天天爽视频免费| 亚洲中文字幕在现观看| 99操| 日本男人天堂| 精品一区二区三区蜜桃臀赵总| 性色高清..……| 国产呦精品一区二区三区下载 | 乱伦色图网址是多少| 久久久国产精品人妻丝袜| 欧美91精品国产自产| 女色视频社区| 人人爱人人乐人人操| 躁躁日曰躁2020| 99精品久久久久久| 超碰在线日韩一区| 欧美精品久久96人妻无码| 青娱乐久久艹| 日韩人成网站在线播放| 2019天天操天天爽天天拍| 九九九九国产| 亚洲 se图 欧美电影| 中文字幕在线免费观看视频| 男人的天堂在线| 强奸乱伦Av网| 日本色日夜干| 夜夜高潮夜夜爽国产伦精品| 伊人五月天婷婷| 密桃99999| 玖草在线视频| 亚洲精品97p| 欧美中字二区| 人人色人人射人人妻| 亚洲h片在线免费观看| 你操综合| 久久精品国产亚洲AV嘿嘿| 欧亚综合一卡二卡中文字幕| 少妇 综合| 97色色国产视频| 2019久久久久久久久福利| 欧洲一级性爱视频在线观看| 欧美精品亚洲精品日韩传电影| 综合啪啪| 牛牛AV人人夜夜澡人人爽| 色超碰综合| 人人天天欧洲| 亚洲阿v天堂无码z2018| 亚洲欧美高清| 九九九九九九免费视频| 久久的网站啊啊啊啊啊| 国模私拍一区二区三区神乳| 亚洲中文字幕一区二区| 激情欧美日韩女同久久| 二男一女成人A片| 精品国产99999| 九九九九免费高| 色激情五月天| 亚洲色久| 亚洲中文国际强奸字幕| 成人午夜高潮av猛片| 91老女人| 久久精品国产72国产精品福利 | 日本506070| 97在线资源| 欧美日韩国产中文超碰| 思思热免费视频观看| 一级性爱视频免费观看| 老熟妇91| 老熟女综合网| 亚洲美女高潮喷水视频| 中文字幕乱偷人妻久久艾草网| 婷婷色一区| 在线有码中文字幕| 一级做a爰片性色毛片久久| 3P丝袜熟女 色综合| m欧洲一级午老| 人人妻人人操人人乐| 色情婷婷| 欧美久热| 欧美天天插| 色情五月丁香| 开心激情站| 婷婷久久久| 99老司机精品视频在线观看| 91av熟女人妻| 亚洲中字幕日本一区二区三区| 亚洲色婷婷综合久久一区二区三区| 久久成人午夜狠狠| 久久久久久久久国产| 伊人精品国产| 国产天美传媒精品| 亚洲九九爱| 久久久免费懂色| 欧美线天码中字| 欧美天天综合站| 欧美韩国你懂得在线| 男人干美女| 爱干爱射网啊啊啊| 91av天美性媒精品视频| 东京热一区二区三区四区五区六区| 色妹子A V| 国精品一区二区三| 天天操av懂色| 亚洲永久永久永久永久一级一级一级精品 | 蜜臀久久精品久久久久视频| 久久亚洲天堂| 精品人妻15区| 大肥女高潮bbwbbwhd视频| 97天天日| 国产女人和拘做爰视频| 新婚人妻扶着粗大强行坐下| 密乳AV免费观看| 国产一区在线观看无码AV| 无码人妻精品一区二区中文| 色五月首页| 99视频只有精品| 夜夜操老骚逼视频网站| 东京热熟女亚洲视频网站| 亚洲女人毛茸茸91| 色婷婷国产精品一区在线观看| 中文字幕在线免费观看2| 日韩黄色av中文字幕| www.国产高潮精品| AV色天香在线| 精品无人区麻豆乱码久久久| 四虎免费视频| 91丨人妻丨国产丨丝袜| 午夜福利免费福利视频| 精品少妇一区二区三区在线视频| 欧美色66| 精品人妻一区二区三区在线视频不卡| 操逼日批| 99色天堂| 九9精品| 国产精品视频在线观看| 亚洲欧洲精品视频发布| 精品精品精品| 久久人妻一区二区三区高清| 国产精品午夜福利亚洲综合网| 成人a v在线播放免费| av天堂手机版追回| 97干色天堂| 国产精品对白自产拍| 插入逼91| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | 人人操超碰在线| 日本视频在线中文字幕| 五月天社区| 性老妇一区二区三区| 97色综合中文网| 久久久久久日韩| 91久久精品国产| 99久在线精品99re8| 天堂v无码免费视频| 欧美性爱五月天| 亚洲欧美日产国产91毛片| 中日韓欧美高清| 国产大学生口爆吞精合集| 嗯啊免费视频| 欧美色女人| 9久久精品| 国产亚洲精品美女| 又大又长又粗又爽又黄| 顶级少妇BT天堂| 中文字幕精品码亚洲| 久久久久久精品免费看A级| 大香蕉在线免| 久久久97| 综合在线导航一区| 欧洲自拍色图gif在线| 97爱| 欧美人妻精品| 久久这里只| 久久久久人妻| 一卡二卡三卡| 99性爱视频| 狠狠色五月亚洲91| 亚州国产精品乱| 少好三P| 天天干夜夜操网| 校园春色五月天| 久久精品一区二区三区蜜桃臀| 内射夫妻三片| 少妇高潮99p| 五月天久久人妻| 日本在线播放不卡一区| 亚洲色天堂九9| 日日夜夜精品视频| 67914在线兔费成人视频| 日日干日日摸| 亚洲有码 视频一区| 这里只有97精品| 在线不卡视频| 91色拍| 玖玖综合色| 九九热男人天堂| 夜夜爽77777| 亚洲激情视频| 亚洲综合小视频小说在线观看| 精品人妻一区二区视频| 免费成人在线熟妇网| 综合免费无码中文| 国产一区二区在线看| 东京日日夜夜| 麻豆国产原创AV色哟哟| 熟妇一区二区| xxx亚洲午夜天堂| 69精品在线| 五月天色色色| 久久精品店| 麻豆久久久久久久久丝袜 | 91亚洲人电影| 影音先锋新男人| 强奸熟女一区二区三区| 五月丁香婷婷色| 精品九九九| 九九九九欧美| 4399成人黄A片| 国产午夜在线观看| 一区二区亚州激情久婷婷欧美| 成人午夜无码视频| 国产成年女黄特黄| 老熟女天天操| 色诱中文字幕| 婷婷五月丁香五月| 日韩熟女操逼| 国产少妇内射| 91精品国久久久久久无码| 亚欧性爱在线无码| 999亚洲国产视频| 啊啊啊好大好深| 中国黑人三级片网站上区| 日韩亚洲Av人人夜夜澡人人爽| 日本一区不卡| www.acm成人黄色毛片| 国产女上位好爽在线| 日韩色| 人妻夜夜爽天天爽三区麻豆AV网站| 久久久婷| 久久久影院| 图片区小说区| 久久毛卡| 亚洲国产成人7777| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 男啪女色黄无遮挡免费观看| 欧美综合色站| 欧亚免费视频| 午夜啪| 青青操日韩| 四虎视频在线观看| 盗摄 精品 另类 一区| 国产精品黄色三级av| 少妇高潮一区二区三区在线| 91九九九逼| 男人天堂一区二区| 色一色综合网| www.91理论| 欧美男人天堂| 99re欧美| 日本五区不卡| 91久久久老司机| 伊人综合色网| 天天综合网站| 亚洲综合在线视频| 国产又粗又长又爽又色| 久9re热视频这里只有精品| 日本 情色 1区2区3区| 九X超碰| 人妻天堂综合网| 久久九色| 日韩激情中文字幕有码| 丁香六月激情| 高清无码一区二区三区| 人人操我人人干| 亚洲综合电影| 精品视频一区二区| 久久男人的天堂| 插入粉嫩少妇视频| 极品少妇99| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 黑白配性爱AV成| 亚洲精品不卡一二三区| 亚洲AV无码久久精品蜜桃小说| 亚洲AV免费在线观看| 精品久久久久久亚洲| 欧美精品99久久久**| 人妻精品综合中文字幕在线| 欧美色图亚洲特色| 欧成人在线| 亚洲欧美变态| 新97国产超碰| 亚洲天堂日本| 日韩图区| 久久精品中文字幕女同| 9久久美女首页| 韩国三级三级BD在线| 自拍盗摄一区| 天天干天天日天天射黄色片| 精品一区二区三区四区外站| 国产精彩女在线观看视频| 动漫av中文| 亚洲999综合| 乱色老一区二区三区的观看方式| 久久久免费视频18| 揉揉揉夜夜| 中文字幕乱码在线| 欧美福利视频啊啊啊啊| 成人av在线播放| 极品综合| 91人人臊| 麻豆久久视频在线地址| 大香蕉在线视频重口味毛片在线| 91成人久久| 噜噜噜噜天天狠狠| 青娱乐淫乱1314| 国产精品一区av在线| 亚洲无线观看久久| 巨爆乳一区二区爆乳区| 午夜黄色免费在线观看| 亚洲一区二区三区久久 亚洲一区二区| 看一级黄色视频| 91国产精品在线看| 亚洲AV无码久久精品蜜桃小说| 久久九操在线观看| 欧姜老司机| 久久丁香久草综合网| 在线可观看的黄色网址| 太久视频| 97久精品| 亚洲www91| 亚州色图欧美| 成人国产二区三区在线,男女精品。| 婷婷超| 一本色道综合久久欧美| 亚洲欧美日韩综合在线尤物| 韩国轻伦国内自拍一区| 色欧美色交综合| 好吊色综合| 久久亚洲AV无码专区国产精品| 久热这里| 久久精品中文字幕女同| 偷拍亚洲情色| 久久五月天婷婷丁香中文字幕| 六月色婷婷| 美骚妇av高清在线| 国产v片在线免费观看| 免费看黄片现成| 亚洲欧洲另类| 一本久久精品中文字| 欧美 色 亚洲| 国产精品蜜乳AV| 高树玛利亚无码流出| 性感美女91影视| 偷拍亚洲熟女视频播放| 久9久| 99日免费视频中文字幕| 99国产在线 精品 视频| 超碰 另类 欧美 | 青青草玖玖爱| 激情小说在线视频| 亚洲综合另类| 欧美综色欧| 欧美亚洲尤物久久| 欧美白嫩女HD| 欧美大波激情xxxx| ,国产乱人伦精品一区二区三区| 99精品综合久久久久五月天| www..com操老师| caopeng97人妻| 一区超碰一区| 色在线亚洲视频www| 国产SV一线| 国产精品高潮久久久无码| 色播五月丁香| 日本韩国五十路六十路七十路老熟女作爱视频网站 | 人人操人人狠狠操| 97国产精选| 2019天天干天天操| 久久宗合亚洲| 日操粉逼逼| 99热日| 国产一级作爱毛片| 综合网亚洲在线| 九九色热| 五月天亚洲色图| 国产按摩一区二区三区| 成人怡红院| 黄色大片一区二区密桃丝袜| a啊啊啊啊啊啊啊啊一区二区| 亚洲欧美激情在线视频| 97伊人| 天天摸,夜夜摸| 青青在线视频免费| 五月丁香六月婷| 青青草中文字幕| 国产后入精品| 清纯唯美亚洲综合| 色狠狠综合噜一二三区| 亚洲熟女乱色一区二区三区| 一区二区不卡| 天堂种子在线www网资源| 99在线精品观看视频中文| 在线视频日韩欧美国产| 成人青青草原伊人| 快点操死我| 乱伦a片视频| 蜜臀无码一区二区| 亚洲精品99| 日韩啊V| 操逼999| 国产一区二区成人av在线播放| 亚洲大胆人体av| 日本一级性爱| 国产精品久久久吖| 色悠久久久av| 天天操av懂色| 蜜臀久久99精品久久久| 久久久婷婷| 日本久久天堂| 影音先锋每日最新资源在线观看 | 欧美日韩不卡a片| 久久日韩肥臀| 中文字幕人妻色偷偷久久皮 | 亚洲AV不卡在线观看尤物| 婷婷五月天激情网| 国产又黄又粗的视频| 死我十八禁| 国产久久久9999| 久久性爱免费送| 国产强奸乱伦欧美| 欧美啪啪天堂| 狠狠狠一区二区三区| 久久久免费的精品| 超碰免费97| 色原狠狠天天天| 97色欧州| 日韩一999精品| 91精品亚洲内射孕妇| 亚洲成人妻日韩在线| 五月天婷婷色| 人妻中文字幕日韩电影| 四方色播| 97热视频在线观看| 色九月综合| 欧美亚洲综合色| 欧美性爱第一区| 成人精品无码| 国语精品av| 久噜噜| 人人澡人人爽人人精品| 免费AV播放| 亚洲精品中文字幕一区在线视频| www.亚洲黄色| 深喉吞精| 亚洲精品国产熟女久久久| 国产欧美日韩臀| 97超碰美国| 中文字幕 码 自拍 视频 区| 乱伦3P视频| 久久青青草原免费视频| 丰满人妻-区二区三区免费看| 亚洲图片欧美另类综合免费视频大大香| 观看免费区二区三区二| 日日夜夜狠狠| 91色久| 国产伦乱91| 在线观看色视频| 成人a大片在线观看| 国产综合色精品在线观看| 欧洲视频在线| 国内一级精品| 啊啊啊啊免费视频| 日日夜夜国产综合| 超碰97最新人妻| 国产熟女精品区| 青青草视频导航官网| 国产精品九9| 超碰97爽| 激情看片网站| 人人扣人人操| 97在线视频观看| 成功精品影院| 2011国产精品| 欧美日韩99| 中文字幕第页| 天天看少妇| 99r九九| 欧美性爱一内片一区二区三区| 成 人 影视 一区 二区 三区 四区 | 操狠狠| 日韩伦理视频| 97WW精品| 99999精品成人| 神马久久久久久久久久久久| www.91欧美| 加勒比综合a∨| 日韩欧美麻豆| 五月亭亭六月丁香| 一本色道久久天天射天天干| 老司机天天操| 夜夜影视四色| 久久五月综合| 久久女人视频| 亚洲揄拍网| 骚妻少妇精品性色无码四色A V| 欧美日韩亚洲少妇寂寞影院正在播放| 蜜臀久久99精品久久久久久成人小说 | 后入综合久久| 中文字幕乱码在线| 亚洲久久久| 亚洲AV无码乱码| 无码最新| 99热只有| 伊人久久大香蕉线AV五月天| 韩日自拍| 老熟女阿 国产91| 中文字幕国产在线天堂| 性在久久久久久| 五月丁香婷婷色| 亚洲 图片 欧美 色图| 亚洲人妻久久久| 91在线免费精品视频| 成年人黄色小视频网站| 狠狠干,狠狠操| 色婷婷婷五月天激情四射| 欧美大干日韩| 色吧91| 亚洲天堂7777| 殴美,日韩国产伦精品| 久久大陆| 丁香九月婷婷| 久草视频分类在线| 99精品网站| 99re黄| 欧美日韩色综合网| 亚洲综合小说另类图欧美视频激情小说色五月天 | 亚欧日韩成人| 啪啪啪大香蕉| 国产精品密臀网在线观看| 97在线公开视频| 思思热在线视频在线| 可以免费观看的AV| 夜夜免费视频| 成人怡红院| 视频分类 国内精品| 欧美精品第四五页中文字幕在线观看| 欧美 亚洲 在线| 色色色天美视频| 久久久穴999| 上特色A在线| 成人福利视频网| 操一区| 少妇被c 黄 免费观看| 亚洲精品久久久久久久蜜桃臀| 禁止观看美女黄| 欧美色图另类图片| 懂色天天爱天天日天天射天天澡| 日韩美女久久一区二区三区| 欧洲综合色| 国产精品视频白浆免费| 欧美97日韩精品| 啊啊啊男女| 人人摸人人干人人拍97| 国产白领连续中出在线播放| 沈阳熟女高潮对白视频| 久久久久久AⅤ无码免费肉站| 男人的天堂色偷偷青青草视频婷婷网| 久久久无码视频| 亚洲夜夜欢无码一区二区 | 中国女人内射6XXXXX| 神马久久久久久久久久久久| 影音先锋每日最新资源在线观看| 旡码电影特区| 色图综合| av中文字幕在线熟女| 精品久久97| 激情久久久| 一区二区三区一亚洲中文字幕、综合区灬 | 欧美性爱中文字幕无线码| 69视频福利导航| 欧洲黄色网| 精品四五区| 操国产逼| 你草精品在线视频| 在线综合 亚洲 欧美中文字幕| 日本三级小说中文字幕| 亚洲网站一区二区在线| 亚洲中文字幕97久久精品少妇| 久久精品无码一区二区三区| 99热色精品| 美女91| 亚洲人妻一区二区三区| 97碰碰色| 嗯嗯嗯嗯啊啊啊好紧好大| 91人妻少妇| 综合国产97| 一级黄色视频网| 日本最新1区2区3区| 国产福利影视| 欧美图片校园春色| 久操黄色视频| 熟妇xxxxx性春色| 夜夜操一区二区| 免费看日产一区二区三区| 91亚洲黄色网| 日本3级一区二区免费| 熟女人妻精品一区二区视频| 国产欧美一区二区| 黄色大片免费在线| 超碰日韩美妻| 欧美日韩性爱电影在线| 2019亚洲男人天堂| 人人爱人人操人人性| 97视频一区| 狠狠久久四虎| 韩国一级婬片A片无码天美 | 搡老熟女老女人老熟妇免费视频| 欧美在线视频播放| 人妻天天操天天爽视频免费| 91精品微拍福利| 91日日夜夜| 人夜夜精品网站香蕉嫩草| 日韩中文字幕国产| 亚洲资源吧| 岛国AV一区二区电影| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 亚洲AO在线| 国产成人精品无码久久| 久草看看看| 女人一区| 五月婷婷影院| 三级AV入口| 成人三级片一区二区三区视频| 色婷婷综合久久久久中文一区二区| 做爱A级亚欧| 久久精品黄色| 精彩久久中文| 99 国产丝袜在线| 丁香五月天社区| 超碰在线香蕉| 色欧洲| 99re6国产精品99re| 色妹子A V| 国产99久久99热这里只有精品15| 欧亚日韩一区在线| 蜜臀无码一区二区| 久久大香蕉手机高清| 熟女色综合久久| 日韩免费a级毛片无码a∨ | 屌色在线97视频| 黄骗免费| 日韩精品在线放| 亚洲人妻爽爽爽| 97资源站久久| 久操影视| 亚洲另类久操网| 十八禁视频网站| 国产无码精品成人| 欧美色图亚洲激情| 国产三级中文字幕粉嫩| 99只有精品| 精品网站9999| 丁香五月AV| 97操操| 5278欧美一区二区三区| 久久综合国产精品国产| 又粗又长又大国产不卡| 超碰超碰超碰超碰的大鸡吧操黑丝袜 | 人人操人人狠狠操| 国产欧美日韩一区二区三区| 成人羞羞视频国产| 人妻少妇久久| 一区二区三区四区五区高清无码永久视频| 亚洲一区二区三区播放在线| 国产家庭乱伦表演| 亚洲欧美电影| 免费视频一二三区| 色悠悠伊人网五月天| 欧美后入视频| 99xav| 亚洲黄a三级三级三级看三级| 91骚妇| 成人色女网| 亚洲精品国产AV天美传媒| 欧美亚洲一区二区久久久婷精品大包诱| 色噜噜综合在线| 日日操天天操| 五月天婷婷成人网| 天天综合,91综合永久| 丁香五月天激情网站| 狠狠色噜噜狠狠狠狠狠色综合久久| 又大又长又粗又爽又黄| 午夜福利无毒不卡| 新久久AV| 国产网红精品| 国产美女mm131爽爽爽爽| 人妻少妇被猛烈进入中| av绯色| 亚洲 欧美 手机在线观看| 欧美系列在线一区二区| 欧美黄色大片在线观看 | 97色网| 日韩有码 一区二区三区| 蜜乳视频网站| 国产精品久久99日日| 福利伊人玖玖国产| 去干网最新版| 校园春色 男人天堂| 少妇无码太爽| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 久久久日本电影| 久久久久久久精| 人人操人人干xxx| 欧美日韩免费性爱| 国产一区二区视频在线播放| 婷婷啪啪| 色九九九| 久草久日| 欧美人妻一区二区| 日韩精品啪啪啪| 2017天天插| 四虎国产精品永久入口| 性在久久久久久| 日韩午夜精品一区二区三区电影| 狠狠色噜噜狠狠狠狠狠色综合久久| 久久99精品视频| 大奶啊啊好爽| 青青操在线亚洲视频观看欧美在线| 欧美综合加勒比在线| 天天拍天| 91老熟女视频| 亚洲一级性爱视频免费看| 操逼啊啊啊91| 午夜免费视频1000| 加勒比日本在线| 欧美色图20P| 大黄片做爱的大的| 九九无码| 中文字幕AV片| 国产三级片在线观看| 欧美东京热精品A∨| 嗯啊免费视频| 嗯嗯啊啊的视频| 国产1024在线播放| 99热成人| 吉田爱美AV在线| 欧美色91| 成人性爱视频在线看| 久操大香蕉手机视频在线看 | 97se综合| 2017av无码免费无线播| 777奇米影视777四色| 欧美综合色站| 国产农村妇女精品| 人成午夜免费大片| 久久精品72| 欧美草草| 亚洲天堂AV在线播放| 色女女女导航| 丝袜美腿91| 日本国产欧美高清在线| 丝袜喷水在线| 亚洲狠| 国产小黄片在线免费观看| 一区二区三区蜜桃成人撸久久东京热 | 黄色片一区二区三区四区五区| 一区二区三区激情在线观看| 伊人丝袜美腿高跟在线观看高清| 热99这里有精品综合久久 | 国产午夜激片Av毛片不卡| 日韩av熟女一区二区三区成人| 97超碰影音| 手机在线中文字幕国产| 精品176精品2| 超碰在线人妻中文字幕| 一道本久久棕合爱| www.人人摸在线视频| 国产av美女被艹的乱叫| 久久日本熟女精品一区| 国产精品黑人一区二区三区| 99视频自拍| 色天天野狼综合社区| 人人操人人操人人操人人操人人操人人人11.CM | 日韩超碰精品综合| 少妇被c 黄 免费观看| 99色在线| a啊啊啊啊啊啊啊啊一区二区| 美女一区二区国产精品| 91嫩草在线| 日韩乱伦影音先锋| 91国产美女丝袜足交精品视频| 99婷婷一区二区| 久久综合18p| 91bbb| 99久久这里只有精品| 欧美激情区| 丁香五月婷婷色| 综合色区偷拍| 亚洲激情综合| 91美女小视频| www鬼畜国产男人的天堂| 精品传媒在线一区| 激情五月综合| 97色网| 日韩精品人妻系列无码天堂| 一起草三级AV电影在线观看| yirendaxiangjiashipin| 偷拍 欧美 日韩| 99热免费精品| 欧美高清无码免费视频高清版| 330Dv国产女人终合视频极品人与兽| Sekablack无码一区| 婷婷另类小说| 日本色色色视频| yazhouzaixian| 欧美色色色| 久久久久国色αv免费观看| 懂色AV一区二区三区| 天天看天天日| 污污污8888| 久99视频| 九九九九精品| 亚洲区限制级| 成人福利视频网| 欧亚三区动漫| 日韩中字av一区| TS人妖另类精品视频系列| 最新av在线| 超碰人人干| www.人人摸在线视频| 日韩一区二区熟女| 午夜爽爽爽在线观看永久入口姬片| 精品9999| 久久熟女人| 日韩乱伦AⅤ| 久久久久久久久久久精| 97精品国产97久久久| 国内毛片国产欧美拍| 国产AV天美| 岛国视频一二三区| 亚洲色婷婷综合久久久久中文| 91亚洲黑人| 天天综合网日韩7799| 一二三卡欧美日韩人妻免费精品| 91操人| 午夜视频久久久久一区| 夜夜春夜夜操| 久久国产精品,久久国产| 免费伦费视频在线观看| 九九热精品视频六| 97人亚洲综合字幕| 亚洲图片偷拍视频区| 伊人超碰97| 东北操逼| 欧美久久草熟女| 久久精品国产亚洲AV片多多| 天天日天天干少妇日| 亚热日本熟女| 91人妻爽爽人人做人人澡| 再深点灬舒服灬太大了添视频 | 久久久久一本一区二区青青蜜月| 久久精品国产亚洲AV片多多| 青操影院| 东北女人的毛片| 五月天激情小说网| 亚洲日韩美国人妻| 中文字幕高清精品一区| 欧美色91| 午夜福利在线合集| 久久少妇视频| 人人操av| 日本熟妇人妻中出视频| 狠狠操官网| 97亚洲综合影院| 成人久久精品| 国产精品网站免费| 99热精品在线观看| 亞洲久久直播| 超碰色大香蕉| 97 国产一区| 欧美熟女少妇| 国产精品一区二区黄片| 午夜啪啪片| 立川理惠被中出无码| 亚洲97精品| 亚洲色婷婷综合久久一区二区三区| 亚洲一区二区 麻豆传媒| 男人的天堂2018.| 最新欧美色网| 久热久| 亚洲欧美国产日本一区二区三区| 操逼不卡中文字幕| 国产日韩色综合| AV麻豆免费一区| 国产精品九九九| 91中文字幕在线观看| 午夜精品人妻二区三区| 日韩人妻精品中文字幕| 粉嫩国产精品久久粉嫩| 91狠狠色丁香婷婷综合久久精品| 国产强上视频在线观看| 久久久久97| 老司机福利青青草| 啊啊啊在线观看| 亚洲天天更新| 精品国产乱码久久久| julia国产在线| JuliaAnnXXX888| 国产精品久久久久9999小说| 亚洲欧美内射| 天天久久久久久| 蜜臀Av一区二区三区| 噜噜噜噜天天狠狠| 欧美偷拍区| 天天色播| 日韩啪啪啪啪啪| 91天美传媒在线观看| 天天干夜夜鈤| 91精品微拍福利| 九九热免费视频| 欧美论理片| 久久亚洲中文字幕视频| 天天插天天操| 97精品97| 色欲Av人妻精品一区二| 日本色婷婷| 蜜桃丰满熟妇av无码区不卡| 国产综合色精品在线观看| 日亚韩精品视频二区三| 亚洲色悠悠久久88| 牛牛操视频逼| 日韩99999色| 熟女熟妇一区二区三四区| 日韩精品免费高清视频在线| 99热这里只有精品99| 久久人妇| 久久久久久久伊人精品| 97超碰69| 人妻久久一区二区三区 | 日韩熟女精品无码专区一区二区| 欧美夜夜骑视频| 黄色人人|