国产无遮挡裸体免费直播视频,久久精品国产蜜臀av,动漫在线视频一区二区,欧亚日韩一区二区三区,久艹在线 免费视频,国产精品美女网站免费,正在播放 97超级视频在线观看,斗破苍穹年番在线观看免费,51最新乱码中文字幕

一文帶你了解threejs在vue項目中的基本使用

 更新時間:2023年04月14日 10:10:03   作者:我是ed.  
three.js是一個用于在Web上創(chuàng)建三維圖形的JavaScript庫,它可以用于創(chuàng)建各種類型的三維場景,包括游戲、虛擬現(xiàn)實、建筑和產(chǎn)品可視化等,下面這篇文章主要給大家介紹了關(guān)于如何通過一文帶你了解threejs在vue項目中的基本使用,需要的朋友可以參考下

Three.js 是一個跨瀏覽器的腳本,使用 JavaScript 函數(shù)庫或 API 來在網(wǎng)頁瀏覽器中創(chuàng)建和展示動畫的三維計算機(jī)圖形。為啥突然想寫這么一篇文章的主要原因其實是前幾天有個人需要我?guī)兔懸粋€簡單的 demo,花了幾個小時之后覺得基本上 threejs 基本的使用效果都實現(xiàn)了,之前就看過 threejs 的東西,但是一直沒有時間靜下心來整理匯總一下,所以說呢,今天時間比較充足,就稍微的記錄一下。當(dāng)然了,我也沒有深入的學(xué)習(xí)使用,學(xué)習(xí)的時間很短,所以說也談不上經(jīng)驗的分享,就算是一個簡單的學(xué)習(xí)記錄吧,淺看則以,切勿盡信。

其實相對來說 threejs 的學(xué)習(xí)成本比較高的,需要掌握的知識相對來說會稍微雜一些,但是簡單的入門倒是很簡單,現(xiàn)在網(wǎng)上的資料還是很多的,無論是博客還是視頻都是比較充足的,然后接下來的博文內(nèi)容,就簡單的介紹一些在 vue2 項目中 threejs 的基本使用。

threejs 介紹

threejs 是運行在瀏覽器中的 3D 引擎,是JavaScript編寫的WebGL第三方庫。提供了非常多的3D顯示功能。開發(fā)者可以用它創(chuàng)建各種三維場景,包括了攝影機(jī)、光影、材質(zhì)等各種對象??梢栽谒闹黜撋峡吹皆S多精彩的演示。不過,這款引擎還處在比較不成熟的開發(fā)階段,其不夠豐富的 API 以及匱乏的文檔增加了初學(xué)者的學(xué)習(xí)難度(尤其是文檔的匱乏)。

前言

在講解 threejs 的時候,我們通過一個基本的簡單的案例,來實現(xiàn)一個小的效果,然后把常用的 API、工具、功能稍微說一下哈!

這個案例我是使用 vue2 + 腳手架工具創(chuàng)建的項目,采用 javascript 開發(fā)。再次之前需要先準(zhǔn)備一個 vue 的空項目,好在我們不需要使用網(wǎng)絡(luò)請求,直接默認(rèn)創(chuàng)建一個 vue2 的項目即可,不需要過多的配置。

安裝 threejs

安裝 threejs 的方式也很簡單,直接使用 npm 工具就可以安裝到項目里面使用:

npm install --save three

在終端輸入命令然后回車等待執(zhí)行完成就可以了!

安裝完成之后,就可以看到 package.json 文件中已經(jīng)包含了我們剛剛安裝的 three 依賴。

同時,在 node_modules 文件夾下,也出現(xiàn)了 three 相關(guān)的包依賴。

這樣,我們就成功將 threejs 相關(guān)的依賴添加到我們的項目,就可以繼續(xù)進(jìn)行后續(xù) threejs 相關(guān)功能的開發(fā)了。

初始化項目

這個步驟就不多說了,直接使用 cli3 以上的版本創(chuàng)建一個 vue2 的項目,然年修改一下組件內(nèi)容,創(chuàng)建一個 div 標(biāo)簽鋪滿整個瀏覽器頁面就可以了。

<template>
  <div class="three-canvas" ref="threeTarget"></div>
</template>

<script>
export default {
  name: 'HelloWorld',
}
</script>

<style scoped>
  .three-canvas {
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: #d6eaff;
  }
</style>

大體效果就是下面的樣子,當(dāng)然了這個無所謂了。

然后我們在這個組件中實現(xiàn) threejs 效果,效果呢,掛載到我們創(chuàng)建的 <div class="three-canvas" ref="threeTarget"></div> 標(biāo)簽上面渲染。

為了保證項目代碼稍微的有點規(guī)范性,我們創(chuàng)建一個 TEngine.js 文件,在當(dāng)前組件引入,然后呢,所有與 threejs 初始化、操作等代碼都是 TEngine.js 文件中實現(xiàn)。

創(chuàng)建渲染器 WebGLRenderer

接下來我們在 TEngine.js 文件中初始化一個 threejs ,首先第一步,我們需要有一個 dom 掛載我們創(chuàng)建的 threejs ,啥叫掛載呢,簡單點說就是我創(chuàng)建的 3D 模型顯示在哪里,我們之前初始化項目不是創(chuàng)建一個全屏的 div 嗎?然后我們就把 3D 模型放在這個 div 上面顯示。

第一步,我們現(xiàn)在 TEngine.js 中創(chuàng)建并交出一個 ThreeEngine 類,然后這個類,在組件中實例化就可以了,前面說了,需要一個 dom 節(jié)點掛載模型,那么我們首先得接收一個 dom 節(jié)點吧?所以說在構(gòu)造器函數(shù)里面獲取到傳入的 dom 節(jié)點,然后掛載。

export class ThreeEngine {
  dom = null; // 掛載的 DOM
  // 構(gòu)造器函數(shù)
  constructor(dom) {
    this.dom = dom
  }
}

然后我們就可以在組件中實例化這個類了。注意,需要在 mounted 生命周期鉤子中實例化吧?不能在 created 生命周期鉤子中,為啥,因為 mounted 才是 dom 都渲染完成吧,好:

<script>
  import { ThreeEngine } from './js/TEngine'
  export default {
    name: 'HelloWorld',
    data() {
      return {
        ThreeEngine: null,
      };
    },
    mounted() {
      this.ThreeEngine = new ThreeEngine(this.$refs.threeTarget)
    }
  }
</script>

OK,這樣子第一步就完成了,但是呢頁面沒效果,因為我們剛剛開始,完全沒有任何的 threejs 的操作。

接下來,就是 threejs 相關(guān)的操作了哈,都在 ThreeEngine 類的構(gòu)造器函數(shù)中實現(xiàn)。

【引導(dǎo)】首先你想,我們想在一個 div 上面展示 3D 模型的東西,是不是首先得有一個東西把這個 3D 模型轉(zhuǎn)換成我們?yōu)g覽器可以展示的畫面放在我們傳遞進(jìn)來 div 上展示啊,這個幫助我們把 模型 展示到 div 上的東西就可以簡單的理解成渲染器。舉一個例子:老師說我們準(zhǔn)備換一個新教室,老師想看一下新教室的布局,但是自己有事過不去,怎么辦?找個同學(xué)小明幫忙過去看一下就可以了吧,怎么讓老師親眼看到?對,視頻通話,小明拿手機(jī)拍攝,然后老師在手機(jī)上就可以看到這個新教室的布局了吧,那這個小明就是渲染器。所以第一步,找一個小明。

老師的渲染器是小明,而 threejs 的渲染器就是 WebGLRenderer。WebGLRenderer是 three 中提供的一個工具類,我們在使用之前需要先引入他,使用也很簡單。

import {<!--{C}%3C!%2D%2D%20%2D%2D%3E--> WebGLRenderer } from 'three'

首先創(chuàng)建一個渲染器:

let renderer = new WebGLRenderer() // 創(chuàng)建渲染器

創(chuàng)建完成之后,我們需要把這個渲染器掛載到 dom 上面,這樣,渲染器渲染的效果就可以展示在 div 上面,就是學(xué)生和老師打視頻電話,才可以讓老師在自己的手機(jī)看到新教室布局。

dom.appendChild(renderer.domElement) // 將渲染器掛載到dom

問題來了,我們告訴渲染器說:你把 threejs 的效果展示在 div 上面。可以渲染器有點蒙蔽還,就是我要渲染多大啊?這個 div 有高寬,我是渲染在這個 div 的那個部分呢?所以說還需要設(shè)置一下渲染器的大小吧?我們一般設(shè)置的和 dom 節(jié)點一樣大小就可以。

renderer.setSize(dom.offsetWidth, dom.offsetHeight, true)

這樣我們的渲染器初始化的全部代碼就完成了!

import { WebGLRenderer } from 'three'

export class ThreeEngine {

  dom = null; // 掛載的 DOM
  
  constructor(dom) {

    // 創(chuàng)建渲染器
    let renderer = new WebGLRenderer({
      antialias: true,  // 開啟抗鋸齒
    })
    dom.appendChild(renderer.domElement)  // 將渲染器掛載到dom
    renderer.setSize(dom.offsetWidth, dom.offsetHeight, true)

    this.dom = dom
  }

}

我們看一下頁面效果。

非常好,和沒有初始化之前一模一樣,為啥。

【引導(dǎo)】還是老師想看新教室,渲染器小明有了,但是小明拿手機(jī)拍啥啊?新教室對吧?但是我們只是找到了小明,交代給小明說你去渲染給我看,但是并沒有告訴小明去看啥,這里讓小明看的東西叫做場景,我們需要告訴小明看什么場景才可以。所以說下一步,找一個場景。

創(chuàng)建場景 Scene

threejs 中的場景是 Scene,同樣這個也是 threejs 提供的工具類,使用的話也需要引入,創(chuàng)建一樣簡單。

import { WebGLRenderer, Scene } from 'three'

創(chuàng)建場景直接 new 就可以。

let scene = new Scene()  // 實例化場景
this.scene = scene

就這兩行代碼初始完場景了,然后到此為止,所有的代碼就是下面這樣的。

import { WebGLRenderer, Scene } from 'three'
export class ThreeEngine {
  dom = null; // 掛載的 DOM
  scene = null; // 場景
  constructor(dom) {
    // 創(chuàng)建渲染器
    let renderer = new WebGLRenderer({
      antialias: true,  // 開啟抗鋸齒
    })
    dom.appendChild(renderer.domElement)  // 將渲染器掛載到dom
    renderer.setSize(dom.offsetWidth, dom.offsetHeight, true)
    let scene = new Scene()  // 實例化場景
    this.dom = dom
    this.scene = scene
  }
}

我們看一下效果:

我勒個去!還是怎么東西沒有,我之前一模一樣。這又是為啥!

【引導(dǎo)】還是老師讓小明看新教室,渲染器小明有了,場景也有了。但是小明拿著手機(jī)懵了,為啥懵了,小明到了新教室,他不知道怎么給老師看新教室,我們想法是啥,小明拿手機(jī)打視頻給老師看,但是小明不知道??!我們得給小明一個有攝像機(jī)的手機(jī)才可以。繼續(xù),小明有相機(jī)了,但是小明比較笨,他不知道從那個角度拍給老師看(盡管小明笨,但不許換掉小明),所以說我們還得告訴小明拍攝的位置,也就是說從哪個角度拍攝吧。

創(chuàng)建相機(jī)并設(shè)置位置 PerspectiveCamera

threejs 中的相機(jī)是 PerspectiveCamera,他同樣是 three 提供的工具類,我們需要引入,然后在實例化。

import { WebGLRenderer, Scene, PerspectiveCamera } from 'three'

怎么創(chuàng)建相機(jī)有幾個步驟,首先實例化一個相機(jī);然后需要設(shè)置相機(jī)的位置,就是從哪里拍;再然后設(shè)置相機(jī)拍攝的位置,就是拍具體哪里;最后可以設(shè)置相機(jī)角度,就是歪著拍還是豎著拍;

首先是初始化相機(jī)

// 實例化相機(jī)
let camera = new PerspectiveCamera(45, dom.offsetWidth / dom.offsetHeight, 1, 1000)  

這里傳了幾個參數(shù),分別是啥意思稍微說一下。

  • 第一個參數(shù) 45 是 攝像機(jī)視錐體垂直視野角度,人眼看東西就差不多60度左右嘛,不可能看到頭后面的東西,這里也是這個意思,一般就設(shè)置 45。
  • 第二個參數(shù) dom.offsetWidth / dom.offsetHeight 是攝像機(jī)視錐體長寬比,我們就設(shè)置是我們 div 容器的長寬比就可以,如果不這樣設(shè)置,可能會變形。因為我們看到的要和相機(jī)看到的一樣大小,不然會被拉伸。
  • 第三個參數(shù) 1 是攝像機(jī)視錐體近端面
  • 第四個參數(shù) 1000 攝像機(jī)視錐體遠(yuǎn)端面

然后是設(shè)置相機(jī)位置,就是相機(jī)都放在哪里。

camera.position.set(50, 50, 50) // 設(shè)置相機(jī)位置

我們把相機(jī)放在 three 坐標(biāo) 50 50 50 的位置。

然后是設(shè)置相機(jī)看向哪里,這里我們讓相機(jī)看向原點。

camera.lookAt(new Vector3(0, 0, 0)) // 設(shè)置相機(jī)看先中心點

我們還可以設(shè)置相機(jī)自身的方向。

camera.up = new Vector3(0, 1, 0) // 設(shè)置相機(jī)自身的方向

這里我們稍微補(bǔ)充一點知識點,因為沒有圖形學(xué)基礎(chǔ)的話可能不好理解,首先說一點,threejs 坐標(biāo)系是向右為 x 軸正方向,垂直屏幕向外為 z 軸的正方向,向上為 y 軸正方向。

所以說設(shè)置相機(jī)的位置和看向原點就理解了哈,然后渲染器默認(rèn)加載完成后他的中心就是(0,0,0)原點,分別對應(yīng) (x,y,z)。
camera.up 是用來設(shè)置相機(jī)自身的方向設(shè)置 y = 1 表示 y 軸的正方向為相機(jī)向上的方向,可能沒說明白,就是相機(jī)向上移動就是向 three 坐標(biāo)系 y 軸的正方向移動。

到這里,我們初始化相機(jī)的部分就完成了,然后我們到此位置所有代碼:

import { WebGLRenderer, Scene, PerspectiveCamera, Vector3 } from 'three'
export class ThreeEngine {
  dom = null; // 掛載的 DOM
  scene = null; // 場景
  constructor(dom) {
    // 創(chuàng)建渲染器
    let renderer = new WebGLRenderer({
      antialias: true,  // 開啟抗鋸齒
    })
    dom.appendChild(renderer.domElement)  // 將渲染器掛載到dom
    renderer.setSize(dom.offsetWidth, dom.offsetHeight, true)
    let scene = new Scene()  // 實例化場景
	// 實例化相機(jī)
    let camera = new PerspectiveCamera(45, dom.offsetWidth / dom.offsetHeight, 1, 1000)  	   
    camera.position.set(50, 50, 50) // 設(shè)置相機(jī)位置
    camera.lookAt(new Vector3(0, 0, 0))  // 設(shè)置相機(jī)看先中心點
    camera.up = new Vector3(0, 1, 0)  // 設(shè)置相機(jī)自身方向
    this.dom = dom
    this.scene = scene
  }
}

然后我們保存代碼,看一下頁面效果。

非常好,還是那個樣子,啥都沒有。

為啥呢?再來引導(dǎo)一波!

【引導(dǎo)】我們初始化了渲染器,找到小明了;初始化了場景,讓小明去了新教室;相機(jī)準(zhǔn)備好了,小明掏出手機(jī)對準(zhǔn)了目標(biāo)。但是沒有視頻??!老師啥也看不到。所以我們接下來需要把這個相機(jī)和場景綁定到渲染器里面。

綁定很簡單,只需要在初始化相機(jī)之后呢,把場景和相機(jī)綁進(jìn)渲染器,讓渲染器渲染就可以了:

renderer.render(scene, camera) // 渲染器渲染場景和相機(jī)

OK,現(xiàn)在在看一下效果。

全部變黑了是吧?這就是成功了,為啥是黑的呢,因為現(xiàn)在這個場景沒有東西,如果有東西的話就可以展示出來了吧。

添加模型 Mesh

現(xiàn)在我們創(chuàng)建一個立方體放進(jìn)場景里面去,我們就可以看到一個模型了吧?好的,現(xiàn)在開始!

為了保證我們項目代碼的結(jié)構(gòu),我們創(chuàng)建一個 TBaseObject.js 文件,用來存放基礎(chǔ)的模型,然后這個文件中我們創(chuàng)建一個立方體模型,并返回出來。

我們就簡單點,先聲明一個數(shù)組拋出,然后數(shù)組里面是創(chuàng)建的模型,這樣外面使用這個文件的時候,導(dǎo)入就可以獲取模型的列表了。

export const allBaseObject = [] // 返回所有基礎(chǔ)模型

然后創(chuàng)建一個立方體模型,當(dāng)然也可以拋出去,也可以往數(shù)組里面添加一下,這樣的話我們既可以單獨使用這個立方體,也可以獲取全部模型。

創(chuàng)建一個簡單的立方體很簡單,Mesh 是 three 提供的基于以三角形為polygon mesh(多邊形網(wǎng)格)的物體的類,我們可以通過他創(chuàng)建一個立方體。

// 創(chuàng)建立方體
export const box = new Mesh(
  new BoxGeometry(20, 20, 20),  // 設(shè)置立方體的大小 (x 長度, y 高度 ,z 長度)
  new MeshStandardMaterial({   // 設(shè)置材質(zhì)
    color: 'rgb(36, 172, 242)',  // 設(shè)置材質(zhì)的顏色
  })
)

allBaseObject.push(stage)  // 添加到模型數(shù)組

小地方說一下哈,設(shè)置模型大小肯定需要的,這個模型多寬、多高、多長。那材質(zhì)是啥意思,就是我們這個立方體的樣式,比如顏色,光澤等屬性,當(dāng)然如果是實際模型可能還有貼圖之類的。簡單理解就是什么樣子的。

當(dāng)然,中間使用的類也需要引入一下。

import {<!--{C}%3C!%2D%2D%20%2D%2D%3E--> BoxGeometry, Mesh, MeshStandardMaterial } from "three"

好,創(chuàng)建完成做一個事情,就是我們需要在 three 中把這個立方體添加進(jìn)三維場景中,我們在 TEngine.js 文件中創(chuàng)建一個方法,用來向場景中添加模型。

  /**
   * 向場景中添加模型
   * @param  {...any} object 模型列表
   */
  addObject(...object) {
    object.forEach(elem => {
      this.scene.add(elem)  // 場景添加模型
    })
  }

然后我們在組件中把獲取模型列表,然后呢,把模型添加到場景中。

import {<!--{C}%3C!%2D%2D%20%2D%2D%3E--> allBaseObject } from './js/TBaseObject'

再 threejs 初始化完成后,調(diào)用我們寫的方法,把模型列表添加到場景。

this.ThreeEngine.addObject(...allBaseObject) // 添加基礎(chǔ)模型

代碼我最后會全部提交到 gitee,到時候如果需要可以看一下。

這樣我們在看一下效果:

哇偶,還是黑色的。為啥呢,在引導(dǎo)一波!

【引導(dǎo)】小明開視頻了,但是老師眼前一黑,為啥?沒開燈唄!其實 threejs 還是很真實的,他里面集成了光線的設(shè)置,如果沒有光線,就和實際生活一樣,完全就是漆黑的一篇,真棒!那么接下來,我們給場景添加一個“自然光”。

光線添加

嗯,現(xiàn)實生活中光線有很多了,比如說房間一盞燈,點亮之后就是一個點光源向四周發(fā)散光,在比如聚光,各大晚會的聚光燈照在一個人身上這種。threejs 中也存在這種光源,我們先編寫一個最簡單的光線,叫 “自然光”。

注意一點,我們創(chuàng)建的很多東西如果想展示出來都需要添加到場景才可以,比如我們創(chuàng)建的立方體、現(xiàn)在要創(chuàng)建的自然光,以及后邊說的光線輔助啥的都需要添加進(jìn)場景才可以看到,那么我們寫這個光線的時候和立方體一樣,創(chuàng)建一個 TLights.js 文件,把光源創(chuàng)建出來,然后引入到組件然后添加進(jìn)場景進(jìn)行展示。

創(chuàng)建光線其實很簡單:

import { AmbientLight } from "three"


/**
 * 光線
 */
export const allLights = []

// 添加環(huán)境光(自然光),設(shè)置自然光的顏色,設(shè)置自然光的強(qiáng)度(0 最暗, 1 最強(qiáng))
export const ambientLight = new AmbientLight('rgb(255,255,255)', 0.8)

allLights.push(ambientLight)

threejs 中的自然光是 AmbientLight ,使用之前需要引入,引入完成實例化的時候需要傳遞兩個參數(shù):

  • 第一個參數(shù)是光線的顏色。
  • 第二個參數(shù)是光線的強(qiáng)度。0最暗,1最亮。

然后我們同樣也是在 組件 中引入光線,然后將光線添加到場景。

this.ThreeEngine.addObject(...allLights) // 添加光線

這樣,光線就被我們添加到場景了,我們再來看一下效果。

啊? 還是黑色的!這又是怎么回事啊?。。。?!

【說明】我們知道,頁面是有刷新率的,比如 60hz 表示屏幕一秒鐘渲染60個頁面,我們的眼睛有延時,頁面切換的太快,所以說我們看到的就是一個視頻效果,但是 threejs 的渲染器,在初始化渲染器完成之后就只渲染了一次就不管了,所以說后邊我們再修改場景修改模型的時候,并沒有給我們渲染,所以說我們需要自己寫代碼然他渲染,怎么寫呢,官網(wǎng)其實說的也很明白,一段代碼加上就 OK 了。

接下來,我們在 構(gòu)造器函數(shù) 最后加上這段代碼,threejs 就會一直幫我們逐幀渲染頁面效果。

    // 逐幀渲染threejs
    let animate = () => {
      renderer.render(scene, camera)  // 渲染器渲染場景和相機(jī)
      requestAnimationFrame(animate);
    }
    animate()

我們現(xiàn)在再來看效果:

終于,我們的立方體加載出來了。如果我們不設(shè)置正方體的位置,默認(rèn)模型初始化加載在原點位置。

我們看到渲染器背景是黑色的,這是因為我們沒有設(shè)置,他默認(rèn)就是黑色的,我們可以給渲染器設(shè)置其他的顏色,在渲染器綁定完相機(jī)和場景之后:

renderer.setClearColor('rgb(239, 70, 1)') // 設(shè)置渲染器的顏色

他就可以被設(shè)置成我們想設(shè)置的任意顏色。

好了,這就是最基本的使用。

軌道控制器 OrbitControls

上面我們說完了基本的初始化渲染器、相機(jī)、場景、添加模型、設(shè)置光線之后,我們發(fā)現(xiàn)一個問題啊,就是這個頁面是靜態(tài)的,我們之前看百度地圖或者是其他 cesium 創(chuàng)建場景之后,鼠標(biāo)可以拖動,放大縮小,但是現(xiàn)在我們編寫的案例還不可以,接下來我們實現(xiàn)這個功能。

要想實現(xiàn)鼠標(biāo)操控,需要使用 threejs 的另一個工具類,那就是 OrbitControls,它叫做軌道控制器。

怎么使用呢?首先需要引入進(jìn)項目,主要,這個工具類不是 three 中提供的,而是在它提供的案例里面,我們需要單獨引入。

import { OrbitControls } from 'three/examples/jsm/controls/OrbitControls'

引入完成,需要初始化軌道控制器。

let orbitControls = new OrbitControls(camera, renderer.domElement)

OK,初始化完成再去看效果,我們的案例就可以鼠標(biāo)旋轉(zhuǎn)縮放了。

這就是 軌道控制器 的基本使用。使用方式也很簡單:

  • 鼠標(biāo)左鍵按下拖拽:圍繞視圖中心點旋轉(zhuǎn)。
  • 鼠標(biāo)中鍵滾動:縮小放大,實際是相機(jī)靠近和遠(yuǎn)離。
  • 鼠標(biāo)右鍵按下拖拽:移動場景。

【拓展】

再稍微拓展一個軌道控制器的地方,就是我們的軌道控制器鼠標(biāo)按鍵功能,是可以設(shè)置的,因為我們后面可能介紹鼠標(biāo)點擊事件,所以說鼠標(biāo)左鍵按下事件可能有沖突,所以說我們重新設(shè)置一下,中鍵功能不變,旋轉(zhuǎn)改為右鍵操作,左鍵什么功能都沒有。

    let orbitControls = new OrbitControls(camera, renderer.domElement)
    orbitControls.mouseButtons = {  // 設(shè)置鼠標(biāo)功能鍵(軌道控制器)
      LEFT: null,  // 左鍵無功能
      MIDDLE: MOUSE.DOLLY,  // 中鍵縮放
      RIGHT: MOUSE.ROTATE   // 右鍵旋轉(zhuǎn)
    }

里面使用了 MOUSE,這是 three 提供的,我們得引入一下:

import { WebGLRenderer, Scene, PerspectiveCamera, Vector3, MOUSE } from 'three'

這樣設(shè)置之后,我們鼠標(biāo)按鍵的功能就發(fā)生了變化,可以試一下。

OK,發(fā)現(xiàn)鼠標(biāo)功能確實實現(xiàn)了。但是有沒有發(fā)現(xiàn)一個很大的問題啊?就是根本看不出立方體的感覺來,你說他是立方體,我還就說他是一個多邊形不停的變換呢!

確實是這樣哈!正經(jīng)的立方體他是有輪廓顯示的,類似于下面:

但是現(xiàn)在沒有為啥。稍微解釋一下,為了看見這個立方體,我們使用了環(huán)境光,環(huán)境光有一個特點,啥特點呢,就是說,他在模型的每一個面上光照強(qiáng)度都是一樣的,不會衰減,所以說我們看到的模型,他每個面放光是一樣的,根本看不出立體感。如果想要立體感怎么辦?很簡單哈,換一種光線,不使用環(huán)境光了,我們使用一個點光源,從一個點射出一束光向四周擴(kuò)散,這樣的話,照在模型上,因為距離不一樣,光照強(qiáng)度就不一樣,立體感就出來了。

添加點光源 PointLight

我們之前在 TLights.js 文件創(chuàng)建了一個環(huán)境光,現(xiàn)在我們再創(chuàng)建一個點光源 PointLight,添加到場景中去。因為之前封裝好了,我們只需要創(chuàng)建完點光源,然后把點光源放進(jìn)光源數(shù)組就可以了吧。

創(chuàng)建點光源使用的是 PointLight,這個工具類同樣是 three 中提供的,我們需要引入一下子。

import { AmbientLight, PointLight } from "three"

然后就是創(chuàng)建點光源,創(chuàng)建點光源和創(chuàng)建環(huán)境光有點不一樣,因為他就像一個燈泡,需要有顏色、強(qiáng)度、能照射多遠(yuǎn)、光照衰減值,最后還有位置:

// 點光源
export const pointLight = new PointLight(
  'rgb(255,255,255)',
  0.5,
  600,
  0.2
)
pointLight.position.set(0, 100, 200)  // 設(shè)置點光源位置 (x,y,z)

allLights.push(pointLight)  // 將點光源添加到光源列表拋出

PointLight 有四個參數(shù):

  • color - (可選參數(shù))) 十六進(jìn)制光照顏色。默認(rèn) 0xffffff (白色)。
  • intensity - (可選參數(shù)) 光照強(qiáng)度。 缺省值 1。
  • distance - 這個距離表示從光源到光照強(qiáng)度為0的位置。 當(dāng)設(shè)置為0時,光永遠(yuǎn)不會消失,默認(rèn)0。
  • decay - 沿著光照距離的衰退量。默認(rèn) 1。

OK,現(xiàn)在我們再來看一下添加完點光源之后,模型效果:

非常好,模型的立體感已經(jīng)出來了。

模型部分拓展

我們既然說完了光線,其實還有很多中光線,可以去官網(wǎng)查看相關(guān)使用。

接下來我們稍微拓展一點兒東西哈,就是我們之前創(chuàng)建模型是使用的下面的代碼:

// 創(chuàng)建立方體
export const box = new Mesh(
  new BoxGeometry(20, 20, 20),  // 設(shè)置立方體的大小
  new MeshStandardMaterial({   // 設(shè)置材質(zhì)
    color: 'rgb(36, 172, 242)',  // 設(shè)置材質(zhì)的顏色
  })
)

我們可以向這個模型添加數(shù)據(jù)的,比如我們設(shè)置個 name,我這個立方體叫做 “box” 可以吧。只需要這樣寫就可以配置他的 name 屬性。

export const box = new Mesh(
  new BoxGeometry(20, 20, 20),  // 設(shè)置立方體的大小
  new MeshStandardMaterial({   // 設(shè)置材質(zhì)
    color: 'rgb(36, 172, 242)',  // 設(shè)置材質(zhì)的顏色
  })
)
box.name = 'box'

除了 name 之外還可以設(shè)置他的位置。

box.position.set(5, 5, 5) // 設(shè)置模型位置 (x,y,z)

當(dāng)然,位置信息也可以單獨設(shè)置。

box.position.x = 5
box.position.y = 5
box.position.z = 5

單獨設(shè)置每個坐標(biāo)軸的位置也是可以的。

在實際開發(fā)的時候,比如我們有一個模型,我們需要給這個模型綁定一些數(shù)據(jù),點擊彈窗顯示或者是鼠標(biāo)懸浮顯示的時候獲取到這些數(shù)據(jù),怎么綁定數(shù)據(jù)呢?其實我們可以直接設(shè)置,比如:

box.sheshimoxingshuju = {
  name: 'box',
  user: '我是ed.'
}

當(dāng)然,threejs 提供了一個參數(shù) userData 用來存放用戶數(shù)據(jù),建議放到那里面,默認(rèn)我們都放到 uerData 里面,這樣是為了以后多人開發(fā),不至于每個人創(chuàng)建一個屬性最后亂套了都。

export const box = new Mesh(
  new BoxGeometry(20, 20, 20),  // 設(shè)置立方體的大小
  new MeshStandardMaterial({   // 設(shè)置材質(zhì)
    color: 'rgb(36, 172, 242)',  // 設(shè)置材質(zhì)的顏色
  })
)
box.name = 'box'  // 設(shè)置模型 name
box.position.set(5, 5, 5)  // 設(shè)置模型位置
box.position.x = 5
box.position.y = 5
box.position.z = 5


box.sheshimoxingshuju = {
  name: 'box',
  user: '我是ed.'
}

box.userData = {
  name: '我是ed.'
}

怎么確定我們都設(shè)置成功了?我們打印一下就可以了。

我們直接打印一下 box 就可以看到我們配置的都是生效了的,都存進(jìn)去了的。為啥突然想說這個,主要是想說一下 name 設(shè)置的,因為后邊可能要根據(jù)模型的 name 從場景中獲取模型,所以說一下模型的 name 怎么設(shè)置。我們?nèi)サ魷y試多余的代碼哈。

然后再說一下模型的材質(zhì)問題

還是這段代碼:

export const box = new Mesh(
  new BoxGeometry(20, 20, 20),  // 設(shè)置立方體的大小
  new MeshStandardMaterial({   // 設(shè)置材質(zhì)
    color: 'rgb(36, 172, 242)',  // 設(shè)置材質(zhì)的顏色
  })
)

關(guān)于材質(zhì),我們只設(shè)置了一個顏色對吧!頁面效果也顯示出來了,然后是藍(lán)色的很精致的小盒子,他除了顏色還可以設(shè)置其他的屬性,比如:粗糙度 roughness。

roughness 粗糙度是啥意思,就比如說我們生活里面,木頭的粗糙度就很高,玻璃的粗糙度就很低。

roughness 上怎么提現(xiàn)粗糙度呢,roughness 的取值范圍是 0 到 1。當(dāng) roughness 為 0 時,表示粗糙度最低,就越光滑;當(dāng) roughness 為 1 時,表示粗糙度最高,越粗糙。

比如我們給這個正方體設(shè)置一個粗糙度為 0 ,也就是最光滑。

export const box = new Mesh(
  new BoxGeometry(20, 20, 20),  // 設(shè)置立方體的大小
  new MeshStandardMaterial({   // 設(shè)置材質(zhì)
    color: 'rgb(36, 172, 242)',  // 設(shè)置材質(zhì)的顏色\
    roughness: 0   // 粗糙度(0 最光滑,1 最粗糙)
  })
)

我們怎么看效果,這也是為啥我在這里說粗糙度而不是在添加模型說的原因,我們在場景添加了一個點光源,可以理解成就是一個燈吧!如果一個物體,他表面光滑到一個程度之后他會反光的!我就把正方體的粗糙度調(diào)到最低,也就是最光滑的時候,他肯定會反光吧,那我們調(diào)節(jié)模型,看他有沒有反光的時候??葱Ч?/p>

找到反光的點了,是吧!但是如果我們粗糙度調(diào)到最高,是絕對不可能反光的,這里我們就不看了,有興趣的可以自己看一下。

除了粗糙度,在說一個吧,就是 金屬度 metalness。

我們在生活中見過鐵吧!見過不銹鋼吧!見過鋁合金吧!那種金屬質(zhì)感很酷吧?就算是相同的顏色,塑料和金屬你一眼就分個大概吧!

metalness 就是用來設(shè)置模型金屬質(zhì)感的,他的取值也是從 0 到 1,當(dāng) metalness 為 0 表示金屬質(zhì)感最少,最不像金屬;metalness 為 1 表示金屬質(zhì)感最強(qiáng),最像金屬。

我們在給模型添加一個金屬質(zhì)感。

export const box = new Mesh(
  new BoxGeometry(20, 20, 20),  // 設(shè)置立方體的大小
  new MeshStandardMaterial({   // 設(shè)置材質(zhì)
    color: 'rgb(36, 172, 242)',  // 設(shè)置材質(zhì)的顏色
    metalness: 0.5,   // 金屬度 (1 最像金屬,0 最不想金屬)
    roughness: 0   // 粗糙度(0 最光滑,1 最粗糙)
  })
)

我這里金屬質(zhì)感設(shè)置的 0.5,為啥,現(xiàn)實生活中有沒有一個感覺,就是一個金屬塊,表面越光滑,金屬感越強(qiáng),他的顏色就越暗,暗的發(fā)黑。

看,我設(shè)置完金屬度之后,模型不如之前亮了,但是沒有看出金屬質(zhì)感啊?別急,我移動一下,照樣讓他返回看一下,金屬質(zhì)感立馬就出來了。


怎么樣!厲害吧!啊哈哈哈哈!

好了,關(guān)于這個小的拓展部分就到這里吧!完成!

添加輔助線

這一部分說一些輔助工具,我們添加模型啥的,包括模型的定位,都是憑感覺,不知道各個軸的方向,也不知道原點位置,所以說能不能讓原點位置和坐標(biāo)軸可視化?

答案是肯定的, threejs 為我們提供了輔助線,用來可是畫坐標(biāo)軸。接下來就實現(xiàn)一下坐標(biāo)軸的可視化操作。

首先我們還是和模型、光線一樣,創(chuàng)建一個輔助文件 THelper.js ,在這個 js 文件中創(chuàng)建輔助線,然后拋出,在組件中接受,最后添加在場景里面,我們就可以看到坐標(biāo)軸輔助線了。

首先坐標(biāo)軸輔助線是 AxesHelper,這個工具類是 three 提供的,所以說我們需要單獨引入一下。

import { AxesHelper } from 'three'

引入完成就可以使用來了。接下來創(chuàng)建輔助:

import { AxesHelper, GridHelper } from 'three'

export const allHelper = []

// 坐標(biāo)輔助
export const axesHelper = new AxesHelper(500)  // 創(chuàng)建坐標(biāo)輔助 (500 為輔助線的長度)

allHelper.push(axesHelper)  // 添加到輔助列表

還是,在組件中引入,然后就可以添加到場景里面去了。

  import { allHelper } from './js/THelper'

添加到場景:

this.ThreeEngine.addObject(...allHelper)   // 添加輔助

這樣輔助線就添加到場景中去了,我們可以看一下效果。

這里的 紅色線就是 x 軸,藍(lán)色線就是 z 軸,綠色線就是 y 軸。

除了坐標(biāo)輔助線,我們還可以添加地面網(wǎng)格線 GridHelper。

import { AxesHelper, GridHelper } from 'three'

export const allHelper = []

// 坐標(biāo)輔助
export const axesHelper = new AxesHelper(500)  // 創(chuàng)建坐標(biāo)輔助

// 創(chuàng)建地面網(wǎng)格輔助
export const gridHelper = new GridHelper(100, 10, 'red', 'rgb(222, 225, 230)')

allHelper.push(axesHelper, gridHelper)

網(wǎng)格輔助線一共需要配置四個參數(shù):

  • size – 坐標(biāo)格尺寸. 默認(rèn)為 10. 這就是網(wǎng)格組成的大正方形最大是多少
  • divisions – 坐標(biāo)格細(xì)分次數(shù). 默認(rèn)為 10. 組成的最大的正方向平均分多少份
  • colorCenterLine – 中線顏色. 值可以為 Color 類型, 16進(jìn)制 和 CSS 顏色名. 默認(rèn)為 0x444444。這個是指網(wǎng)格和坐標(biāo)的 x軸 z 軸重合線的顏色。
  • colorGrid – 坐標(biāo)格網(wǎng)格線顏色. 值可以為 Color 類型, 16進(jìn)制 和 CSS 顏色名. 默認(rèn)為 0x888888

我們看一下效果:

這樣,地面網(wǎng)格線也出來了。其實光線輔助也是有的,但是呢,我不想寫了,如果需要的話去官網(wǎng)看一下怎么使用自己加進(jìn)去就可以了。得接著往下說其他的功能了。

模型編輯邏輯梳理

到這里的話,模型加載展示基礎(chǔ)就基本上完成了,如果是我們自己從網(wǎng)上下載的模型不是這樣添加,我看看有時間開一篇新的博客說一下,但是這篇博客因為是基礎(chǔ)嘛,就不說加載第三方模型的東西了。

現(xiàn)在這一部分說一下模型的編輯。

我們通過上面的步驟,成功的把立方體模型添加到場景了,但是我們發(fā)現(xiàn),添加的位置是原點嘛,因為沒有設(shè)置初始位置,所以說就是默認(rèn)原點,那我現(xiàn)在想鼠標(biāo)拖動這個模型,改變模型的位置,甚至是旋轉(zhuǎn)這個模型,也可能拉伸這個模型讓他進(jìn)行形變怎么辦?可以實現(xiàn)嗎?

答案是可以的,threejs 幫我們提供了這樣一個操作類,接下來我們就說一下這部分的使用。

【分析】

我們先來分析一波。我們想讓模型通過鼠標(biāo)拖拽的方式移動位置,他有幾種移動的方向?這個和二維的不一樣吧?二維的只有長寬,所以說移動一個二維的東西,只有 x 軸 和 y 軸移動吧?但是 threejs 是三維的,他除了 x軸,y軸 還有一個 z 軸,三條軸立體移動。同樣如果旋轉(zhuǎn)、形變也都是和二維是不一樣的,不是拖拖鼠標(biāo)在一個平面移動一下就可以的。

所以說,threejs 為我們提供了一個工具類叫做 變換控制器 TransformControls 。他可以提供一種類似于在數(shù)字內(nèi)容創(chuàng)建工具(例如Blender)中對模型進(jìn)行交互的方式,來在3D空間中變換物體。

他類似于這個樣子:

我們要做的是什么操作,就是我們點擊要移動模型,針對這個被點擊的模型綁定一個 變換控制器,變換控制器有三根軸,分別對應(yīng)的就是 threejs 坐標(biāo)系的 x 軸 、y 軸 、z 軸,我們拖動 變換控制器 的軸,就可以實現(xiàn)對應(yīng)模型的移動。

OK,所以說,首先要實現(xiàn)的一件事情是啥?不是初始化變換控制器,而是點擊事件。

【分析】 再分析一波!二維里面我們看到一個正方形,我們想要點擊正方形怎么做?鼠標(biāo)移動上去直接點擊就可以吧?但是我們 threejs 是三維的,是一個立體的空間,我問一下,看下面的圖片,我把視圖范圍放大,讓立方體離相機(jī)遠(yuǎn)一點,所以顯得立方體變小了。

這個時候,我把鼠標(biāo)移動到藍(lán)色立方體那個位置,點擊左鍵,有沒有點擊到立方體身上?答案肯定是沒有!因為鼠標(biāo)的位置也就是屏幕是二維的,但是正方體在三維場景里面,他是在屏幕里面,渲染器渲染出空間來了,鼠標(biāo)和小方塊直接是有空間的,有距離的,放到三維里面,鼠標(biāo)沒有點擊到小方塊,而是在空氣上面點擊了一下吧?。?!一定要搞清楚哈,鼠標(biāo)沒有放到小方塊上面,只是鼠標(biāo)擋在了相機(jī)前面,把小方塊擋住了而已,所以說你點擊的不是小方塊,是 threejs 的相機(jī)鏡頭??!

所以,我們想要點擊小方塊怎么辦呢?點擊不了。

那我們想一下,我們想要點擊小方塊的目的是啥?是不是想給我們想要拖拽的小方塊綁定一個變換控制器。那所以說,我們一定要點擊到小方塊嗎?好像也不需要,只要讓我們在點擊鼠標(biāo)的時候獲取到小方塊這個模型對象就可以了吧?

在生活當(dāng)中,如果我們想讓旁邊的人關(guān)注遠(yuǎn)處的一個人怎么辦?是不是你直接拿手指一下遠(yuǎn)處的人就可以了,別人通過你手指的方向,結(jié)合你看的方向,結(jié)合當(dāng)時的場景就大體知道你指的是哪個人了吧?threejs 中,也提供了類似的功能,叫做 射線發(fā)射器 Raycaster。

射線發(fā)射器 Raycaster 會根據(jù)鼠標(biāo)在二維屏幕中點擊的位置,結(jié)合當(dāng)前相機(jī)的一些狀態(tài),比如位置、角度、方向等,從屏幕向鼠標(biāo)點擊的方向發(fā)出一條射線,把被射線穿過模型返回成一個列表回來,列表的順序就是穿過的先后順序,所以我們照著小方塊點過去,射線一定會穿過小方塊,當(dāng)然可能還有其他的,但是第一個肯定是最先被射線穿過的小方塊吧!畢竟我們沒必要隔山打牛。

好的,邏輯捋清楚了,接下來就可以開始編寫代碼了。

初始化射線發(fā)射器 Raycaster

初始化射線發(fā)射器其實是很簡單的事情,threejs 官方也為我們提供了 方式,只需要一行代碼就可以實現(xiàn)了。

// 初始化射線發(fā)射器
let raycaster = new Raycaster()

根據(jù)上面一部分分析,我們知道鼠標(biāo)要觸發(fā)點擊事件,然后把射線從屏幕打出去,看看打穿了哪些模型吧?好的,那么分析一個事情,我們點擊鼠標(biāo),從點擊的地方發(fā)出射線吧?OK,我們首先得知道鼠標(biāo)的位置是吧,我們可以寫一個鼠標(biāo)移動的事件來獲取鼠標(biāo)實時位置吧?OK,插一句,其實這個獲取鼠標(biāo)位置可以在點擊的時候獲取到,但是我想特別的添加一個鼠標(biāo)移動事件,為了后邊一個案例做準(zhǔn)備吧算是,我們添加鼠標(biāo)移動事件其實就是在渲染器上面添加吧,因為他充滿整個屏幕。

// 鼠標(biāo)移動事件
renderer.domElement.addEventListener("mousemove", event => {
	let x = event.offsetX
    let y = event.offsetY
    console.log(x, y)
})

好的,我們鼠標(biāo)移動事件寫好了。其中 x , y 就是鼠標(biāo)在屏幕的坐標(biāo)。截取了一個圖片,當(dāng)鼠標(biāo)在渲染器渲染的時候,可以看到鼠標(biāo)在控制臺的實時位置。

我們看到控制臺已經(jīng)在實時打印我們鼠標(biāo)的位置了,但是呢,現(xiàn)在思考一個問題哈。就是我們獲取到鼠標(biāo)的位置,是相對于屏幕的。但是呢,我們一會配置射線發(fā)生器需要兩個參數(shù),分別是相機(jī),他會獲取相機(jī)角度,位置,方向,結(jié)合傳遞的第二個參數(shù),鼠標(biāo)點擊位置,計算實際射線在 threejs 中射線穿過的模型。所以說,第二個參數(shù)的鼠標(biāo)位置,應(yīng)該是 threejs 視角的鼠標(biāo)位置。這個位置和我們計算出來的相對于屏幕的鼠標(biāo)位置是不一樣的。

看下面一張圖:

對于電腦屏幕來說,也就是我們上一步拿到的鼠標(biāo)坐標(biāo),它是以左上角為 0,0 點,向左,向下逐漸變大,最大就是電腦視圖的高度和寬度。

但是對于 threejs 視圖來說呢,它是以視圖的中心點為 0,0,向左變大,向下變大,且最大是 1。

所以說我們獲取到了鼠標(biāo)在電腦視圖的坐標(biāo),需要計算得到在 threejs 視圖的鼠標(biāo)坐標(biāo)啊,所以,我們獲取到的鼠標(biāo)坐標(biāo) x,y 通過計算獲得 threejs 的坐標(biāo)是下面這個算法:

對于 threejs 而言,他的原點就是屏幕寬度的一半和屏幕高度的一半。所以:

橫軸: (x - width / 2) / (width / 2)
縱軸: (height / 2 - y) / (height / 2)

化簡一下就是 

x / width * 2 - 1
-y * 2 / height + 1

OK,這樣我們就獲取到了 threejs 中鼠標(biāo)的位置。

因為我們后邊需要射線發(fā)射器傳遞兩個參數(shù),一個是相機(jī),一個是鼠標(biāo),我們的第二個參數(shù)鼠標(biāo)是一個二維的對象,我們先提前聲明一下。

// 初始化鼠標(biāo)位置
let mouse = new Vector2()
//  屏幕鼠標(biāo)x,屏幕鼠標(biāo)y  視圖寬度,視圖高度
let x = 0; let y = 0; let width = 0; let height = 0

然后在鼠標(biāo)移動事件里面給鼠標(biāo)對象設(shè)置他的 x 和 y:

renderer.domElement.addEventListener("mousemove", event => {
  x = event.offsetX
  y = event.offsetY
  width = renderer.domElement.offsetWidth
  height = renderer.domElement.offsetHeight
  mouse.x = x / width * 2 - 1
  mouse.y = -y * 2 / height + 1
})

這樣子我們就成功的獲取到了鼠標(biāo)在 threejs 中的位置信息。

然后接下來就可以一編寫點擊事件了,點擊事件要做的事情就是當(dāng)我們按下鼠標(biāo)之后,射出一個射線,被射線穿過的模型列表,都會給我們返回回來:

	// 鼠標(biāo)點擊事件
    renderer.domElement.addEventListener("click", event => {
      raycaster.setFromCamera(mouse, camera)  // 配置射線發(fā)射器,傳遞鼠標(biāo)和相機(jī)對象
      const intersection = raycaster.intersectObjects(scene.children) // 獲取射線發(fā)射器捕獲的模型列表,傳進(jìn)去場景中所以模型,穿透的會返回我們
	  console.log(intersection)
    })

我們通過射線發(fā)射器捕獲到了我們點擊的模型,然后打印一下所有的數(shù)據(jù)看一下:

當(dāng)我點擊了立方體之后,控制臺打印出來一個模型的列表,其實這個模型,就是點擊的立方體。

我們展開看到 object 模型下面的 name 就是我們設(shè)置的 box 名字吧!

好的,有個問題說一下,拋開做的這個demo, 有時候我們點擊一個位置,他打印出來的不是一個對象, 而是好幾個,因為射線能穿過了好幾個模型的,但是列表的第一個模型,肯定是我們點擊的,因為這個列表是按照穿過的先后順序返回的。還有一個,我們的輔助線,甚至是一會要使用的變換控制器,都會被射線穿過,都會被返回。

使用變換控制器 TransformControls

首先我們需要引入,這個引入和之前不一樣,是單獨的,在案例里面:

import { TransformControls } from 'three/examples/jsm/controls/TransformControls'

引入完成,我們需要初始化我們的 變換控制器。

// 初始化變換控制器
let transformControls = new TransformControls(camera, renderer.domElement)
scene.add(transformControls) // 將變換控制器添加至場景

這個要初始化在點擊事件之前哈!然后,在點擊事件中,我們得首先判斷一下,點擊下去有沒有射穿模型,如果沒有的話就沒有必要給第一個模型添加變換控制器了吧。如果有,就給第一個模型添加變換控制器。

    // 點擊事件
    renderer.domElement.addEventListener("click", event => {
      raycaster.setFromCamera(mouse, camera)  // 配置射線發(fā)射器,傳遞鼠標(biāo)和相機(jī)對象
      const intersection = raycaster.intersectObjects(scene.children) // 獲取射線發(fā)射器捕獲的模型列表,傳進(jìn)去場景中所以模型,穿透的會返回我們
      if (intersection.length) {
        const object = intersection[0].object  // 獲取第一個模型
        transformControls.attach(object)
      }
    })

完成到這里之后,我們就可以對模型進(jìn)行編輯操作了。

好的,但是多操作幾次發(fā)現(xiàn)是有問題的。比如我們先拖動,然后松開鼠標(biāo),在拖動的話,就發(fā)現(xiàn) 變化控制器添加到別的地方去了,就不再小正方體上面了。

這是什么原因造成的呢,因為我們所有的場景里面添加的東西,都是模型,所以說呢,變換控制器本身也是模型,當(dāng)然,這不是主要原因,他會造成其他的問題,這個地方的原因是什么,我們可以在點擊事件里面打印一句話:

    renderer.domElement.addEventListener("click", event => {
      console.log("click")
      raycaster.setFromCamera(mouse, camera)  // 配置射線發(fā)射器,傳遞鼠標(biāo)和相機(jī)對象
      const intersection = raycaster.intersectObjects(scene.children) // 獲取射線發(fā)射器捕獲的模型列表,傳進(jìn)去場景中所以模型,穿透的會返回我們
      if (intersection.length) {
        const object = intersection[0].object  // 獲取第一個模型
        transformControls.attach(object)
      }
    })

然后我們看一下打印的效果:

我們注意到,我們點擊鼠標(biāo)左鍵之后,打印出來了 click,但是我們拖拽完 變換控制器之后,又打印了一遍,為啥呢,第一次打印其實是點擊小方塊的,這個我們可以理解,第二次是因為我們點擊變換控制器時候觸發(fā)的呀。

所以需要解決一個問題,就是我們要處理一下:我們給變換控制器一個鼠標(biāo)按下的事件,然后我們定義一個 變量記錄是否是 變換控制器 按下的事件。

    let transing = false
    transformControls.addEventListener("mouseDown", event => {
      transing = true
    })

然后,在之前的點擊事件中判斷一下,如果是變化控制器按下的話,就不處理就可以了吧

    // 點擊事件
    renderer.domElement.addEventListener("click", event => {
      if (transing) {
        transing = false
        return
      }
      raycaster.setFromCamera(mouse, camera)  // 配置射線發(fā)射器,傳遞鼠標(biāo)和相機(jī)對象
      const intersection = raycaster.intersectObjects(scene.children) // 獲取射線發(fā)射器捕獲的模型列表,傳進(jìn)去場景中所以模型,穿透的會返回我們
      if (intersection.length) {
        const object = intersection[0].object  // 獲取第一個模型
        transformControls.attach(object)
      }
    })

這樣我們就成功修改掉那個 bug 了。

其實呢,還有一點小問題,就是之前說過的,我們所有場景里面添加的東西,都是模型,所以說呢,變換控制器本身也是模型。我問為了防止我們按下獲取到的組件是變換控制器本身,所以說,我們按下鼠標(biāo)獲取點擊模型之前,先把變換控制器移除,然后獲取到模型之后再把變換控制器整出來。

    // 點擊事件
    renderer.domElement.addEventListener("click", event => {
      if (transing) {
        transing = false
        return
      }
      scene.remove(transformControls) // 移除變換控制器
      transformControls.enabled = false // 停用變換控制器
      raycaster.setFromCamera(mouse, camera)  // 配置射線發(fā)射器,傳遞鼠標(biāo)和相機(jī)對象
      const intersection = raycaster.intersectObjects(scene.children) // 獲取射線發(fā)射器捕獲的模型列表,傳進(jìn)去場景中所以模型,穿透的會返回我們
      if (intersection.length) {
        const object = intersection[0].object  // 獲取第一個模型
        scene.add(transformControls) // 添加變換控制器
        transformControls.enabled = true // 啟用變換控制器
        transformControls.attach(object)
      }
    })

這樣就不用擔(dān)心我們按下鼠標(biāo)之后,點擊到變換控制器本身了。

當(dāng)然效果和之前是完全一樣的。

然后到現(xiàn)在為止呢,變換控制器移動模型就可以了。

但是變換控制器遠(yuǎn)遠(yuǎn)不值這么點功能。除了移動位置之外,還可以實現(xiàn)形變和旋轉(zhuǎn)。

比如說我們添加一個小功能,當(dāng)我們:

  • 按下鍵盤 E 之后,可以對模型進(jìn)行縮放。
  • 按下鍵盤 R 之后,可以對模型進(jìn)行旋轉(zhuǎn)。
  • 按下鍵盤 T 之后,改為對模型進(jìn)行移動。

只需要監(jiān)聽一下鍵盤按下事件,改變變換控制器的類型就可以了。

    // 監(jiān)聽變換控制器模式更改
    document.addEventListener("keyup", event => {
      if (transformControls.enabled) {  // 變換控制器為啟用狀態(tài)執(zhí)行
        if (event.key === 'e') { // 鼠標(biāo)按下e鍵,模式改為縮放
          transformControls.mode = 'scale'
          return false
        }
        if (event.key === 'r') { // 鼠標(biāo)按下r鍵,模式改為旋轉(zhuǎn)
          transformControls.mode = 'rotate'
          return false
        }
        if (event.key === 't') { // 鼠標(biāo)按下t鍵,模式改為平移
          transformControls.mode = 'translate'
          return false
        }
      }
    })

然后我們就按下按鍵實現(xiàn)效果了!

好的,這樣的話效果就都實現(xiàn)了。

鼠標(biāo)移動到模型變色

好了,接下來我們實現(xiàn)一個稍微簡單的功能,記得之前點擊按鈕使用鼠標(biāo) x ,y 坐標(biāo)的時候,我沒有在點擊事件中獲取,而是特意寫了一個鼠標(biāo)移動監(jiān)聽事件嗎?就是為了演示這個地方做準(zhǔn)備的。

要實現(xiàn)鼠標(biāo)移動上去模型變色,所以說呢,我們首先得知道模型有沒有被鼠標(biāo)移動上去,然后模型觸發(fā)移入或者是移除的事件,時間里面就是改變模型的顏色吧!

我們首先創(chuàng)建一個變量,用來存儲我們鼠標(biāo)移入之后獲取到的這個模型:

cacheObject = null // 鼠標(biāo)移入緩存效果

然后我們在鼠標(biāo)移動的事件里面修改成下面的代碼:

    renderer.domElement.addEventListener("mousemove", event => {
      x = event.offsetX
      y = event.offsetY
      width = renderer.domElement.offsetWidth
      height = renderer.domElement.offsetHeight
      mouse.x = x / width * 2 - 1
      mouse.y = -y * 2 / height + 1

      raycaster.setFromCamera(mouse, camera)  // 配置射線發(fā)射器
      scene.remove(transformControls)  // 移除變換控制器
      const intersection = raycaster.intersectObjects(scene.children)
      if (intersection.length) {
        const object = intersection[0].object
        if (object !== this.cacheObject) {  // 如果當(dāng)前物體不等于緩存的物體
          if (this.cacheObject) { // 如果有緩存物體先執(zhí)行之前物體的離開事件
            this.cacheObject.dispatchEvent({
              type: 'mouseleave'
            })
          }
          object.dispatchEvent({  // 添加當(dāng)前物體進(jìn)入事件
            type: 'mouseenter'
          })
        } else if (object === this.cacheObject) {  // 如果當(dāng)前物體等于緩存的物體
          object.dispatchEvent({  // 執(zhí)行移動事件
            type: 'mousemove'
          })
        }
        this.cacheObject = object
      } else {
        if (this.cacheObject) {  // 如果有緩存物體就先執(zhí)行離開事件
          this.cacheObject.dispatchEvent({
            type: 'mouseleave'
          })
        }
        this.cacheObject = null
      }
    })

同時,我們得給 box 模型添加兩個事件,分別是鼠標(biāo)移入和鼠標(biāo)移出的吧?

import { BoxGeometry, Color, Mesh, MeshStandardMaterial } from "three"

export const allBaseObject = []  // 返回所有基礎(chǔ)模型

// 創(chuàng)建地面
export const box = new Mesh(
  new BoxGeometry(20, 20, 20),  // 設(shè)置立方體的大小
  new MeshStandardMaterial({   // 設(shè)置材質(zhì)
    color: 'rgb(36, 172, 242)',  // 設(shè)置材質(zhì)的顏色
    metalness: 0.5,   // 金屬度 (1 最像金屬,0 最不想金屬)
    roughness: 0   // 粗糙度(0 最光滑,1 最粗糙)
  })
)
box.name = 'box'  // 設(shè)置模型 name

// 給模型添加鼠標(biāo)移入事件
box.addEventListener("mouseenter", () => {
  box.material.color = new Color("#ff3366")  // 修改材質(zhì)顏色為紅色
})
// 給模型添加鼠標(biāo)移除事件
box.addEventListener("mouseleave", () => {
  box.material.color = new Color("rgb(36, 172, 242)") // 恢復(fù)模型的材質(zhì)
})


allBaseObject.push(box)  // 添加到模型數(shù)組

好的,接下來我們的效果就實現(xiàn)了。

好,我們看到我們鼠標(biāo)移入移除就實現(xiàn)了模型材質(zhì)顏色的切換。

但是發(fā)現(xiàn)一個問題,為啥鼠標(biāo)在模型上,但是他有一段變成了最開始的顏色???

之前說過,場景里面所以的東西都是模型,射線發(fā)射器都會根據(jù)穿過順序返回。也就是說,網(wǎng)格輔助線也是會被穿透的!網(wǎng)格輔助線其實也是有一定的寬高的,所以那時候射線發(fā)射器第一個穿過的是網(wǎng)格輔助線,但是輔助線沒有實現(xiàn)鼠標(biāo)移入移出時間,當(dāng)輔助線移入的時候,就是小方塊鼠標(biāo)的移出吧!所以他恢復(fù)了之前的顏色。

結(jié)束語

好了,關(guān)于 threejs 的基本操作就這些,后期可能還會寫一篇關(guān)于加載第三方模型的博文以及實現(xiàn)鼠標(biāo)移動到模型上面顯示 tip 標(biāo)簽的功能

到此這篇關(guān)于threejs在vue項目中的基本使用的文章就介紹到這了,更多相關(guān)threejs在vue的基本使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

代碼資料

我是????. 的 gitee

相關(guān)文章

最新評論

亚洲熟妇久久无码精品| chinese国产盗摄一区二区 | 亚洲中文精品人人免费| 日韩激情文学在线视频| 天天干天天日天天谢综合156| 久久久久久久精品老熟妇| 国产午夜激情福利小视频在线| 风流唐伯虎电视剧在线观看 | 亚洲第17页国产精品| 三级黄色亚洲成人av| v888av在线观看视频| a v欧美一区=区三区| 婷婷综合亚洲爱久久| 99视频精品全部15| 91超碰青青中文字幕| 又粗又硬又猛又黄免费30| 久久尻中国美女视频| 亚洲免费国产在线日韩| 伊人开心婷婷国产av| 国产视频一区二区午夜| 久久久超爽一二三av| 亚洲熟女久久久36d| 日韩人妻在线视频免费| 日本人妻欲求不满中文字幕| 中文字幕在线视频一区二区三区 | 欧美日本在线视频一区| 日本欧美视频在线观看三区| 性感美女高潮视频久久久| 亚洲午夜精品小视频| 日本一区美女福利视频| 日韩欧美一级精品在线观看| 91精品国产高清自在线看香蕉网| 中国熟女一区二区性xx| 欧美精品一二三视频| 2022天天干天天操| 成人av免费不卡在线观看| 一区二区在线观看少妇| 一区二区三区的久久的蜜桃的视频| 91人妻精品一区二区久久| 天天日天天舔天天射进去| 9l人妻人人爽人人爽| 亚洲专区激情在线观看视频| 99国产精品窥熟女精品| gav成人免费播放| 人妻无码色噜噜狠狠狠狠色| 视频一区 二区 三区 综合| 国产va精品免费观看| jiujiure精品视频在线| 天天躁夜夜躁日日躁a麻豆| 好吊视频—区二区三区| 只有精品亚洲视频在线观看| 91快播视频在线观看| 美女大bxxxx内射| 伊人开心婷婷国产av| 国产午夜激情福利小视频在线| 日韩精品激情在线观看| 欧美成一区二区三区四区| 男生用鸡操女生视频动漫| 美女操逼免费短视频下载链接| 国产精品一二三不卡带免费视频 | 抽查舔水白紧大视频| 亚洲精品无码久久久久不卡| 欧美综合婷婷欧美综合| 在线国产精品一区二区三区| 国产午夜福利av导航| 国产成人精品av网站| 国产精品日韩欧美一区二区| 国产精品手机在线看片| 在线免费观看av日韩| 亚洲成人午夜电影在线观看| www日韩a级s片av| 亚洲超碰97人人做人人爱| 青青草原网站在线观看| 一区二区三区日韩久久| 最新91精品视频在线| 午夜在线观看一区视频| 91中文字幕免费在线观看| 欧美亚洲免费视频观看| 午夜免费观看精品视频| 天天日天天干天天干天天日| 男女之间激情网午夜在线| 国产+亚洲+欧美+另类| 在线免费视频 自拍| 天天干狠狠干天天操| rct470中文字幕在线| 不卡日韩av在线观看| 极品性荡少妇一区二区色欲| 91久久综合男人天堂| 丝袜美腿视频诱惑亚洲无| 成人18禁网站在线播放| 任你操视频免费在线观看| 91大屁股国产一区二区| 不卡一区一区三区在线| 99热国产精品666| 国产刺激激情美女网站| 人妻少妇av在线观看| 欧美综合婷婷欧美综合| 亚国产成人精品久久久| 免费岛国喷水视频在线观看 | 天天干天天操天天摸天天射| 日本熟女精品一区二区三区| 可以免费看的www视频你懂的| 亚洲综合图片20p| 老司机99精品视频在线观看| 日日爽天天干夜夜操| 伊人综合aⅴ在线网| 可以免费看的www视频你懂的| avjpm亚洲伊人久久| 93视频一区二区三区| 久久综合老鸭窝色综合久久| 欧美精品中文字幕久久二区| 亚洲视频乱码在线观看| 中文字幕国产专区欧美激情| 在线观看视频网站麻豆| 久久久超爽一二三av| 蜜臀av久久久久蜜臀av麻豆| 91麻豆精品久久久久| 521精品视频在线观看| 久久久制服丝袜中文字幕| 久久h视频在线观看| 午夜久久久久久久99| 成年人该看的视频黄免费| 精品欧美一区二区vr在线观看| 亚洲成人免费看电影| 中文乱理伦片在线观看| 国产精品久久久久久美女校花| 99精品视频在线观看免费播放| 动漫美女的小穴视频| 偷拍自拍国产在线视频| 国产黄色a级三级三级三级| 精品人妻伦一二三区久 | 精品一线二线三线日本| 老熟妇凹凸淫老妇女av在线观看 | 激情人妻校园春色亚洲欧美| 端庄人妻堕落挣扎沉沦| 91人妻精品一区二区久久| 青青草国内在线视频精选| 免费在线观看视频啪啪| 毛茸茸的大外阴中国视频| 风流唐伯虎电视剧在线观看| 东京干手机福利视频| 天天射,天天操,天天说| 天天综合天天综合天天网| 揄拍成人国产精品免费看视频| 国产精品3p和黑人大战| 久精品人妻一区二区三区 | 亚洲美女高潮喷浆视频| 亚洲男人在线天堂网| 欧美美女人体视频一区| 亚洲国产在线精品国偷产拍| 天天日天天做天天日天天做| 中文字幕乱码人妻电影| 国产激情av网站在线观看| 亚洲美女高潮喷浆视频| 97青青青手机在线视频 | 国产在线自在拍91国语自产精品| 国产高清女主播在线| 亚洲精品无码色午夜福利理论片| 日本性感美女视频网站| 成人蜜桃美臀九一一区二区三区| 蜜桃专区一区二区在线观看| 中文字幕,亚洲人妻| 欧美亚洲一二三区蜜臀| 天堂av在线最新版在线| sspd152中文字幕在线| 啪啪啪18禁一区二区三区| 天天操天天污天天射| 91色秘乱一区二区三区| 岛国毛片视频免费在线观看| 任你操视频免费在线观看| 天天日天天日天天擦| 无码中文字幕波多野不卡| 国产精品日韩欧美一区二区| 男生舔女生逼逼的视频| 一区国内二区日韩三区欧美| 午夜在线精品偷拍一区二| 亚洲高清免费在线观看视频| 特大黑人巨大xxxx| 91免费放福利在线观看| 日韩一个色综合导航| 丝袜国产专区在线观看| 男女之间激情网午夜在线| 熟女人妻一区二区精品视频| 自拍偷拍,中文字幕| 丰满的子国产在线观看| 大香蕉大香蕉大香蕉大香蕉大香蕉| 玩弄人妻熟妇性色av少妇| tube69日本少妇| 在线观看欧美黄片一区二区三区| 五月色婷婷综合开心网4438| 国产一区二区神马久久| 亚洲精品国产久久久久久| 91精品啪在线免费| 久久久精品精品视频视频| 久久久久91精品推荐99| 啪啪啪啪啪啪啪啪av| 亚洲午夜福利中文乱码字幕 | 97青青青手机在线视频 | 新97超碰在线观看| 中文字幕高清资源站| 人人妻人人爱人人草| 国产精彩福利精品视频| 91久久综合男人天堂| 成人网18免费视频版国产| 自拍偷拍,中文字幕| 精品日产卡一卡二卡国色天香| 国产伊人免费在线播放| 天天射夜夜操狠狠干| 任我爽精品视频在线播放| 亚洲视频在线视频看视频在线| 日辽宁老肥女在线观看视频| 欧美日韩v中文在线| 日本午夜福利免费视频| 国产高清在线观看1区2区| 天堂av在线最新版在线| 好男人视频在线免费观看网站| 熟女人妻在线中出观看完整版| 中文字幕av男人天堂| 超污视频在线观看污污污 | 欧美精品中文字幕久久二区| 日本少妇的秘密免费视频| 青青操免费日综合视频观看| 日本中文字幕一二区视频| 哥哥姐姐综合激情小说| 久精品人妻一区二区三区| 91久久综合男人天堂| 国内自拍第一页在线观看| 亚洲图片欧美校园春色| 久草视频中文字幕在线观看| 日本少妇人妻xxxxxhd| 亚洲国产欧美一区二区丝袜黑人| 偷拍美女一区二区三区| 男人的天堂av日韩亚洲| 性欧美激情久久久久久久| 中文字幕一区二区亚洲一区| 日本少妇在线视频大香蕉在线观看 | 粉嫩av蜜乳av蜜臀| 中文字幕AV在线免费看 | 中文字幕综合一区二区| 91欧美在线免费观看| 欧美视频不卡一区四区| 熟女视频一区,二区,三区| 亚洲欧美综合另类13p| 国产aⅴ一线在线观看| 国产精品伦理片一区二区| 老熟妇凹凸淫老妇女av在线观看| 亚洲女人的天堂av| 亚洲综合乱码一区二区| 欧美精产国品一二三产品价格 | 日韩欧美高清免费在线| 在线国产精品一区二区三区| 欧美一区二区三区激情啪啪啪| 欧美美女人体视频一区| 日韩亚国产欧美三级涩爱| 亚洲变态另类色图天堂网| 亚洲视频在线观看高清| 精品一线二线三线日本| 亚洲国产欧美一区二区三区久久| yellow在线播放av啊啊啊| 精品国产午夜视频一区二区| 中文字幕人妻熟女在线电影| 老鸭窝日韩精品视频观看| 四虎永久在线精品免费区二区| 国产综合视频在线看片| 超黄超污网站在线观看| 久久这里只有精彩视频免费| 天天躁日日躁狠狠躁躁欧美av | 日韩伦理短片在线观看| 中文字幕奴隷色的舞台50| avjpm亚洲伊人久久| 在线观看欧美黄片一区二区三区 | 日本免费午夜视频网站| 男生舔女生逼逼视频| 亚洲一级 片内射视正片| 欧美黑人性暴力猛交喷水| 五十路人妻熟女av一区二区| 久久丁香婷婷六月天| 亚洲精品三级av在线免费观看| 香港一级特黄大片在线播放| 亚洲欧美一区二区三区电影| 欧美亚洲国产成人免费在线 | 天天做天天干天天舔| 国产精彩对白一区二区三区| 91av中文视频在线| 日韩激情文学在线视频| 久久精品亚洲国产av香蕉| 骚逼被大屌狂草视频免费看| 亚洲精品午夜aaa久久| 91精品国产麻豆国产| 日本午夜久久女同精女女| 亚洲av人人澡人人爽人人爱 | av中文字幕国产在线观看| 国产精品人妻熟女毛片av久| 97精品成人一区二区三区| 久久亚洲天堂中文对白| 日韩写真福利视频在线观看| 999久久久久999| 精品成人啪啪18免费蜜臀| 五十路老熟女码av| 第一福利视频在线观看| 国产午夜亚洲精品麻豆| 男生舔女生逼逼的视频| 青春草视频在线免费播放| 亚洲精品国产综合久久久久久久久| 夜夜嗨av一区二区三区中文字幕| 欧洲国产成人精品91铁牛tv| 久久精品国产23696| 婷婷五月亚洲综合在线| 日本人妻欲求不满中文字幕| 青青草成人福利电影| 国产精品成人xxxx| 日本少妇高清视频xxxxx | 亚洲天堂精品久久久| 蜜桃色婷婷久久久福利在线| 欧美一区二区三区久久久aaa| av网址在线播放大全| 97人妻人人澡爽人人精品| 97人人模人人爽人人喊| 女生被男生插的视频网站| 国产一区自拍黄视频免费观看| 午夜精品一区二区三区福利视频| 亚洲精品ww久久久久久| 亚洲av日韩精品久久久| 97国产在线观看高清| 最新中文字幕乱码在线| 福利午夜视频在线观看| 99久久99一区二区三区| 亚洲av自拍天堂网| 欧美国产亚洲中英文字幕| 精品久久久久久久久久久久人妻| 青青青青青青草国产| 国产aⅴ一线在线观看| 蜜桃视频17c在线一区二区| 欧美亚洲牲夜夜综合久久| 欧美日本在线观看一区二区| 激情人妻校园春色亚洲欧美| 在线新三级黄伊人网| 91老熟女连续高潮对白| 日本一区二区三区免费小视频| 人人超碰国字幕观看97| 欧美一级色视频美日韩| 国产精彩福利精品视频| 日韩三级黄色片网站| 啊啊好大好爽啊啊操我啊啊视频| 国产精品人妻66p| 9色精品视频在线观看| 中国视频一区二区三区| 免费成人va在线观看| gav成人免费播放| 色噜噜噜噜18禁止观看| 人妻少妇av在线观看| 国产熟妇一区二区三区av| 久草电影免费在线观看| 国产亚洲国产av网站在线| 在线视频国产欧美日韩| 一区二区三区在线视频福利| 精品一线二线三线日本| 国产午夜福利av导航| 美女小视频网站在线| 精品高跟鞋丝袜一区二区| 亚洲伊人av天堂有码在线| 欧美第一页在线免费观看视频| 91快播视频在线观看| 亚洲国产40页第21页| av成人在线观看一区| 2021最新热播中文字幕| 不卡日韩av在线观看| 精品久久久久久久久久中文蒉| 看一级特黄a大片日本片黑人| 天美传媒mv视频在线观看| 欧美va亚洲va天堂va| 中文字幕亚洲久久久| av手机在线观播放网站| 国产麻豆剧传媒精品国产av蜜桃| 青青热久免费精品视频在线观看| 亚洲精品无码色午夜福利理论片| 色婷婷精品大在线观看| 精品一区二区亚洲欧美| heyzo蜜桃熟女人妻| 综合色区亚洲熟妇shxstz| 91综合久久亚洲综合| 天天草天天色天天干| 国产成人精品亚洲男人的天堂| 精品区一区二区三区四区人妻| www天堂在线久久| 日韩精品中文字幕播放| 欧美乱妇无乱码一区二区| 人妻无码色噜噜狠狠狠狠色| 日日摸夜夜添夜夜添毛片性色av| 最新日韩av传媒在线| 日韩一个色综合导航| 91人妻精品久久久久久久网站| 日韩成人性色生活片| 制服丝袜在线人妻中文字幕| 精品一区二区三区欧美| 日韩中文字幕精品淫| 国产精品视频欧美一区二区| 少妇高潮无套内谢麻豆| 亚洲成人国产av在线| 人人人妻人人澡人人| 国产精品成人xxxx| 精品一区二区三区三区色爱| 亚洲免费av在线视频| 国产精品黄片免费在线观看| 黄色资源视频网站日韩| 97国产福利小视频合集| 97精品视频在线观看| 色av色婷婷人妻久久久精品高清| 99视频精品全部15| 欧美女同性恋免费a| 婷婷色国产黑丝少妇勾搭AV| 国产乱子伦一二三区| 亚洲中文字幕人妻一区| 成年人中文字幕在线观看| 久久久精品999精品日本| 福利片区一区二体验区| 久久久久久cao我的性感人妻 | 阴茎插到阴道里面的视频| 亚洲蜜臀av一区二区三区九色| 亚洲免费在线视频网站| 宅男噜噜噜666免费观看| 这里只有精品双飞在线播放| 成人亚洲国产综合精品| 国产精品亚洲а∨天堂免| 91国内视频在线观看| 一区二区三区另类在线 | 班长撕开乳罩揉我胸好爽| 大学生A级毛片免费视频| 经典av尤物一区二区| 男人天堂色男人av| 天天干天天操天天摸天天射| 欧美xxx成人在线| 亚洲 中文 自拍 无码| 中文字幕第1页av一天堂网| 不卡一不卡二不卡三| 在线免费观看靠比视频的网站| 日本欧美视频在线观看三区| 少妇被强干到高潮视频在线观看| 加勒比视频在线免费观看| 亚洲乱码中文字幕在线| 狠狠躁夜夜躁人人爽天天天天97| av网站色偷偷婷婷网男人的天堂| 欧美色呦呦最新网址| 丰满少妇人妻xxxxx| 中文字幕第三十八页久久| 国产美女午夜福利久久| 中文字幕人妻三级在线观看| 婷婷久久一区二区字幕网址你懂得| 2020国产在线不卡视频| 蜜桃臀av蜜桃臀av| 伊人成人在线综合网| 欧美特色aaa大片| 国产1区,2区,3区| av资源中文字幕在线观看| 中文字幕乱码av资源| 75国产综合在线视频| 女生被男生插的视频网站| 中文字幕奴隷色的舞台50| 2021久久免费视频| jiuse91九色视频| 国内自拍第一页在线观看| 香港三日本三韩国三欧美三级| 久久久精品精品视频视频| 久久人人做人人妻人人玩精品vr| 久草视频 久草视频2| 免费无码人妻日韩精品一区二区| 欧美视频不卡一区四区| 欧美成人综合色在线噜噜| 国产九色91在线观看精品| 2o22av在线视频| 欧美日韩精品永久免费网址| 成人伊人精品色xxxx视频| 日本丰满熟妇BBXBBXHD| 午夜精品一区二区三区4| 美女吃鸡巴操逼高潮视频| 欧美成人一二三在线网| 91精品综合久久久久3d动漫| 亚洲无线观看国产高清在线| 成人国产小视频在线观看| 91免费观看国产免费| 国产黄色大片在线免费播放| 三上悠亚和黑人665番号| 最后99天全集在线观看| 天天干天天搞天天摸| 国产精品一区二区av国| 97精品综合久久在线| 日韩国产乱码中文字幕| 国产精品手机在线看片| 2021年国产精品自拍| 精品一区二区三区在线观看| 欧美成人黄片一区二区三区| 97欧洲一区二区精品免费| 成人av电影免费版| 韩国男女黄色在线观看| 亚洲va天堂va国产va久| 淫秽激情视频免费观看| 日本特级片中文字幕| 影音先锋女人av噜噜色| 黄片大全在线观看观看| 久久精品国产亚洲精品166m| 亚洲1卡2卡三卡4卡在线观看| 日本一二三中文字幕| 激情综合治理六月婷婷| 超污视频在线观看污污污 | 青青热久免费精品视频在线观看| 青青草原色片网站在线观看| 国产卡一卡二卡三乱码手机| 欧美美女人体视频一区| 中文字幕高清资源站| 日本男女操逼视频免费看| 欧美国产亚洲中英文字幕| 国产品国产三级国产普通话三级| 成人综合亚洲欧美一区| 亚洲一区二区人妻av| 中文字日产幕乱六区蜜桃| 久久香蕉国产免费天天| 国产成人综合一区2区| 日曰摸日日碰夜夜爽歪歪| 日韩熟女系列一区二区三区| 国产精品自拍在线视频| 在线免费观看日本伦理| 少妇露脸深喉口爆吞精| 免费观看成年人视频在线观看| 自拍 日韩 欧美激情| 亚洲一区二区三区uij| 日韩a级黄色小视频| 高潮喷水在线视频观看| 可以在线观看的av中文字幕| 日本黄色特一级视频| 熟女人妻在线观看视频| 欧美色婷婷综合在线| av中文字幕在线观看第三页| 人妻熟女中文字幕aⅴ在线| 丝袜长腿第一页在线| 久久人人做人人妻人人玩精品vr | 日本少妇精品免费视频| 93视频一区二区三区| 一区二区三区四区视频在线播放| 欧美久久一区二区伊人| 精品国产成人亚洲午夜| brazzers欧熟精品系列| 五月婷婷在线观看视频免费 | 国产精品久久久久国产三级试频| 伊人精品福利综合导航| 97超碰最新免费在线观看| 久久久精品999精品日本| 中文字幕免费在线免费| 亚洲的电影一区二区三区 | 天天摸天天干天天操科普| 最新国产精品网址在线观看| 国产视频一区二区午夜| 日本人妻欲求不满中文字幕| 都市家庭人妻激情自拍视频| 欧美特色aaa大片| 亚洲青青操骚货在线视频| 中文字幕日韩无敌亚洲精品| 日噜噜噜夜夜噜噜噜天天噜噜噜| 日本高清撒尿pissing| 在线免费观看黄页视频| 社区自拍揄拍尻屁你懂的| 国语对白xxxx乱大交| 2021国产一区二区| 天天干天天啪天天舔| 精品国产乱码一区二区三区乱| 天美传媒mv视频在线观看| 欧洲欧美日韩国产在线| 一区二区久久成人网| 欧美精品一二三视频| 天天干天天日天天谢综合156| 欧美特级特黄a大片免费| 国产 在线 免费 精品| yellow在线播放av啊啊啊| 91试看福利一分钟| 欧美乱妇无乱码一区二区| 青草亚洲视频在线观看| 免费人成黄页网站在线观看国产| 国产麻豆精品人妻av| 国产第一美女一区二区三区四区| 成人24小时免费视频| 好吊视频—区二区三区| 色偷偷伊人大杳蕉综合网| 亚洲男人在线天堂网| 久久久久久9999久久久久| 中文字幕 码 在线视频| 在线视频自拍第三页| 5528327男人天堂| 亚洲午夜电影在线观看| 成人精品视频99第一页| 成人精品在线观看视频| AV无码一区二区三区不卡| 久久热久久视频在线观看| 免费在线观看污污视频网站| 91天堂精品一区二区| 欧美麻豆av在线播放| 成年人黄视频在线观看| 日本脱亚入欧是指什么| 91九色porny国产蝌蚪视频| 亚洲国产中文字幕啊啊啊不行了| 午夜久久久久久久精品熟女| 少妇与子乱在线观看| 国产三级影院在线观看| 亚洲男人在线天堂网| 护士特殊服务久久久久久久| 91精品资源免费观看| 搡老熟女一区二区在线观看| free性日本少妇| 啊啊好大好爽啊啊操我啊啊视频 | 2021久久免费视频| 欧美日本在线观看一区二区| 77久久久久国产精产品| 久久这里只有精品热视频| 巨乳人妻日下部加奈被邻居中出 | 偷青青国产精品青青在线观看| 51精品视频免费在线观看| 天天干天天啪天天舔| 国产精品黄大片在线播放| 中文字幕 亚洲av| 亚洲中文字幕国产日韩| 欧美日韩在线精品一区二区三| 天天摸天天日天天操| 夜女神免费福利视频| 伊人成人在线综合网| 91国产资源在线视频| 少妇人妻真实精品视频| 中文字幕日韩精品日本| 国产片免费观看在线观看| 国产janese在线播放| 亚洲综合另类精品小说| 国产熟妇一区二区三区av| yellow在线播放av啊啊啊| 老有所依在线观看完整版| 久久99久久99精品影院| 2021国产一区二区| 久久www免费人成一看片| 亚洲人妻视频在线网| 性感美女高潮视频久久久| 精品suv一区二区69| 在线 中文字幕 一区| 最新激情中文字幕视频| 丰满的继坶3中文在线观看| 青青青国产免费视频| 青青青艹视频在线观看| 五色婷婷综合狠狠爱| 午夜场射精嗯嗯啊啊视频| 91九色porny国产在线| 午夜在线一区二区免费| 成人国产小视频在线观看| av亚洲中文天堂字幕网| 午夜精品福利91av| 天天日天天干天天插舔舔| 色综合久久无码中文字幕波多| 综合色区亚洲熟妇shxstz| 精品一区二区三区三区88| 国产综合高清在线观看| 亚洲av色图18p| 青青青青青青青青青青草青青| 欧美中文字幕一区最新网址| 亚洲天堂精品久久久| 欧美亚洲国产成人免费在线| 亚洲伊人av天堂有码在线| 最新中文字幕免费视频| 中文字幕1卡1区2区3区| 欧美va不卡视频在线观看| 青青草人人妻人人妻| 天天插天天色天天日| 999久久久久999| 特级无码毛片免费视频播放| 啪啪啪啪啪啪啪啪av| 国产黄色片在线收看| 女蜜桃臀紧身瑜伽裤| 丝袜长腿第一页在线| 2021国产一区二区| caoporn蜜桃视频| 538精品在线观看视频| 婷婷激情四射在线观看视频| 3337p日本欧洲大胆色噜噜| 91精品视频在线观看免费| 嫩草aⅴ一区二区三区| 欧亚日韩一区二区三区观看视频| 18禁网站一区二区三区四区| 亚洲av色香蕉一区二区三区| 久久热久久视频在线观看| 欧洲黄页网免费观看| 国内精品在线播放第一页| v888av在线观看视频| 日韩欧美国产一区ab| 91中文字幕免费在线观看| av乱码一区二区三区| 成人资源在线观看免费官网| 青青草在观免费国产精品| 天堂中文字幕翔田av| 成人在线欧美日韩国产| 91精品一区二区三区站长推荐| 一个色综合男人天堂| 国产成人精品一区在线观看| 亚洲 中文字幕在线 日韩| 人妻丝袜精品中文字幕| 国产黄色a级三级三级三级| 欧美伊人久久大香线蕉综合| 成人网18免费视频版国产| 91福利视频免费在线观看| 国产卡一卡二卡三乱码手机| 男人操女人的逼免费视频| 中文字幕无码日韩专区免费| 亚洲一区制服丝袜美腿| 亚洲自拍偷拍综合色| 亚洲精品国产久久久久久| 久久农村老妇乱69系列| 免费在线观看视频啪啪| av视网站在线观看| 十八禁在线观看地址免费| 日韩精品电影亚洲一区| 久久久久久九九99精品| 亚洲午夜电影之麻豆| 国产一区二区久久久裸臀| 久久永久免费精品人妻专区 | 亚洲一级特黄特黄黄色录像片| 69精品视频一区二区在线观看| 少妇与子乱在线观看| 91国语爽死我了不卡| 在线免费视频 自拍| 大屁股肉感人妻中文字幕在线| 亚洲高清国产一区二区三区| 午夜精彩视频免费一区| 国产密臀av一区二区三| 无码日韩人妻精品久久| 国产综合视频在线看片| 亚洲一区av中文字幕在线观看| 欧美精品久久久久久影院| 大陆胖女人与丈夫操b国语高清| 五十路熟女人妻一区二| 亚洲无线观看国产高清在线| 中国黄片视频一区91| av中文字幕电影在线看| 亚洲卡1卡2卡三卡四老狼| 人妻凌辱欧美丰满熟妇| 男生舔女生逼逼视频| 超黄超污网站在线观看| 欧美一区二区三区在线资源| 国产高清女主播在线| 特大黑人巨大xxxx| 无码国产精品一区二区高潮久久4| 3D动漫精品啪啪一区二区下载| 91国内视频在线观看| 国产精品大陆在线2019不卡| 亚洲国产欧美一区二区三区…| 大陆胖女人与丈夫操b国语高清| 青青草视频手机免费在线观看| 91精品一区二区三区站长推荐| 宅男噜噜噜666国产| 中文字幕人妻av在线观看| 欧美成一区二区三区四区| 97色视频在线观看| 成人av免费不卡在线观看| 天天干夜夜操啊啊啊| 很黄很污很色的午夜网站在线观看| 久草免费人妻视频在线| 九色porny九色9l自拍视频| 中文字幕高清在线免费播放| 美女福利写真在线观看视频| 国产高清精品一区二区三区| 做爰视频毛片下载蜜桃视频1| 久精品人妻一区二区三区| 国产真实灌醉下药美女av福利| 亚洲精品av在线观看| 青青草原色片网站在线观看| 伊人网中文字幕在线视频| 老司机99精品视频在线观看 | 中文字幕国产专区欧美激情 | 色婷婷综合激情五月免费观看 | 1024久久国产精品| 在线国产中文字幕视频| 在线观看视频 你懂的| 在线免费91激情四射 | 人妻激情图片视频小说| 亚洲av日韩精品久久久| 一区二区三区麻豆福利视频| 熟女视频一区,二区,三区| 国产日韩精品电影7777| 中文字幕在线第一页成人 | 在线观看av2025| 欧美成人黄片一区二区三区| 另类av十亚洲av| 国产精品亚洲а∨天堂免| 亚洲va欧美va人人爽3p| 一区二区三区蜜臀在线| 插小穴高清无码中文字幕| 极品丝袜一区二区三区| 日本一二三中文字幕| 无码精品一区二区三区人| 日本高清成人一区二区三区| 成年女人免费播放视频| 又粗又长 明星操逼小视频| 人妻丝袜精品中文字幕| 国产精品视频男人的天堂| 女同互舔一区二区三区| 免费一级特黄特色大片在线观看| 爱爱免费在线观看视频| 日本在线一区二区不卡视频| 毛茸茸的大外阴中国视频| 欧美一区二区中文字幕电影| 婷婷久久久久深爱网| 蜜臀av久久久久蜜臀av麻豆| 国产极品美女久久久久久| 人妻凌辱欧美丰满熟妇| 色伦色伦777国产精品| 粗大的内捧猛烈进出爽大牛汉子| 亚洲伊人久久精品影院一美女洗澡 | 97人妻总资源视频| 亚洲卡1卡2卡三卡四老狼| 欧美偷拍亚洲一区二区| 日韩成人性色生活片| sejizz在线视频| 久久永久免费精品人妻专区| 久久www免费人成一看片| 中文字幕人妻三级在线观看| 加勒比视频在线免费观看| 欧美一区二区三区久久久aaa| 天天日天天舔天天射进去| 伊人开心婷婷国产av| 亚洲乱码中文字幕在线| 大陆av手机在线观看| 日本脱亚入欧是指什么| 丰满的继坶3中文在线观看| 久久久久久99国产精品| 中国把吊插入阴蒂的视频| 国产妇女自拍区在线观看| 久草视频在线一区二区三区资源站 | 美女大bxxxx内射| 麻豆性色视频在线观看| 岛国青草视频在线观看| 久久久久久99国产精品| 11久久久久久久久久久| 可以在线观看的av中文字幕| 少妇系列一区二区三区视频| 视频 国产 精品 熟女 | 国产精品手机在线看片| 亚洲一区二区三区精品视频在线| 免费看高清av的网站| 久碰精品少妇中文字幕av| 成年人黄视频在线观看| 免费岛国喷水视频在线观看| 日韩中文字幕在线播放第二页| 欧美一区二区三区久久久aaa| 亚洲成高清a人片在线观看| 成人av亚洲一区二区| 无码日韩人妻精品久久| 丝袜肉丝一区二区三区四区在线| 国产在线观看免费人成短视频| 中文字幕高清免费在线人妻| 中国熟女@视频91| 粉嫩av蜜乳av蜜臀| 午夜在线精品偷拍一区二| 亚洲久久午夜av一区二区| 99婷婷在线观看视频| 天天夜天天日天天日| 国产精品一区二区av国| 人人妻人人人操人人人爽| 国产高清在线观看1区2区| 亚洲欧美激情中文字幕| 九一传媒制片厂视频在线免费观看 | 中文字幕 码 在线视频| 中文字幕无码一区二区免费| 亚洲一区二区三区uij| 亚洲va国产va欧美va在线| 欧美成人综合色在线噜噜| 青青尤物在线观看视频网站| 天堂av在线官网中文| 日韩中文字幕在线播放第二页| 91自产国产精品视频| 人人妻人人澡欧美91精品| 沙月文乃人妻侵犯中文字幕在线| 亚洲福利天堂久久久久久| 亚洲免费va在线播放| 午夜激情久久不卡一区二区 | 欧美爆乳肉感大码在线观看| 日本少妇精品免费视频| 久久这里只有精彩视频免费| 国产美女精品福利在线| 不戴胸罩引我诱的隔壁的人妻| 日韩熟女系列一区二区三区| 日本18禁久久久久久| av乱码一区二区三区| 中文字幕乱码人妻电影| 韩国黄色一级二级三级| 日韩熟女av天堂系列| 精品久久久久久久久久久99| 三上悠亚和黑人665番号| 亚洲精品精品国产综合| 超污视频在线观看污污污| 国产无遮挡裸体免费直播视频| 亚洲推理片免费看网站| 三上悠亚和黑人665番号| 操操网操操伊剧情片中文字幕网| 欧美xxx成人在线| av森泽佳奈在线观看| 久久久久久久久久一区二区三区 | 丰满少妇人妻xxxxx| 任你操视频免费在线观看| 福利国产视频在线观看| 亚洲1区2区3区精华液| 日本精品美女在线观看| 国产大鸡巴大鸡巴操小骚逼小骚逼| 日韩成人综艺在线播放| 亚洲精品久久综合久| 欧美成人小视频在线免费看| 中文 成人 在线 视频| 自拍偷拍 国产资源| 美味人妻2在线播放| 色哟哟国产精品入口| 孕妇奶水仑乱A级毛片免费看| 成人影片高清在线观看 | 午夜精品九一唐人麻豆嫩草成人| 少妇被强干到高潮视频在线观看| 黄片三级三级三级在线观看| 偷拍自拍亚洲视频在线观看| 熟女人妻一区二区精品视频| gay gay男男瑟瑟在线网站| 白嫩白嫩美女极品国产在线观看| 亚洲 人妻 激情 中文| www骚国产精品视频| 视频在线免费观看你懂得| 日本一本午夜在线播放| 亚洲av无硬久久精品蜜桃| 57pao国产一区二区| 日本少妇人妻xxxxxhd| 天堂av狠狠操蜜桃| www,久久久,com| 91超碰青青中文字幕| 亚洲一区二区三区在线高清| 久久久人妻一区二区| 亚洲va欧美va人人爽3p| 在线观看欧美黄片一区二区三区 | 无码中文字幕波多野不卡| sspd152中文字幕在线| 人妻另类专区欧美制服| 白白操白白色在线免费视频| 日日摸夜夜添夜夜添毛片性色av| 女同久久精品秋霞网| 熟女妇女老妇一二三区| 57pao国产一区二区| 国产九色91在线观看精品| 天堂资源网av中文字幕| 欧美日韩一级黄片免费观看| 真实国模和老外性视频| 熟妇一区二区三区高清版| 亚洲精品无码久久久久不卡| 91www一区二区三区| 操的小逼流水的文章| 日韩美女综合中文字幕pp| 中文字幕日韩精品就在这里| 天堂av狠狠操蜜桃| 国产午夜亚洲精品不卡在线观看| 国产午夜无码福利在线看| 欧美特色aaa大片| 中文字幕日韩精品就在这里| 一色桃子久久精品亚洲 | 婷婷激情四射在线观看视频| 亚洲 国产 成人 在线| 国产精品久久9999| 揄拍成人国产精品免费看视频| 国产精品一区二区三区蜜臀av | 亚洲一区二区三区五区| 国产又色又刺激在线视频 | 40道精品招牌菜特色| 欧美综合婷婷欧美综合| 亚洲图库另类图片区| 国产精品亚洲а∨天堂免| 婷婷久久久综合中文字幕| 51国产成人精品视频| 精品一区二区三区在线观看| 999久久久久999| 午夜精品福利91av| 无码精品一区二区三区人| 综合精品久久久久97| 欧美地区一二三专区| 久久久噜噜噜久久熟女av| 红桃av成人在线观看| 亚洲精品色在线观看视频| 看一级特黄a大片日本片黑人| 亚洲精品av在线观看| 夏目彩春在线中文字幕| 女生被男生插的视频网站| 啊啊啊想要被插进去视频| 青草青永久在线视频18| 天堂av在线官网中文| 日韩欧美中文国产在线| 蜜桃精品久久久一区二区| 欧美女同性恋免费a| 性感美女诱惑福利视频| 午夜在线一区二区免费| 欧美精品免费aaaaaa| av乱码一区二区三区| 成人综合亚洲欧美一区| 不卡精品视频在线观看| 天天摸天天干天天操科普| 亚洲av一妻不如妾| 国产精品人妻66p| 欧美日韩人妻久久精品高清国产 | 亚洲国产中文字幕啊啊啊不行了 | 97精品人妻一区二区三区精品| 亚洲av第国产精品| 国产伊人免费在线播放| 天天摸天天干天天操科普| 一区二区三区四区视频在线播放 | 午夜极品美女福利视频| 韩国一级特黄大片做受| 日本熟妇一区二区x x| av在线免费观看亚洲天堂| 最新日韩av传媒在线| 一区二区三区另类在线| 国产91嫩草久久成人在线视频| 天天摸天天干天天操科普| 91精品综合久久久久3d动漫 | 插小穴高清无码中文字幕| av在线播放国产不卡| 在线免费观看av日韩| 偷拍美女一区二区三区| 天天干夜夜操啊啊啊| 久久这里只有精品热视频 | 福利视频网久久91| 岛国青草视频在线观看| 亚洲成av人无码不卡影片一| 亚洲人妻国产精品综合| 国产乱子伦一二三区| 成人精品在线观看视频| av欧美网站在线观看| 天堂中文字幕翔田av| 天天操夜夜骑日日摸| 香港一级特黄大片在线播放| 欧美成人综合视频一区二区| 人妻3p真实偷拍一二区| 哥哥姐姐综合激情小说| 亚洲伊人久久精品影院一美女洗澡| 精品久久久久久高潮| 久久机热/这里只有| 国产精品自拍在线视频| 天天躁日日躁狠狠躁躁欧美av| 婷婷激情四射在线观看视频| 成人H精品动漫在线无码播放| 一个人免费在线观看ww视频 | 中字幕人妻熟女人妻a62v网| 香港一级特黄大片在线播放| av大全在线播放免费| 欧美成人猛片aaaaaaa| 色97视频在线播放| 新97超碰在线观看| 黄色的网站在线免费看 | 伊人精品福利综合导航| 和邻居少妇愉情中文字幕| 午夜福利资源综合激情午夜福利资 | 97人妻色免费视频| 亚洲欧美日韩视频免费观看| 欧美日韩熟女一区二区三区| 91 亚洲视频在线观看| 中文字幕第三十八页久久| 免费观看理论片完整版| 黑人巨大精品欧美视频| 在线视频这里只有精品自拍| 亚洲中文字幕乱码区| 国产成人精品亚洲男人的天堂| 91免费福利网91麻豆国产精品| 日本精品视频不卡一二三| 老司机免费福利视频网| 成人区人妻精品一区二视频| 国产亚洲欧美45p| 国产精品欧美日韩区二区| 在线免费观看亚洲精品电影| 又粗又长 明星操逼小视频| 国产精品三级三级三级| 欧美亚洲一二三区蜜臀| 青青操免费日综合视频观看| 91香蕉成人app下载| av在线shipin| 最近的中文字幕在线mv视频| 亚洲老熟妇日本老妇| eeuss鲁片一区二区三区| 在线免费观看日本伦理| 一区二区三区久久久91| 亚洲一级 片内射视正片| 女同性ⅹxx女同h偷拍| 性色蜜臀av一区二区三区| 少妇一区二区三区久久久| 成人资源在线观看免费官网| 欧美日本在线视频一区| 黄片三级三级三级在线观看| 视频一区 视频二区 视频| 最新欧美一二三视频| 午夜国产福利在线观看| 国产亚洲视频在线二区| 在线视频国产欧美日韩| 蜜桃久久久久久久人妻| 一级A一级a爰片免费免会员| 大胸性感美女羞爽操逼毛片| 不卡精品视频在线观看| 国产性生活中老年人视频网站| 一二三区在线观看视频| 99热99re在线播放| 99热这里只有精品中文| 久久久久只精品国产三级| 老司机在线精品福利视频| 国产乱子伦一二三区| 精品视频一区二区三区四区五区| 欧美3p在线观看一区二区三区| av一区二区三区人妻| 在线视频国产欧美日韩| 国产97在线视频观看| 久草视频 久草视频2| 亚洲中文字幕人妻一区| 57pao国产一区二区| 国产在线免费观看成人| 国产白袜脚足J棉袜在线观看| 黄片三级三级三级在线观看| av网站色偷偷婷婷网男人的天堂| 天天干夜夜操天天舔| 免费看国产av网站| AV无码一区二区三区不卡| 成人综合亚洲欧美一区| 人人妻人人澡欧美91精品| 9色在线视频免费观看| 成人性黑人一级av| lutube在线成人免费看| 免费看国产又粗又猛又爽又黄视频| 欧美偷拍亚洲一区二区| 9色在线视频免费观看| 亚洲成人国产综合一区| 中文字幕在线观看国产片| 欧美区一区二区三视频| 久草电影免费在线观看| 性感美女高潮视频久久久| 99热色原网这里只有精品| 中文字幕+中文字幕| 天天日天天爽天天爽| 青青在线视频性感少妇和隔壁黑丝| 天天草天天色天天干| 久草电影免费在线观看| 国产亚洲精品欧洲在线观看| 69精品视频一区二区在线观看| 不卡精品视频在线观看| 亚洲精品色在线观看视频| 黄色成人在线中文字幕| 久久艹在线观看视频| 日韩美av高清在线| 黄色成年网站午夜在线观看| 自拍偷拍亚洲欧美在线视频| 亚洲一区二区激情在线| 免费十精品十国产网站| 成年美女黄网站18禁久久| asmr福利视频在线观看| 亚洲成人激情视频免费观看了| 欧美美女人体视频一区| 青青青青青操视频在线观看| 狍和女人的王色毛片| 大香蕉日本伊人中文在线| 久久久久久久99精品| 国产午夜亚洲精品麻豆| 少妇人妻真实精品视频| 亚洲成人午夜电影在线观看| 人妻素人精油按摩中出| 色偷偷伊人大杳蕉综合网| 欲乱人妻少妇在线视频裸| 欧美专区第八页一区在线播放| 午夜在线观看岛国av,com| 大香蕉大香蕉在线看| 18禁污污污app下载| 亚洲自拍偷拍精品网| 午夜久久久久久久99| 久久久久久九九99精品| av中文字幕在线观看第三页 | 天天操,天天干,天天射| 国产极品美女久久久久久| tube69日本少妇| 成人sm视频在线观看| 黄色成人在线中文字幕| 亚洲图片偷拍自拍区| 适合午夜一个人看的视频| 国产91精品拍在线观看| 自拍偷拍,中文字幕| 青青草在观免费国产精品| 亚洲综合在线观看免费| 精品av国产一区二区三区四区 | 国产精品探花熟女在线观看| 亚洲国产免费av一区二区三区| 人妻少妇亚洲精品中文字幕| 18禁美女羞羞免费网站| 日韩欧美一级aa大片| 亚洲精品国产在线电影| 天天操夜夜骑日日摸| 偷拍自拍国产在线视频| 天天操天天干天天插| 91福利视频免费在线观看| 2020av天堂网在线观看| 91片黄在线观看喷潮| mm131美女午夜爽爽爽| 国产成人一区二区三区电影网站| 久久久精品国产亚洲AV一| 在线视频这里只有精品自拍| 亚洲视频在线视频看视频在线| 夜夜嗨av蜜臀av| 国产精品成久久久久三级蜜臀av| 成人激情文学网人妻| 天天躁夜夜躁日日躁a麻豆| 日韩熟女av天堂系列| 清纯美女在线观看国产| 伊人精品福利综合导航| 亚洲精品一线二线在线观看| 日韩av有码中文字幕| 首之国产AV医生和护士小芳| 区一区二区三国产中文字幕| 国产精品亚洲а∨天堂免| 91麻豆精品秘密入口在线观看 | caoporm超碰国产| 欧美在线精品一区二区三区视频| 特一级特级黄色网片| 日韩午夜福利精品试看| 亚洲av日韩精品久久久| 亚洲高清免费在线观看视频| 中文字幕日韩精品日本| 日本高清成人一区二区三区| 亚洲国产成人最新资源| 精品区一区二区三区四区人妻| 色偷偷伊人大杳蕉综合网| 超碰97人人澡人人| 亚洲一区二区三区精品乱码| 黄色男人的天堂视频| 91免费福利网91麻豆国产精品| 毛茸茸的大外阴中国视频| 岳太深了紧紧的中文字幕| 亚洲Av无码国产综合色区| 国产乱弄免费视频观看| 国产大鸡巴大鸡巴操小骚逼小骚逼 | 99久久成人日韩欧美精品| 精品一区二区三区三区88 | av新中文天堂在线网址| 国产又粗又黄又硬又爽| 把腿张开让我插进去视频| 日本阿v视频在线免费观看| 热99re69精品8在线播放| 黄片三级三级三级在线观看| 欧美怡红院视频在线观看| 老有所依在线观看完整版| av无限看熟女人妻另类av| 国产美女午夜福利久久| 亚洲偷自拍高清视频| 老师啊太大了啊啊啊尻视频| 五月天中文字幕内射| 最新的中文字幕 亚洲| 熟女视频一区,二区,三区| 亚洲一区二区激情在线| 色狠狠av线不卡香蕉一区二区 | 日韩美在线观看视频黄| 社区自拍揄拍尻屁你懂的| 黄色在线观看免费观看在线| 99久久久无码国产精品性出奶水 | 夜夜嗨av蜜臀av| 91九色国产porny蝌蚪| 亚洲精品午夜久久久久| 久久亚洲天堂中文对白| 人人在线视频一区二区| 一区二区视频在线观看免费观看| 免费手机黄页网址大全| 一区国内二区日韩三区欧美| 韩国一级特黄大片做受| 一区二区三区四区五区性感视频| 亚洲一区二区久久久人妻| 真实国模和老外性视频| 欧美视频不卡一区四区| 少妇与子乱在线观看| 日韩无码国产精品强奸乱伦| 欧美亚洲国产成人免费在线| 蜜桃视频在线欧美一区| 欧美成人精品欧美一级黄色| 国产黄色大片在线免费播放| 国产精品福利小视频a| 大香蕉大香蕉在线有码 av| 久久久精品国产亚洲AV一| 80电影天堂网官网| 欧美交性又色又爽又黄麻豆| 欧美区一区二区三视频| 日本一区美女福利视频| 换爱交换乱高清大片| 久久精品美女免费视频| AV天堂一区二区免费试看| av高潮迭起在线观看| 欧美va不卡视频在线观看| av天堂中文字幕最新| 日韩加勒比东京热二区| 一区二区三区另类在线 | 人人人妻人人澡人人| 伊人综合aⅴ在线网| 啊啊啊想要被插进去视频| 一区二区三区的久久的蜜桃的视频 | 久久精品美女免费视频| 久久精品视频一区二区三区四区| 亚洲一区自拍高清免费视频| 日韩av大胆在线观看| 欧美黄色录像免费看的| av新中文天堂在线网址| 丰满的继坶3中文在线观看| 精品国产亚洲av一淫| 一个色综合男人天堂| 国内精品在线播放第一页| 男人靠女人的逼视频| 一级黄色片夫妻性生活| 在线免费观看99视频| 亚洲熟女久久久36d| 欧亚日韩一区二区三区观看视频| 人人妻人人澡欧美91精品| 99热国产精品666| 午夜精品福利一区二区三区p| 免费高清自慰一区二区三区网站| 午夜在线精品偷拍一区二| 又色又爽又黄的美女裸体| 免费看国产av网站| 久久麻豆亚洲精品av| 九色精品视频在线播放| 男女啪啪视频免费在线观看| 美女 午夜 在线视频| 青青青青青青草国产| 亚洲av极品精品在线观看| 夏目彩春在线中文字幕| 国产又粗又硬又猛的毛片视频| 这里有精品成人国产99| 国产激情av网站在线观看| 青青青青在线视频免费观看| 中文字幕亚洲久久久| 漂亮 人妻被中出中文| 免费黄色成人午夜在线网站| 欧美成人一二三在线网| 精品乱子伦一区二区三区免费播| 黄色成年网站午夜在线观看| 国产普通话插插视频| 91国内精品久久久久精品一| 国产一区二区视频观看| 中文字幕亚洲中文字幕| 91大屁股国产一区二区| 欧美偷拍亚洲一区二区| sejizz在线视频| 在线播放国产黄色av| asmr福利视频在线观看| 人妻丝袜诱惑我操她视频| 免费在线福利小视频| 精品一线二线三线日本| 免费在线看的黄网站| 国产午夜无码福利在线看| 午夜在线观看岛国av,com| 97超碰免费在线视频| japanese五十路熟女熟妇| 91一区精品在线观看| av日韩在线观看大全| 超碰在线中文字幕一区二区| 噜噜色噜噜噜久色超碰| 国产欧美精品不卡在线| 日韩伦理短片在线观看| 国产福利小视频二区| 日本黄色三级高清视频| 国产视频精品资源网站| 91老师蜜桃臀大屁股| 五十路在线观看完整版| 2020中文字幕在线播放| 黄色视频成年人免费观看| sspd152中文字幕在线| 亚洲成av人无码不卡影片一| 狠狠地躁夜夜躁日日躁| 亚洲视频乱码在线观看| 欧美专区第八页一区在线播放| 欧美黑人性暴力猛交喷水| 久久这里只有精彩视频免费| 日韩少妇人妻精品无码专区| 大鸡巴插入美女黑黑的阴毛| 亚洲精品中文字幕下载| 动漫美女的小穴视频| 沈阳熟妇28厘米大战黑人| 欧美地区一二三专区| 最新国产精品网址在线观看| 熟女少妇激情五十路| av天堂资源最新版在线看| 日本a级视频老女人| 免费费一级特黄真人片| 不戴胸罩引我诱的隔壁的人妻| 精品视频一区二区三区四区五区| 欧美成人小视频在线免费看| 成人30分钟免费视频| 亚洲日本一区二区久久久精品| 大香蕉福利在线观看| 天天干夜夜操天天舔| 91免费黄片可看视频| 欧美成人猛片aaaaaaa| 欧美日韩不卡一区不区二区| 亚洲伊人色一综合网| 日韩在线中文字幕色| 一区二区三区四区五区性感视频| 一级黄片久久久久久久久| 精品首页在线观看视频| 久久永久免费精品人妻专区 | 亚洲国产精品久久久久蜜桃| gogo国模私拍视频| 在线不卡日韩视频播放| 天天摸天天亲天天舔天天操天天爽| 2022天天干天天操| 91香蕉成人app下载| 激情小视频国产在线| 最新的中文字幕 亚洲| 大香蕉大香蕉大香蕉大香蕉大香蕉| 国产视频在线视频播放| 国产视频一区二区午夜| 国产V亚洲V天堂无码欠欠| 人妻熟女中文字幕aⅴ在线| 亚洲一级 片内射视正片| 蜜桃色婷婷久久久福利在线| 日本中文字幕一二区视频| 成人综合亚洲欧美一区 | 白白操白白色在线免费视频| 日本www中文字幕| 欧美精产国品一二三产品价格| 欧美亚洲中文字幕一区二区三区| 97小视频人妻一区二区| 国产精品中文av在线播放| 黑人变态深video特大巨大| 日本特级片中文字幕| 自拍偷拍一区二区三区图片| 九色精品视频在线播放| 青青青青青青青青青国产精品视频| 91福利视频免费在线观看| 国产女人被做到高潮免费视频| 这里只有精品双飞在线播放| 亚洲激情av一区二区| 亚洲欧美福利在线观看| sejizz在线视频| 亚洲视频在线观看高清| 日韩加勒比东京热二区| 3337p日本欧洲大胆色噜噜| 99热色原网这里只有精品| 日韩激情文学在线视频| 欧美精品资源在线观看| 亚洲av成人免费网站| 久久精品亚洲成在人线a| 欧美亚洲国产成人免费在线 | 日韩加勒比东京热二区| 国产在线免费观看成人| 最新日韩av传媒在线| 毛片av在线免费看| 硬鸡巴动态操女人逼视频| 伊人精品福利综合导航| 大黑人性xxxxbbbb| 91老师蜜桃臀大屁股| 男人天堂av天天操| 狠狠躁夜夜躁人人爽天天天天97| 1000部国产精品成人观看视频 | 日韩av大胆在线观看| 最近中文字幕国产在线| 丝袜美腿视频诱惑亚洲无| 骚货自慰被发现爆操| 中文字幕第1页av一天堂网| 成人福利视频免费在线| 国产精品人妻熟女毛片av久| 91试看福利一分钟| 亚洲 清纯 国产com| sspd152中文字幕在线| 内射久久久久综合网| 欧美va不卡视频在线观看| 青青青国产免费视频| 非洲黑人一级特黄片| 91福利在线视频免费观看| 午夜精品亚洲精品五月色| 久草极品美女视频在线观看| 国产美女精品福利在线| 天天艹天天干天天操| 2012中文字幕在线高清| 天天做天天干天天操天天射| 18禁美女黄网站色大片下载| 天堂av中文在线最新版| 亚洲熟妇久久无码精品| 中文字幕一区的人妻欧美日韩| 天天日天天舔天天射进去| 亚洲av色图18p| 在线免费观看视频一二区| 日韩伦理短片在线观看| 欧美一区二区三区啪啪同性| 春色激情网欧美成人| 国产美女一区在线观看| 人人妻人人爽人人澡人人精品| 色秀欧美视频第一页| 岛国免费大片在线观看| 久草福利电影在线观看| 亚洲激情偷拍一区二区| 一区二区三区的久久的蜜桃的视频| 欧美一区二区三区激情啪啪啪| 专门看国产熟妇的网站| 国产午夜亚洲精品麻豆| av网站色偷偷婷婷网男人的天堂| 国产精品视频欧美一区二区| 国产精品一二三不卡带免费视频| 91久久人澡人人添人人爽乱| 91精品视频在线观看免费| 开心 色 六月 婷婷| 人人妻人人人操人人人爽| 免费成人va在线观看| 在线观看视频污一区| 欧美日韩一级黄片免费观看| weyvv5国产成人精品的视频| 久草福利电影在线观看| 国产剧情演绎系列丝袜高跟| 免费黄高清无码国产| 成人30分钟免费视频| 日韩人妻xxxxx| 久精品人妻一区二区三区| 51国产成人精品视频| 国产变态另类在线观看| 欧美麻豆av在线播放| 丁香花免费在线观看中文字幕 | 中文乱理伦片在线观看| 精品国产污污免费网站入口自| 秋霞午夜av福利经典影视| 哥哥姐姐综合激情小说| 亚洲特黄aaaa片| 国产精品一区二区av国| 亚洲精品国产在线电影| 国产九色91在线观看精品| 天天日天天敢天天干| 中文字幕在线第一页成人| 欧美女同性恋免费a| 91麻豆精品传媒国产黄色片| 青娱乐蜜桃臀av色| 后入美女人妻高清在线| 黑人巨大的吊bdsm| 国产1区,2区,3区| 2022天天干天天操| 国产不卡av在线免费| 青春草视频在线免费播放| 天天干狠狠干天天操| 青青在线视频性感少妇和隔壁黑丝 | 国产综合精品久久久久蜜臀| 蜜桃色婷婷久久久福利在线| 天天干天天啪天天舔| yy96视频在线观看| 欧美亚洲中文字幕一区二区三区| 亚洲欧美综合在线探花| 欧美成人综合色在线噜噜| 午夜美女福利小视频| 亚洲av成人免费网站| 在线制服丝袜中文字幕| 成人sm视频在线观看| 午夜精品一区二区三区城中村| 亚洲av男人的天堂你懂的| 国产亚洲国产av网站在线| 激情五月婷婷综合色啪| 中文字幕在线视频一区二区三区| 国产一区二区欧美三区| 亚洲成人精品女人久久久| 天堂av在线播放免费| 亚洲精品麻豆免费在线观看| 亚洲国产成人在线一区| 性感美女福利视频网站| 动漫美女的小穴视频| 青青伊人一精品视频| 一区二区三区四区视频在线播放| 国产精品探花熟女在线观看| 精品老妇女久久9g国产| 日韩人妻丝袜中文字幕| 91色老99久久九九爱精品| 很黄很污很色的午夜网站在线观看| 亚洲激情,偷拍视频| 日韩特级黄片高清在线看| 精品国产在线手机在线| 色偷偷伊人大杳蕉综合网| 久久机热/这里只有| 3D动漫精品啪啪一区二区下载| 国产亚洲视频在线观看| 精品首页在线观看视频| 亚欧在线视频你懂的| 国产内射中出在线观看| 激情国产小视频在线| 精品一区二区三区三区88| 家庭女教师中文字幕在线播放| 国产视频网站一区二区三区| 99热这里只有精品中文| 国产内射中出在线观看| 91精品国产观看免费| 欧美精品黑人性xxxx| 五十路息与子猛烈交尾视频| 久久永久免费精品人妻专区| 欧美久久久久久三级网| 成人网18免费视频版国产| 日韩视频一区二区免费观看| 特一级特级黄色网片| 青青青激情在线观看视频| 亚洲1区2区3区精华液| 天天操天天干天天艹| 93视频一区二区三区| 色婷婷综合激情五月免费观看| 日日夜夜狠狠干视频| 丝袜美腿视频诱惑亚洲无| 欧美 亚洲 另类综合| 3D动漫精品啪啪一区二区下载| 亚洲粉嫩av一区二区三区| 好吊视频—区二区三区| 亚洲少妇人妻无码精品| 国产一区二区欧美三区 | 夫妻在线观看视频91| 伊人日日日草夜夜草| 激情图片日韩欧美人妻| 亚洲午夜电影之麻豆| 少妇人妻久久久久视频黄片| 91精品资源免费观看| 成人高清在线观看视频| 久久久久久性虐视频| 高潮视频在线快速观看国家快速| av中文字幕在线导航| 亚洲视频在线视频看视频在线| 免费在线看的黄网站| 日本少妇人妻xxxxxhd| 哥哥姐姐综合激情小说| 中文字幕 人妻精品| 93精品视频在线观看| 色偷偷伊人大杳蕉综合网| 亚洲国产成人在线一区| 国产刺激激情美女网站| 人妻无码中文字幕专区| 久久久久久性虐视频| 在线观看av观看av| 亚洲av成人免费网站| 秋霞午夜av福利经典影视| 九色porny九色9l自拍视频| 免费观看成年人视频在线观看| 青青擦在线视频国产在线| 天天艹天天干天天操| 亚洲国产中文字幕啊啊啊不行了| 国产V亚洲V天堂无码欠欠| 美女日逼视频免费观看| 男女之间激情网午夜在线| 久草电影免费在线观看| 1769国产精品视频免费观看| 日韩欧美亚洲熟女人妻| 亚洲人妻av毛片在线| 国产黑丝高跟鞋视频在线播放| 偷拍美女一区二区三区| 一区二区三区蜜臀在线| free性日本少妇| 春色激情网欧美成人| 2021天天色天天干| 亚洲va国产va欧美精品88| 欧美国产亚洲中英文字幕| 91久久国产成人免费网站| 久久丁香花五月天色婷婷| 天天日天天玩天天摸| 中文字幕高清资源站| tube69日本少妇| 亚洲最大黄 嗯色 操 啊| 国产在线免费观看成人| 午夜免费体验区在线观看| 亚洲国产40页第21页| 青青青青青操视频在线观看| 一色桃子人妻一区二区三区| 亚洲精品精品国产综合| 亚洲一级特黄特黄黄色录像片| 中文字幕日韩精品日本| av老司机精品在线观看| 国产高潮无码喷水AV片在线观看| 午夜频道成人在线91| 成人精品视频99第一页| 国产又粗又猛又爽又黄的视频在线 | 强行扒开双腿猛烈进入免费版| 一区二区熟女人妻视频| 男生舔女生逼逼视频| av大全在线播放免费| 男人的天堂在线黄色| 91人妻精品一区二区在线看| 老司机深夜免费福利视频在线观看| 2021久久免费视频| 成人午夜电影在线观看 久久| 成人动漫大肉棒插进去视频| 精品高潮呻吟久久av| 久久久麻豆精亚洲av麻花| 日韩欧美国产一区ab| 青青草成人福利电影| 大香蕉伊人中文字幕| 99热这里只有精品中文| 亚洲成人av一区久久| 精品欧美一区二区vr在线观看| 国产va在线观看精品| 51国产偷自视频在线播放| 色呦呦视频在线观看视频| 密臀av一区在线观看| 亚洲av在线观看尤物| 午夜激情精品福利视频| 天天爽夜夜爽人人爽QC| 国产美女精品福利在线| 亚洲国产美女一区二区三区软件 | 午夜影院在线观看视频羞羞羞| 国产成人综合一区2区| 一区二区三区久久中文字幕| 亚洲一区二区三区在线高清| 91精品国产综合久久久蜜| 在线成人日韩av电影| 青青草人人妻人人妻| 最近中文字幕国产在线| 欧美日韩国产一区二区三区三州| 成人动漫大肉棒插进去视频| 精品国产乱码一区二区三区乱| 蜜桃久久久久久久人妻| 少妇ww搡性bbb91| 亚洲精品国产综合久久久久久久久 | 亚洲成人情色电影在线观看| 中文字幕在线永久免费播放| 国产精品伦理片一区二区| 美女大bxxxx内射| 粉嫩av蜜乳av蜜臀| 一区二区三区日本伦理| 亚洲图库另类图片区| 专门看国产熟妇的网站| 大香蕉伊人中文字幕| 内射久久久久综合网| 美女福利写真在线观看视频| 日本韩国免费福利精品| 黑人借宿ntr人妻的沦陷2| 任你操任你干精品在线视频| 专门看国产熟妇的网站| 久久久久久久一区二区三| 99热99这里精品6国产| 成人H精品动漫在线无码播放| sejizz在线视频| 青青色国产视频在线| 欧美 亚洲 另类综合| 国产aⅴ一线在线观看| 欧美精品一二三视频| 亚洲一级特黄特黄黄色录像片| 日本午夜久久女同精女女| 传媒在线播放国产精品一区| japanese五十路熟女熟妇| 天天干狠狠干天天操| 中文字幕av熟女人妻| 不卡日韩av在线观看| 国产精品国产三级国产精东| av天堂中文免费在线| 日本一二三中文字幕| 亚洲午夜高清在线观看| 久久久久久久久久一区二区三区| 亚洲精品成人网久久久久久小说 | 中文字幕免费福利视频6| 成人亚洲国产综合精品| 熟女少妇激情五十路| 在线免费观看日本伦理| 99国内精品永久免费视频| 99热色原网这里只有精品| av手机在线免费观看日韩av| 日本三极片中文字幕| 日本丰满熟妇BBXBBXHD| 熟女91pooyn熟女| 国产在线91观看免费观看| 香蕉av影视在线观看| 日本高清在线不卡一区二区| 国产精品sm调教视频| 成人H精品动漫在线无码播放| 99av国产精品欲麻豆| 亚洲av第国产精品| 日视频免费在线观看| 66久久久久久久久久久| 欧美精品免费aaaaaa| 日本又色又爽又黄又粗| 最新97国产在线视频| 国产精品女邻居小骚货| 3337p日本欧洲大胆色噜噜| 亚洲天堂精品福利成人av| 亚洲 清纯 国产com| 亚洲一区二区三区久久受| 91大屁股国产一区二区| 美女视频福利免费看| 久久久久久久久久一区二区三区| 伊人综合免费在线视频| xxx日本hd高清| 在线观看黄色成年人网站| 男大肉棒猛烈插女免费视频 | 国产精品黄色的av| 日韩特级黄片高清在线看| 大陆精品一区二区三区久久| 人妻3p真实偷拍一二区| 91桃色成人网络在线观看| 国产精品熟女久久久久浪潮| 男女之间激情网午夜在线| 亚洲成人线上免费视频观看| 人人妻人人爽人人澡人人精品| 直接观看免费黄网站| 91九色porny蝌蚪国产成人| 1区2区3区4区视频在线观看| 亚洲精品一线二线在线观看| 最新激情中文字幕视频| 久久丁香婷婷六月天| 岛国黄色大片在线观看| 国产精品中文av在线播放| 成人福利视频免费在线| 中文字幕综合一区二区| 首之国产AV医生和护士小芳| 国产一区二区视频观看| 最新欧美一二三视频| 2019av在线视频| 把腿张开让我插进去视频| 国产麻豆乱子伦午夜视频观看| 91一区精品在线观看| 成人色综合中文字幕| 国产精品精品精品999| 国产在线观看免费人成短视频| www日韩a级s片av| 91精品综合久久久久3d动漫| 欧美视频中文一区二区三区| 亚洲欧美福利在线观看| 韩国女主播精品视频网站| 欧美成人一二三在线网| 青青草在观免费国产精品| chinese国产盗摄一区二区| av一本二本在线观看| 国产综合高清在线观看| 最新国产精品拍在线观看| 国产一区二区火爆视频| av无限看熟女人妻另类av| 激情图片日韩欧美人妻| 100%美女蜜桃视频| 日韩不卡中文在线视频网站| 色爱av一区二区三区| 亚洲欧美成人综合在线观看| 中文字幕在线观看国产片| 欧美成人猛片aaaaaaa| 欧美成人精品在线观看| 日韩黄色片在线观看网站| 日本高清撒尿pissing| 亚洲av自拍天堂网| 国产在线观看免费人成短视频| 亚洲最大黄了色网站| 99的爱精品免费视频| 婷婷午夜国产精品久久久| 一区二区三区四区中文| 四虎永久在线精品免费区二区| 欧美在线精品一区二区三区视频 | 日本美女性生活一级片| 自拍偷拍日韩欧美亚洲| 人妻少妇精品久久久久久| 中国熟女一区二区性xx| 亚洲免费福利一区二区三区| 亚洲精品福利网站图片| 久碰精品少妇中文字幕av| 91www一区二区三区| 农村胖女人操逼视频| japanese日本熟妇另类| 伊人精品福利综合导航| 精品国产在线手机在线| 精品日产卡一卡二卡国色天香 | 看一级特黄a大片日本片黑人| 久久久久久99国产精品| 人妻最新视频在线免费观看| 护士小嫩嫩又紧又爽20p| 综合精品久久久久97| 老司机在线精品福利视频| 天天操天天干天天艹| 99精品国产免费久久| 欧美在线一二三视频| 91久久人澡人人添人人爽乱| 99久久成人日韩欧美精品| 2019av在线视频| 亚洲一区二区人妻av| brazzers欧熟精品系列| 国产在线91观看免费观看| 揄拍成人国产精品免费看视频| 亚洲一区二区久久久人妻| 国产成人精品一区在线观看| 天码人妻一区二区三区在线看| 黄色成年网站午夜在线观看| 亚洲欧洲一区二区在线观看| 9久在线视频只有精品| 久久精品36亚洲精品束缚| 亚洲免费视频欧洲免费视频| 亚洲天天干 夜夜操| 亚洲av成人免费网站| 日本一二三中文字幕| 亚洲 欧美 精品 激情 偷拍 | 国际av大片在线免费观看| 中文字幕在线视频一区二区三区| 天天干狠狠干天天操| 另类av十亚洲av| 国产清纯美女al在线| av日韩在线免费播放| 一级黄色av在线观看| 亚洲精品一线二线在线观看| 婷婷久久久综合中文字幕| 日视频免费在线观看| 大肉大捧一进一出好爽在线视频| 亚洲av午夜免费观看| 中英文字幕av一区| 超碰97免费人妻麻豆| yellow在线播放av啊啊啊| 在线视频精品你懂的| 亚洲蜜臀av一区二区三区九色| av俺也去在线播放| 久久这里有免费精品| 91人妻精品一区二区在线看| 伊人开心婷婷国产av| 欧美地区一二三专区| 国产黄色a级三级三级三级 | 黑人大几巴狂插日本少妇| 国产熟妇乱妇熟色T区| 亚洲自拍偷拍综合色| 天天摸天天亲天天舔天天操天天爽 | 在线观看免费av网址大全| 日美女屁股黄邑视频| 2020韩国午夜女主播在线| 一区二区三区综合视频| 少妇人妻100系列| 天干天天天色天天日天天射 | AV天堂一区二区免费试看| 动漫美女的小穴视频| 亚洲欧美福利在线观看| 亚洲成人av一区在线| 51国产成人精品视频| 成年人黄色片免费网站| 最后99天全集在线观看| 亚洲护士一区二区三区| 成人av电影免费版| 日视频免费在线观看| 国产亚洲四十路五十路| japanese五十路熟女熟妇| 中文字幕,亚洲人妻| 天天干天天操天天插天天日| 青青青青青青青青青国产精品视频 | 久久久久久久一区二区三| 2021年国产精品自拍| 亚洲中文字字幕乱码| 亚洲av无乱一区二区三区性色| 神马午夜在线观看视频| 中文字幕之无码色多多| 亚洲综合另类精品小说| 国产91嫩草久久成人在线视频| 偷拍自拍亚洲美腿丝袜| 亚洲精品av在线观看| 在线观看av2025| 香蕉aⅴ一区二区三区| 精品av国产一区二区三区四区| 99久久成人日韩欧美精品| 老司机福利精品视频在线| 天天日天天干天天要| 老司机你懂得福利视频| 在线免费91激情四射 | 成人30分钟免费视频| 一区二区三区蜜臀在线| 亚洲午夜伦理视频在线| 一区二区三区精品日本| 成人网18免费视频版国产| 青青青爽视频在线播放| 亚洲青青操骚货在线视频| 久久艹在线观看视频| 被大鸡吧操的好舒服视频免费| 久久综合老鸭窝色综合久久| 天天操天天爽天天干| 精品视频国产在线观看| 大鸡吧插逼逼视频免费看| 日韩成人综艺在线播放| 漂亮 人妻被中出中文| 青青青青青青草国产| 动漫av网站18禁| 日本黄色特一级视频| 在线视频免费观看网| 婷婷久久久综合中文字幕| 玖玖一区二区在线观看| 中国黄色av一级片| 丰满的子国产在线观看| 狠狠操狠狠操免费视频| 午夜在线观看一区视频| 久久一区二区三区人妻欧美| 91桃色成人网络在线观看| 女警官打开双腿沦为性奴| 抽查舔水白紧大视频| 天天综合天天综合天天网| 精品美女久久久久久| 操的小逼流水的文章| 成年人啪啪视频在线观看| 国产在线观看黄色视频| 亚洲福利精品视频在线免费观看| 中文字幕av一区在线观看| 国产不卡av在线免费| 亚洲一区二区三区精品乱码| 日本脱亚入欧是指什么| 日韩美女搞黄视频免费| 亚洲福利精品视频在线免费观看| 337p日本大胆欧美人| 中文字幕第一页国产在线| 亚洲最大黄了色网站| 夜鲁夜鲁狠鲁天天在线| 国产精品视频资源在线播放 | 亚洲国产欧美国产综合在线| 在线观看av2025| 日韩亚洲高清在线观看| 在线观看av亚洲情色| 人妻丰满熟妇综合网| 女蜜桃臀紧身瑜伽裤 | 中文字幕av一区在线观看| 骚逼被大屌狂草视频免费看| 亚洲精品在线资源站| 人妻爱爱 中文字幕| 18禁精品网站久久| 国产白嫩美女一区二区| 天堂va蜜桃一区入口| 日本少妇的秘密免费视频| 国产精品午夜国产小视频| 精产国品久久一二三产区区别| 亚洲老熟妇日本老妇| 青草青永久在线视频18| 国产不卡av在线免费| 男人天堂最新地址av| 888欧美视频在线| 91超碰青青中文字幕| 超级福利视频在线观看| 青青青国产片免费观看视频| 班长撕开乳罩揉我胸好爽| 久久机热/这里只有| 日本美女性生活一级片| 老熟妇凹凸淫老妇女av在线观看| 午夜大尺度无码福利视频| 阿v天堂2014 一区亚洲| 都市家庭人妻激情自拍视频| 亚洲av色香蕉一区二区三区| 日本av在线一区二区三区| 免费观看理论片完整版| 在线视频这里只有精品自拍| 日本福利午夜电影在线观看| 99精品一区二区三区的区| 国产大鸡巴大鸡巴操小骚逼小骚逼| 伊人开心婷婷国产av| 久久免看30视频口爆视频| 福利午夜视频在线合集| 午夜久久久久久久精品熟女| 日本人妻少妇18—xx| 黑人巨大精品欧美视频| 日本熟妇色熟妇在线观看| 国产三级影院在线观看| 亚洲 人妻 激情 中文| 亚洲视频在线观看高清| 高清一区二区欧美系列| 东京热男人的av天堂| 欧美地区一二三专区| 51国产偷自视频在线播放| 亚洲特黄aaaa片| 91麻豆精品久久久久| 熟女人妻一区二区精品视频| 噜噜色噜噜噜久色超碰| 色婷婷精品大在线观看| 一区二区三区日本伦理| 一区二区三区精品日本| 亚洲一级美女啪啪啪| 免费十精品十国产网站| 国产va在线观看精品| 2020国产在线不卡视频| 91she九色精品国产| sw137 中文字幕 在线| 青青社区2国产视频| 亚洲成高清a人片在线观看| 丰满少妇人妻xxxxx| 日本在线不卡免费视频| 欧美精品伦理三区四区| 91精品国产黑色丝袜| 天天操,天天干,天天射| av高潮迭起在线观看| 免费福利av在线一区二区三区| 含骚鸡巴玩逼逼视频| 精品黑人一区二区三区久久国产| 日本人竟这样玩学生妹| 精品老妇女久久9g国产| 99精品国产aⅴ在线观看| 青青色国产视频在线| 国产免费av一区二区凹凸四季| 女生自摸在线观看一区二区三区| 亚洲国产欧美一区二区丝袜黑人| 大屁股熟女一区二区三区| 免费观看污视频网站| 久久精品亚洲国产av香蕉| 欧美另类重口味极品在线观看| 插小穴高清无码中文字幕| 在线观看国产网站资源| 伊人综合免费在线视频| 成人资源在线观看免费官网| 100%美女蜜桃视频| 只有精品亚洲视频在线观看| 天堂av中文在线最新版| 美女福利写真在线观看视频| 青青青青视频在线播放| av网址在线播放大全| 日本性感美女写真视频| 日韩欧美高清免费在线| 综合激情网激情五月五月婷婷| 91国语爽死我了不卡| 性感美女福利视频网站| 久久热久久视频在线观看| 2018在线福利视频| 国产自拍黄片在线观看| 国产精品久久久久国产三级试频| 欧美成人精品在线观看| 91精品资源免费观看| 老有所依在线观看完整版| 蜜桃色婷婷久久久福利在线| 宅男噜噜噜666免费观看| 亚洲欧洲一区二区在线观看| 丝袜国产专区在线观看| 亚洲国产欧美一区二区丝袜黑人| 成人精品在线观看视频| 99久久成人日韩欧美精品| aⅴ五十路av熟女中出| 在线观看操大逼视频| 99久久成人日韩欧美精品| 亚洲精品 欧美日韩| 青青青青青青草国产| av无限看熟女人妻另类av| 欧美精品一区二区三区xxxx| 91av精品视频在线| 97成人免费在线观看网站| 国产麻豆乱子伦午夜视频观看| 久久人人做人人妻人人玩精品vr| 中文字母永久播放1区2区3区| 在线观看成人国产电影| 男人操女人逼逼视频网站| www骚国产精品视频| 日视频免费在线观看| 亚洲精品欧美日韩在线播放| 午夜在线观看岛国av,com| 早川濑里奈av黑人番号| 亚洲精品国产久久久久久| 欧美麻豆av在线播放| 早川濑里奈av黑人番号| 中出中文字幕在线观看| 最近的中文字幕在线mv视频| 久草电影免费在线观看| 午夜美女少妇福利视频| 老鸭窝在线观看一区| 18禁免费av网站| 丝袜长腿第一页在线| 啪啪啪18禁一区二区三区| 国产亚洲欧美45p| 国产欧美精品一区二区高清 | 免费看高清av的网站| 自拍偷拍日韩欧美一区二区| 国产精品国产精品一区二区| 中文字日产幕乱六区蜜桃| 久久久久久9999久久久久| 青青尤物在线观看视频网站| 日本少妇的秘密免费视频| 岛国av高清在线成人在线| 性感美女诱惑福利视频| 一区二区免费高清黄色视频| 成人影片高清在线观看| 超pen在线观看视频公开97| 国产极品精品免费视频| 男女啪啪啪啪啪的网站| 91精品国产麻豆国产| 97国产在线观看高清| 色秀欧美视频第一页| 日韩成人性色生活片| 2021天天色天天干| av中文字幕福利网| 亚洲av无女神免非久久| 美女视频福利免费看| 久久这里只有精彩视频免费| 精品一区二区三区午夜| 久久免费看少妇高潮完整版| 国产九色91在线视频| 久久精品美女免费视频| 黑人变态深video特大巨大| 大肉大捧一进一出好爽在线视频| 精品av国产一区二区三区四区| 国产性感美女福利视频| 亚洲第17页国产精品| 国产剧情演绎系列丝袜高跟| 日韩欧美中文国产在线| 91国产资源在线视频| 懂色av之国产精品| 欧美黑人巨大性xxxxx猛交| 欧美一区二区三区激情啪啪啪| 天天日天天干天天爱| 最新激情中文字幕视频| 婷婷久久久久深爱网| 亚洲va欧美va人人爽3p| 亚洲激情,偷拍视频| 天天操夜夜骑日日摸| 顶级尤物粉嫩小尤物网站| 亚洲一区二区三区五区| 少妇一区二区三区久久久| 少妇系列一区二区三区视频| 色呦呦视频在线观看视频| 成年女人免费播放视频| 天天干天天操天天扣| 免费啪啪啪在线观看视频| 天天摸天天日天天操| 精品人妻每日一部精品| 中文字幕av一区在线观看| 午夜频道成人在线91| 夜女神免费福利视频| 欧美综合婷婷欧美综合| 国产在线拍揄自揄视频网站| 丝袜亚洲另类欧美变态| 国产不卡av在线免费| 99精品视频之69精品视频| 夏目彩春在线中文字幕| 亚洲国产40页第21页| 亚洲天堂第一页中文字幕| 国产麻豆91在线视频| 后入美女人妻高清在线| 黄色成年网站午夜在线观看 | 欧美日韩情色在线观看| 亚洲精品一线二线在线观看| heyzo蜜桃熟女人妻| 视频一区 视频二区 视频| 亚洲综合乱码一区二区| 亚洲女人的天堂av| 亚洲成人激情av在线| 天天干夜夜操啊啊啊| 国产极品美女久久久久久| 自拍偷拍日韩欧美一区二区| 快插进小逼里大鸡吧视频| 激情五月婷婷综合色啪| 成人综合亚洲欧美一区| 日本韩国在线观看一区二区| 视频一区二区综合精品| 综合页自拍视频在线播放| caoporn蜜桃视频| 欧美亚洲偷拍自拍色图| 亚洲欧美综合在线探花| 天天干天天日天天干天天操| 国产九色91在线观看精品| 在线国产日韩欧美视频| 精彩视频99免费在线| 日美女屁股黄邑视频| 亚洲欧美国产综合777| 91成人精品亚洲国产| 天天日天天鲁天天操| 精品人人人妻人人玩日产欧| 久久美欧人妻少妇一区二区三区| 99精品国产aⅴ在线观看| 午夜在线精品偷拍一区二| 91九色国产porny蝌蚪| 日本韩国免费福利精品| 青青草在观免费国产精品| 日日爽天天干夜夜操| 欧美综合婷婷欧美综合| 欧美特级特黄a大片免费| 亚洲女人的天堂av| 天天插天天色天天日| 青青青爽视频在线播放| 中文字幕第1页av一天堂网| 在线免费视频 自拍| 91av中文视频在线| 99re6热在线精品| 91在线免费观看成人| 又黄又刺激的午夜小视频| 亚洲一区二区三区久久受| 18禁美女无遮挡免费| 特大黑人巨大xxxx| 国产品国产三级国产普通话三级| 亚洲狠狠婷婷综合久久app| 91老熟女连续高潮对白| 国产在线自在拍91国语自产精品| 中文字幕高清在线免费播放 | rct470中文字幕在线| aiss午夜免费视频| 自拍偷拍,中文字幕| 日本少妇人妻xxxxxhd| 亚洲高清一区二区三区视频在线| 日本熟妇丰满厨房55| 青青青艹视频在线观看| 美女张开腿让男生操在线看| 在线观看成人国产电影| 亚洲精品ww久久久久久| 啊啊好慢点插舔我逼啊啊啊视频| 一区二区三区四区中文| 黄色视频在线观看高清无码 | 中文字幕午夜免费福利视频| 老师让我插进去69AV| 97青青青手机在线视频| 日本又色又爽又黄又粗| 97人妻人人澡爽人人精品| 欧美成人精品在线观看| 丝袜美腿欧美另类 中文字幕| 51国产偷自视频在线播放| 久久久久只精品国产三级| 免费在线播放a级片| 偷拍自拍 中文字幕| 大鸡巴插入美女黑黑的阴毛| 在线不卡成人黄色精品| 中文字幕乱码人妻电影| 国产精品久久久久久久精品视频| 桃色视频在线观看一区二区| 经典亚洲伊人第一页| 97国产福利小视频合集| 亚洲熟女综合色一区二区三区四区| 日韩av中文在线免费观看| 11久久久久久久久久久| 夜色福利视频在线观看| 精内国产乱码久久久久久 | 天天干天天日天天干天天操| 日本a级视频老女人| 精品国产污污免费网站入口自| 91高清成人在线视频| 亚洲 人妻 激情 中文| 伊人综合aⅴ在线网| 丝袜肉丝一区二区三区四区在线| 午夜美女少妇福利视频| 天天插天天色天天日| 日本性感美女三级视频| 18禁美女无遮挡免费| 老司机欧美视频在线看| 国产精品成久久久久三级蜜臀av| 黄色片黄色片wyaa| 伊人精品福利综合导航| 动漫美女的小穴视频| 亚洲av第国产精品| 精品日产卡一卡二卡国色天香| 亚洲 中文 自拍 另类 欧美| 肏插流水妹子在线乐播下载| 最新日韩av传媒在线| 免费成人va在线观看| 精品区一区二区三区四区人妻| 欧美成人黄片一区二区三区| 色婷婷久久久久swag精品| 2021最新热播中文字幕| 亚洲国产香蕉视频在线播放| 熟妇一区二区三区高清版| 成人精品在线观看视频| 成人18禁网站在线播放| 偷拍美女一区二区三区| 亚洲va欧美va人人爽3p| 免费费一级特黄真人片| 国产一区二区火爆视频| 任你操任你干精品在线视频| gogo国模私拍视频| 日本三极片视频网站观看| 国产精品大陆在线2019不卡| 人人在线视频一区二区| 亚洲免费va在线播放| 中文字幕日本人妻中出| 欧美日韩v中文在线| 夜色撩人久久7777| 99国内小视频在现欢看| 日本一区二区三区免费小视频| 99精品一区二区三区的区| 青青青国产片免费观看视频| 亚洲熟妇无码一区二区三区| 一区二区三区四区五区性感视频 | 日本裸体熟妇区二区欧美| 天天干天天操天天摸天天射| 欧美色婷婷综合在线| 91一区精品在线观看| 亚洲男人的天堂a在线| 青娱乐最新视频在线| 欧洲日韩亚洲一区二区三区 | 被大鸡吧操的好舒服视频免费| 中国把吊插入阴蒂的视频| 91精品国产观看免费| 最新国产精品网址在线观看| 国产91嫩草久久成人在线视频| 久久h视频在线观看| 国产精品自拍偷拍a| 视频在线亚洲一区二区| 青青操免费日综合视频观看| 亚洲成人熟妇一区二区三区| 人妻激情图片视频小说| 一区二区三区 自拍偷拍| 2025年人妻中文字幕乱码在线| 又色又爽又黄的美女裸体| 91老熟女连续高潮对白| 国产精品欧美日韩区二区| 欧美亚洲免费视频观看| 2022天天干天天操| 国产精品久久久黄网站| 亚洲的电影一区二区三区| 中文字幕人妻av在线观看| 在线观看911精品国产| 亚洲激情av一区二区| 中文字幕在线视频一区二区三区| 国产chinesehd精品麻豆| 特大黑人巨大xxxx| 第一福利视频在线观看| 国产麻豆剧果冻传媒app| 久草视频在线看免费| 999久久久久999| 视频二区在线视频观看| 日韩精品中文字幕在线| 日本在线一区二区不卡视频| 日韩精品一区二区三区在线播放| 少妇人妻100系列| 精品乱子伦一区二区三区免费播| 男女之间激情网午夜在线| 日本成人一区二区不卡免费在线| 亚洲人妻av毛片在线| 久久www免费人成一看片| 激情五月婷婷免费视频| 成人国产影院在线观看| 在线 中文字幕 一区| AV天堂一区二区免费试看| 高潮喷水在线视频观看| 亚洲欧美激情人妻偷拍| 国产综合精品久久久久蜜臀| 和邻居少妇愉情中文字幕| 91麻豆精品久久久久| 一区二区三区久久中文字幕| 国内自拍第一页在线观看| 丰满的继坶3中文在线观看| 老司机你懂得福利视频| 久久久久久97三级| 人妻最新视频在线免费观看| 久久香蕉国产免费天天| 天天想要天天操天天干| 欧美老鸡巴日小嫩逼| 欧美性受xx黑人性猛交| 精品国产午夜视频一区二区| 一区二区三区视频,福利一区二区| 四虎永久在线精品免费区二区| 亚洲护士一区二区三区| 福利一二三在线视频观看| 成人精品视频99第一页| 亚洲护士一区二区三区| 福利午夜视频在线观看| av网址国产在线观看| 国产日韩一区二区在线看| 免费69视频在线看| 国产精品入口麻豆啊啊啊| 欧美国产亚洲中英文字幕| 亚洲男人的天堂a在线| 国产使劲操在线播放| 99婷婷在线观看视频| 日韩成人性色生活片| 亚洲综合图片20p| av大全在线播放免费| av老司机精品在线观看| 久久久久久9999久久久久| 91中文字幕免费在线观看|