久久精品国产精品国产精品污,男人扒开添女人下部免费视频,一级国产69式性姿势免费视频,夜鲁夜鲁很鲁在线视频 视频,欧美丰满少妇一区二区三区,国产偷国产偷亚洲高清人乐享,中文 在线 日韩 亚洲 欧美,熟妇人妻无乱码中文字幕真矢织江,一区二区三区人妻制服国产

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Egret中使用P2物理引擎

發布時間:2023/11/29 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Egret中使用P2物理引擎 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

游戲中的對象按照物理規律移動,體現重力、引力、反作用力、加速度等物體特性,實現自由落體、搖擺運動、拋物線運動,以及物理碰撞現象的模擬。用于模擬物理碰撞、物理運動的引擎稱為物理引擎。?
來自瑞典斯德哥爾摩大學的Stefan Hedman基于JavaScript,開發了一款面向HTML游戲的2D物理引擎,P2物理引擎。P2和Box2D物理引擎一樣,集成了各種復雜的物理公式和算法,幫助實現碰撞、加速、自由落體等物理對象的模擬。?
P2是一個開源項目,可在GitHub下載,使用build中的p2.min.js文件,就可以開發物理應用。

1. 創建P2物理項目:

使用P2物理引擎創建物理應用的過程和Box2D類型,步驟是:創建world、創建shape、創建body剛體、實時調用step()函數更新物理模擬計算;基于形狀、剛體使用Egret或其他HTML渲染以顯示物理模擬效果。?
1)世界world:
world是P2物理引擎入口,對應World類,用于承載所有物理模擬對象。world類的構造函數為:?
function World([options]){options?:{gravity?:number[]=[0,-9.81];}}?
其中,gravity是重力加速度,這是一個Vec2類型的向量對象,默認為垂直向上的向量[0,-9.81]。將gravity設置為[0,0]可以取消重力,模擬太空失重狀態。?
2)形狀Shape:
形狀是物理模擬計算的基礎。任何物體都要有對應的形狀,才可以基于P2進行物理碰撞檢測和模擬。所有形狀對象都需要通過addShape()添加到剛體中,才可以進行碰撞模擬計算:?
var body:p2.Body=new p2.Body();?
var shape:p2.Shape=new p2.Shape();?
body.addShape(shape);?
P2中的Shape類是一個抽象的父類,要使用Box、Circle等子類。?
3)剛體Body:
剛體是P2物理引擎的核心概念和對象,擁有速度、角度、質量等物理屬性,同時包含了形狀對象,使剛體擁有具體的形狀。將剛體添加到world中,World將以剛體為單位循環遍歷,進行物理模擬計算,并將模擬的結果保存在剛體屬性中,使剛體成為碰撞對象的原型。所有的剛體都必須通過addBody()添加到P2的world中,才會進行物理模擬:?
var body:p2.Body=new p2.Body();?
var shape:p2.Shape=new p2.Shape();?
body.addShape(shape);?
world.addBody(body);?
4)貼圖Egret:
P2只是一個算法庫,以剛體為對象模型,模擬并輸出物理碰撞、運動結果。這個過程通過持續調用world中的step()方法來實現:?
function step(dt:number, timeSinceLastCalled?:number=0,maxSubSteps?:number=10)?
其中,參數dt是step方法執行的時間間隔,單位秒,通常取值為游戲幀頻的倒數; 當游戲幀頻降低時計算兩幀之間的時間差作為timeSinceLastCalled參數值,此時P2會在一次step()中進行count= timeSinceLastCalled/dt次計算,以保證物理模擬的真實性,默認值為0;參數maxSubSteps是單次step()進行物理模擬計算的最大次數,當timeSinceLastCalled不等于0時,單次step()中進行計算的次數count最大為maxSubSteps,默認值為10。?
但P2本身不具備渲染功能,無法顯示模擬結果,需要借助JavaScript渲染引擎,如Egret、Cocos2d-js、Pixi、phaser等,通過繪制或貼圖來渲染物理模擬結果。在Egret中:?
class SampleP2APP extends egret.DisplayObjectContainer{?
public constructor(){?
super();?
this.createP2App();?
}?
private world:p2.World;?
private factor:number=30;?
public createP2App():void{?
this.world=new p2.World();?
var world=this.world;?
world.gracity=[0,0];?
var shape:p2.Box=new p2.Box({width:100/this.factor, height:50/this.factor});?
var body:p2.Body=new p2.Body({mass:1});?
body.position=[275/this.factor, 100/this.factor];?
body.addShape(shape);?
worldBody(body);?
this.addEventListener(egret.Event.ENTER_FRAME, this.loop, this);?
}?
private loop(e.egret.Event):void{?
this.world.step(1/60);?
}?
}?
代碼中創建了一個重力加速度gravity=[0,0]的失重環境world;然后使用Box形狀創建尺寸100x50像素矩形;通過addShape()方法將其添加到位于(275,100)位置的剛體body中;最后通過world的addBody()方法將剛體添加到世界中,完成一個基本的P2物理應用創建。在游戲的loop更新方法中,每幀持續調用step()方法,實現P2物理模擬計算的持續更新。?
P2物理引擎中的坐標單位是米,而大部分的游戲引擎在屏幕上渲染游戲時,都是基于像素的,所以在創建剛體對象、設置形狀尺寸時,需要將像素轉換成米后再進行賦值。游戲中,1米通常看作30px,所以代碼中聲明了一個值為30的factor變量,在設置形狀尺寸或剛體時,都是使用像素坐標除以factor變量,轉換成米之后再賦值的。

2. 用p2DebugDraw實現模擬視圖:

因為P2只是進行了物理模擬計算,沒有對模擬結果進行渲染,可以基于Egret引擎編寫渲染繪圖的類,如p2DebugDraw。p2DebugDraw類的構造函數為:?
function p2DebugDraw(world:p2.World, sprite:egret.Sprite)?
其中,world是P2中創建的world對象,sprite是Stage中一個Sprite對象。p2DebugDraw將使用基本繪圖的API,在sprite對象中繪制所有剛體、關節等物理對象。修改后的代碼:?
class SampleP2APPWithDebugDraw extends egret.DisplayObjectContainer{?
public constructor(){?
super();?
this.createP2App();?
}?
private world:p2.World;?
private factor:number=30;?
private debugDraw:p2DebugDraw;?
public createP2App():void{?
this.world=new p2.World();?
var world=this.world;?
world.gracity=[0,0];?
var shape:p2.Box=new p2.Box({width:100/this.factor, height:50/this.factor});?
var body:p2.Body=new p2.Body({mass:1});?
body.position=[275/this.factor, 100/this.factor];?
body.addShape(shape);?
worldBody(body);?
var sprite:egret.Sprite=new egret.Sprite();?
this.addChild(sprite);?
this.debugDraw=new p2DebugDraw(world, sprite);?
this.addEventListener(egret.Event.ENTER_FRAME, this.loop, this);?
}?
private loop(e.egret.Event):void{?
this.world.step(1/60);?
this.debugDraw.drawDebug();?
}?
}?
p2DebugDraw仿照Box2d中的b2DebugDraw,用不同顏色和形狀表示不同類型的剛體、關節等對象,粉色為動態剛體、紫色為可動剛體、綠色為靜態剛體、黑色線段為關節、紅色線段為彈簧、綠色線段為剛體與關節點的偏移量、圓的為關節節點。?
p2DebugDraw的屬性和方法:?
p2DebugDraw提供了很多屬性和方法:?
1)isDrawAABB:boolean:是否繪制剛體的AABB最小包圍框,默認false?
2)drawDebug():繪制P2物理引擎中的所有剛體、關節等對象,需要實時調用實時更新?
3)drawShape():繪制P2世界中的任意形狀,使用時要確保形狀對應剛體已添加到world?
drawShape()方法的結構為:?
function drawShape(shape:p2.Shape, color?:number, fillColor?:boolean):void?
其中,shape為要繪制的Shape對象;color為要繪制的顏色,缺省時根據類型設置顏色;fillColor指示是否填充顏色,默認true,填充色與邊框色相同。?
4)drawConvex():將vertices數組中保存的任意多個頂點坐標,逐個使用線段連接起來,繪制出多邊形。此方法不受P2剛體約束,可在任意需要情況下使用。?
function drawConvex( vertices:number[][], color:number, alpha:number=1, fillColor:boolean = true ):void?
其中,vertices保存了需要繪制的多邊形頂點數組;color為多邊形的邊框顏色;alpha為多邊形填充顏色透明度;fillColor為是否填充顏色,默認true,填充色與邊框色相同。?
5)drawCircle():在指定位置以指定的半徑繪制圓形,該方法不受P2剛體約束,可在任意需要情況下使用。?
function drawCircle( pos:number[], radius:number, color:number, alpha:number=1, fillColor?:boolean ):void?
其中,pos為圓形繪制的目標位置,radius為圓形半徑。?
6)drawSegment():在兩點之間繪制線段,結構為:?
function drawSegment( start:number[], end:number[], color:number):void?
其中,start為線段起點,end為線段終點,color為線段顏色。?
7)drawVecAt():在指定點at處繪制向量v。用來顯示出剛體速度,結構為:?
function drawVecAt( v:number[],at:number[], color:number, markStart:boolean=false ):void?
其中,v為要繪制的向量;at為開始繪制向量的起點;color為向量顏色;markStart為是否用圓點表示出向量的起點,默認false。?
8)drawVecTo():繪制向量v,指向指定點to。?
function drawVecTo( v:number[],to:number[], color:number, markStart:boolean=false ):void?
其中,v為要繪制的向量;to為向量的終點;color為繪制的顏色;markStart為是否用圓點表示出向量的終點,默認false。

3. P2中的形狀:

形狀是物理引擎進行碰撞模擬計算的依據,是剛體最基本的屬性。P2中使用Shape類來表示形狀,通過剛體的addShape()方法,將形狀添加到剛體中之后,就可以隨著剛體的移動、旋轉不斷更新,并進行碰撞檢測了。為剛體添加形狀的示例代碼為:?
var shape:p2.Shape=new p2.Shape();?
var body:p2.Body=new p2.Body();?
body.addShape(shape);?
Shape類本身并不參與剛體的創建,而是由其幾個子類完成一些常見形狀的模擬。這些形狀包括圓形Circle、矩形Box、膠囊Capsule、粒子Particle、線段Line、平面Plane、海拔形狀HightField、多邊形Convex等。

1)形狀:
游戲中人物形狀各種各樣,但在碰撞檢測時,出于效率考慮,大都被簡化為簡單的圓形、矩形等形狀。P2預置了包括圓形、矩形在內的一些常用的、簡單的形狀。?
⑴圓形Circle:
圓形是P2中的基本形狀,構造函數為:?
function Circle({options?:{radius:number})?
其中,options是包含所有屬性的集合對象;radius是圓形的半徑,默認值為1。?
⑵矩形Box:
矩形通過width和height屬性來創建,構造函數為:?
function Box(options:{width?:number, height?:number})?
其中,width為矩形寬度,默認為1;height為矩形高度,默認值為1。?
⑶膠囊Capsule:
可以認為是一種圓角矩形,長度length,高度2*Radius,兩端是半徑為Radius的半圓形。?
function Capsule(options?:{length?:number, radius?:number})?
其中,length為膠囊長度;radius為膠囊形狀兩端半圓的半徑,同時也是膠囊的高度。?
⑷粒子Particle:
粒子就是微小的顆粒,P2物理引擎中的粒子半徑和面積為0。粒子參與碰撞檢測,效果與半徑為1px的圓形一樣。構造函數簡單,不需要任何參數:?
function Particle()?
⑸線段Line:
長度為length的線段,看上去與高度為1的Box形狀一樣,但算法上省去對高度的檢測。?
function Line(options?:{length?:number})?
⑹平面Plane:
平面沿y軸負方向無限擴展,同時在x軸方向的寬度無限,像地平面。構造函數為:?
function Plane()?
創建時沒有任何參數,初始情況下是一個倒置的穹,實際應用時一般要通過調整剛體的角度angle,使plane平面朝向不同的方向,來模擬墻體。示例代碼:?
var shape:p2.Plane=new p2.Plane();?
var body:p2.Body=new p2.Body({mass:1, position:[274/this.factor, 200/this.factor]});?
body.addShape(shape);?
body.angle=Math.PI/4;?
this.world.addBody(body);?
代碼中的平面會隨著剛體的角度angle繞坐標點[274,200]順時針旋轉45°。?
⑺海拔形狀Heightfield:
這是一個類似于Plane的形狀,但不是平的,而是一組y坐標組成的高低不平的山形,這些山丘之間的間隔都是固定的elementWidth。HeightField形狀也是朝y軸負方向無限擴展的,水平方向的寬度是elementWidth與山丘數量的乘積。構造函數為:?
function Heightfield(options?:{heights:number[], minValue?:number,maxValue?:number, elementWidth?:number})?
其中,heights是保存每個山丘高度的數組;minValue是山丘高度的最小值,設置后heights中的小于minValue的值設置為minValue;maxValue為heights中高度的最大值,設置此值后heights中大于maxValue的值設置為maxHeight;elementWidth為每個山丘之間的間隔,默認為1。?
定義Heightfield形狀就是定義heights屬性中y坐標數組,同時x坐標以elementWidth為步長逐一增加。目前,Heightfield不支持旋轉,始終朝y軸負方向擴展,碰撞檢測也不精確,邊緣位置容易出現穿透現象。?
⑻多邊形Convex:
Convex是一個多邊形形狀,可以根據一組定義好的頂點坐標創建對應的多邊形形狀。?
function Convex(options?:{vertice?:number[][], axes?:number[][[]})?
其中,vertices保存了頂點坐標的數組,這是一個二維數組,每個元素是由x和y坐標組成的一維數組,如vertics=[[-1,-1],[1,-1],[1,1],[-1,-1]];axes表示多邊形各個邊的對稱軸,同樣是一個二維數組,且長度應與vertices一致,此參數通常可以使用默認值,系統根據vertices中的頂點自動計算得出垂直于各個邊的法向量。使用時首先要將多邊形的頂點坐標保存到數組中,然后將其作為vertices參數傳遞給Convex:?
var points=[[-1,-1],[1,-1],[1,1],[-1,-1]];?
var shape:p2.Convex=new p2.Convex({vertices:points});?
var body:p2.Body=new p2.Body({mass:1});?
body.addShape(shape);?
this.world.addBody(body);?
不推薦使用頂點坐標直接創建多邊形,因為可能出現凹多邊形,而P2中的碰撞檢測是基于凸多邊形的,需要將凹多邊形分解成多個小的凸多邊形,還需要重新計算分解后的重心、形狀偏移,這些計算并不在Convex類中。建議使用Body類的fromPolygon()實現。

2)P2中形狀碰撞關系:
P2中形狀碰撞不完善,一些形狀之間無法實現碰撞,各個形狀之間的碰撞關系見表:

?

Circle

Plane

Box

Convex

Particle

Line

Capsule

Heightfield

Ray

Circle

Yes

-

-

-

-

-

-

-

-

Plane

Yes

-

-

-

-

-

-

-

-

Box

Yes

Yes

Yes

-

-

-

-

-

-

Convex

Yes

Yes

Yes

Yes

-

-

-

-

-

Particle

Yes

Yes

Yes

Yes

-

-

-

-

-

Line

Yes

Yes

?

?

-

-

-

-

-

Capsule

Yes

Yes

Yes

Yes

Yes

?

Yes

-

-

Heightfield

Yes

-

Yes

Yes

?

?

?

-

-

Ray

Yes

Yes

Yes

Yes

-

Yes

Yes

Yes

-

其中?部分是有待完善的。

3)形狀屬性:?
p2的幾種內置形狀各有自己的屬性,但都繼承自Shape類,所以有共同的屬性,包含在Shape的構造函數內:?
function Shape(options?:{?
position?:number[],?
angle?:number,?
collisionGroup?:number,?
collisionMask?:number,?
sensor?:boolean,?
collisionResponse?:boolean,?
type?:number,?
material?:Material});?
其中,position是形狀相對于本地坐標中心的偏移量,這個偏移量會影響剛體的重心;angle為形狀在剛體本地坐標系統中傾斜的角度;collisionGroup為碰撞分組,與collisionMask一起使用,限制當前形狀只與指定條件的形狀發生碰撞;collisionMask為碰撞篩選,與collisionGroup一起使用,限制當前形狀只與指定條件的形狀發生碰撞;sensor設置形狀是否為敏感區域,默認false,如果設置為true,則該形狀不參與碰撞模擬,只作為感應區域;collisionResponse設置當與其他剛體發生碰撞時,當前形狀是否進行碰撞模擬,默認true,如果設為false,碰撞發生時當前形狀會穿過碰撞剛體;type為剛體類型,取值范圍是Shape. CIRCLE和Shape.BOX等常量之一,不需要設置該參數,系統會自動設置。?
使用collisionGroup和collisionMask屬性時,有兩個形狀si和sj,對si的collisionGroup屬性與sj的collisionMask屬性按位與運算,再對sj的collisionGroup屬性與si的collisionMask屬性按位與運算,如果兩個結果均不為0,則忽略此次si與sj的碰撞檢測。因為要按位運算,所以一般設置成2的倍數。?
material為材質,是一個Material對象,用來設置形狀發生碰撞時表現出的響應特性,如摩擦力、彈性系數等?
實際上,Material類中并不包含摩擦力、彈性系數等屬性,它只是一個標志類,只是一個id,真正實現碰撞響應特性的是ContactMaterial類。ContactMaterial類用來為添加了merialA和merialB標識的兩個形狀設置獨特的碰撞響應特性,構造函數為:?
function ContectMaterial(?
materialA:Material, materialB:Material,?
options?:{?
friction:number,?
restitution:number,?
stiffness:number,?
relaxation:number,?
frictionStuffness:number,?
frictionRelaxation:number,?
sufaceVelocity:number})?
其中,materialA是形狀shapeA的材質標識,materialB是形狀shapeB的材質標識,options是兩個形狀發生碰撞時響應特性的設置;friction是兩個形狀接觸面的摩擦系數,默認0.3;restitution是兩個形狀碰撞時的彈性系數,默認0;stiffness等同于ContactEquation的stiffness屬性,只碰撞時形狀表面的硬度,默認1000000,當stiffness較小時形狀之間可以重疊并有一個排斥力促使分離,形成海綿或水平的彈性表面效果;relaxation等同于ContactEquation的relaxation,指當形狀之間重疊后,在一次碰撞模擬計算過程中實施排斥力的次數,可以想象成粘稠度,取值大時剛體速度衰減快;sufaceVelocity是兩個剛體接觸時,接觸面方向上兩個剛體的相對速度,如果其中一個剛體靜止,則sufaceVelocity表示另一個剛體的速度,常用來模擬傳送帶效果。

4)形狀貼圖:
游戲中,物理對象需要對應的游戲圖像素材來呈現,需要使用圖片對剛體形狀貼圖。貼圖的過程,實際上是根據物理模擬后剛體的信息,實時更新圖片素材的坐標和角度。步驟為:?
⑴保存剛體與素材圖片的對應關系:?
Egret游戲中的圖片素材,通常是通過RES對象加載進來,需要為剛體添加一個自定義屬性,用來保存對應素材的引用。示例:?
body.userData=image;?
⑵遍歷world中所有剛體,查找擁有自定義素材屬性的剛體:?
world中所有的剛體都保存在bodies數組中,通過數組的foreach()方法,可以遍歷其中的每一個body,如果定義的body.userData屬性不為null,則進行貼圖:?
this.world.bodies.forEach(function(body:p2.Body){?
if(body.userData!=null){?
//更新素材坐標和角度?
}?
}?
⑶根據剛體信息,實時跟新對應圖像素材的坐標和角度:?
在ENTER+FRAME事件處理函數中,將剛體坐標和角度屬性賦值給素材,實時更新》?
body.userData.x=body.positon[0]*this.factor;?
body.userData.y=body.positon[1]*this.factor;?
body.userData.rotation=body.angle*180/Math.PI;?
Egret加載的圖片,原點默認為左上角,而剛體的原點處于其重心,根據形狀不同,重心位置也不同。在更新素材圖片前,需要根據剛體重心的坐標偏移量(offsetX,offsetY)設置圖片的anchorOffsetX和anchorOffsetY屬性。示例代碼:?
private bindAsset(body:p2.Body, assetName:string):void{?
var offset:number[]=[];?
body.updateAABB();?
var bodyWidth:number=body.aabb.upperBoumd[0]-body.aabb.lowerBound[0];?
var bodyHeight:number=body.aabb.upperBoumd[1]-body.aabb.lowerBound[1];?
var asset:egret.Bitmap=new egret.Bitmap();?
asset.texture=RES.getRes(assetName);?
asset.scaleX=bodyWidth*this.factor/asset.width;?
asset.scaleY=bodyHeight*this.factor/asset.height;?
this.addChild(asset);?
p2.vec2.subtract(offset, body.position, body.aabb.lowerBound);?
asset.anchorOffsetX=offset[0]/assets.scaleX*this.factor;?
asset.anchorOffsetY=offset[1]/assets.scaleY*this.factor;?
body.userData=asset;?
}?
通過body.updateAABB()更新剛體的aabb屬性,然后才能獲取到正確的upperBoumd和lowerBound數組的值。通過向量的subtract()方法,計算剛體坐標position,是相對于剛體最小包圍盒左上角aabb.lowerBound的偏移量,保存在offset變量中。代碼中,按照縮放比例將offset偏移量賦值asset的anchorOffsetX和anchorOffsetY屬性,調整圖片控制點,實現圖片與剛體的完全貼合。

4. 剛體屬性:

P2可以創建多種形狀的剛體,剛體除了形狀外還有各種屬性,有數十種,大概分為4類,速度相關、角度相關、對象相關,還有其他屬性。

1)速度相關屬性:
⑴position:number[]=[0,0];?
表示剛體在全局坐標系的位置,是一個二維向量Vec2,默認[0,0]。任何物體都需要通過position屬性進行精確定位和移動,p2在進行物理模擬時會自動更新剛體位置坐標,也可以在需要時直接修改其屬性值:body.position=[100,100];?
⑵velocity:number[]=[0,0];?
表示剛體的線性速度,單位像素/秒,是一個二維向量。P2使用包含兩個元素的數組表示速度,第1個元素表示x分量,第2個元素表示y分量。?
⑶damping:number=0;?
表示線性速度阻尼,也稱速度衰減系數,取值在0~1之間,默認0。假設剛體當前線速度為v,經過一次模擬計算后,受阻尼影響,剛體線性速度變為v*(1-damping),也就是剛體的線速度會隨時間的以1-damping為倍數下降。damping可以用來模擬剛體與地面之間的摩擦力。?
⑷fixedX:boolean=false;?
設定是否固定剛體的x坐標,默認false。當設置為true時,剛體只能在y軸方向上下移動。?
⑸fixedY:boolean=false;?
設定是否固定剛體的y坐標,默認false。當設置為true時,剛體只能在x軸方向左右移動。?
設定了fixedX及fixedY屬性后,需要調用updateMassProperties()方法,才能使其發揮作用。?
⑹force:number[]=[0,0];?
表示剛體當前受到的作用力大小,是一個二維向量。P2通過剛體的force來模擬外力的作用,施加的外力作用于剛體的中心位置,不會引起旋轉。如果模擬施加一個外力到物體頂部而推倒物體,P2通過Body類的applyForce()方法,可以自定義外力作用的位置,模擬類似旋轉效果。?
因為world調用step()方法后,force屬性將被置零,如果需要模擬持續施加作用力,需要在step()方法前持續設置force屬性。?
⑺gravityScale:number=1;?
設置當前剛體的重力加速度縮放比例,默認為1。如果當前重力加速度為gravity=[x,y],那么設置gravityScale后,重力加速度為[x*gravityScale, y*gravityScale]。?
如果設置gravityScale為0,當前剛體將不受重力加速度影響;若gravityScale設為負值,那么剛體將沿重力加速度反方向移動。

2)角度相關屬性:
⑴angle:number=0;?
表示剛體角度,為弧度值,正值增大為順時針旋轉。?
⑵angularVelocity:number=0;?
表示剛體角速度,即旋轉速度,默認為0。如果angularVelocity>0,剛體順時針旋轉;如果angularVelocity<0,剛體逆時針旋轉。angularVelocity單位是弧度/秒,因為P2更新step()方法是每幀調用,需要轉換成弧度/幀。假設游戲幀頻為fps,角速度為a1,轉換后的每幀弧度為:a2=a1/fps。?
⑶angularDamping:number=0.1;?
表示剛體角速度阻尼,取值范圍0~1,默認0.1。假設當前角速度為r,P2進行一次模擬計算后,受阻尼影響,剛體角速度將變為r*(1-damping)。?
⑷angularForce:number=0;?
表示剛體在角速度方向上受到扭力大小,單位N,默認0。angularForce作用的結果是使剛體旋轉,取值越大,剛體角速度變化越大。如果angularForce>0,扭力會促使剛體順時針旋轉;如果angularForce<0,扭力使剛體逆時針旋轉。實際上,在剛體上施加angularForce扭力后,形成一個旋轉加速度a,單位弧度/平方秒,如果剛體質量為m,它們之間的關系為:?
a=angularForce/m?
也即剛體加速度以每秒弧度為a的變化量遞增。如果使用角度/幀為單位,公式相應轉換為:?
a=dt*(angularForce/m)*(180/Math.PI)?
⑸fixedRotation:boolean=false;?
設置是否固定剛體角度,默認false。當fixedRotation為true時,剛體角度不會因碰撞或運動而發生變化,比如保持人一直處于垂直站立狀態。設置fixedRotation屬性后,也需要調用updateMassProperties()方法才能起作用。

3)對象相關屬性:
⑴shapes;Shape[];?
表示剛體中包含的所有形狀,均保存在這個shapes數組中。通過遍歷數組,可以對剛體中的每個形狀單獨進行操作。如果要計算剛體整體形狀的面積,就需要遍歷shapes屬性中的所有形狀,通過area屬性,將這些形狀的面積累加起來,得到整體形狀的面積,代碼為:?
var totalArea=0;?
for(var i=0; i<this.shapes.length;i++){?
titalArea+=this.shapes[i].area;?
}?
這個功能實際上已經集成到了Body類的getArea()方法中,可以直接調用這個方法。?
⑵world:World;?
表示剛體當前所在的world。通常情況下,一個P2應用中只有一個world世界,但需要時也可以創建多個world。無論是一個還是多個world,都可以通過world屬性獲取剛體所在的world,然后進行addBody()、Raycast()等操作。

4)其他屬性:
⑴id:number;?
表示剛體的唯一標識。P2中的每一個剛體都是唯一的,在碰撞檢測等過程中,可以通過id屬性來對指定的剛體進行識別。?
⑵type:number;?
剛體類型。P2中可用的剛體類型有3種,靜態剛體、可動剛體、動態剛體,默認為靜態剛體。type的屬性值為3個常量:?
·靜態剛體Body.STATIC:靜態剛體在world中始終保持靜止,不受重力影響,其坐標、角度不會因為碰撞而發生變化,一般使用綠色表示靜態剛體。?
·可動剛體Body.KINEMATIC:這種剛體是可動的,但不受重力影響,其坐標、角度不會因為碰撞而發生變化。所謂可動,指可通過設置剛體的velocity或angularVelocity等屬性,使其動起來,常使用紫色表示。?
·動態剛體Body.DYNAMIC:是最常用的類型,在重力作用下可進行自由落體運動,通過velocity、angularVelocity、force等屬性可使其動起來;當碰撞發生時,速度和角度相應發生變化,進行物理碰撞模擬,常常使用粉色表示。?
⑶mass:number;?
表示剛體的質量。P2中的剛體,沒有密度density屬性,mass充當了密度角色,默認為0,此時剛體為靜態剛體。當mass>0,剛體類型自動轉換為動態剛體,數值越大,慣性越大。?
⑷ccdIterations:number=10;?
當剛體高速運動時,P2會在一次step()中進行連續多次碰撞檢測,ccdIterations即表示這個檢測次數,默認為10。ccdIterations越大,碰撞模擬越精確,但計算效率也降低。?
⑸ccdSpeedThreshold:number=-1;?
只CCD碰撞檢測的最低速度,即速度超過ccdSpeedThreshold門限時,P2將對剛體進行連續碰撞檢測,默認為-1,此時不進行連續碰撞檢測。?
⑹collisionResponse:boolean=true;?
指定當與其他剛體發生碰撞時當前剛體是否會進行碰撞模擬,默認為true。如果設為false,則碰撞檢測發生時,當前剛體不進行碰撞模擬,會穿過剛體,但此時仍會觸發碰撞事件,并產生ContactEquation。?
⑺allowSleep:boolean=true;?
指定是否允許剛體進入睡眠狀態,默認true。正常情況下,P2會遍歷world中的每個剛體,對其進行紋理模擬計算。當剛體的速度為0,處于靜止狀態時,剛體會進入睡眠狀態,P2將不再對其進行物理模擬計算,以提升效率。這個屬性起作用,world的allowSleeping= World.BODY_SLEEPING。?
⑻sleepSpeedLimit:number=0.2;?
為剛體進入睡眠狀態時的最小速度,默認0.2,即當剛體速度小于sleepSpeedLimit時,剛體進入睡眠狀態。其前提是剛體的allowSleep為true。?
⑼sleepState:number=Body.AWAKE;?
為剛體當前睡眠狀態,默認為喚醒狀態。剛體睡眠狀態有3種:?
·Body.AWAKE:剛體處于喚醒狀態,P2對剛體進行正常的物理模擬計算,更新其屬性?
·Body.SLEEPY:當剛體的速度為sleepSpeedLimit,剛體進入SLEEPY瞌睡狀態,該狀態下P2也對剛體進行物理模擬計算?
·Body.SLEEPING:當剛體進入SLEEPY狀態超時時間sleepTimeLimit,才進入SLEEPING睡眠狀態。此時,P2在遍歷所有剛體,將通過當前剛體,不對其進行物理模擬計算。?
⑽sleepimeLimit:number=1;?
為剛體從瞌睡Body.SLEEPY狀態進入睡眠狀態Body.SLEEPING狀態需要的時間,默認為1秒。?
⑾idleTime:number;?
剛體已經進入睡眠Body.SLEEPING狀態的時長。

5. 剛體操作:

1)addBody和removeBody:
World類中的addBody()和removeBody()分別用來上P2世界添加和刪除剛體。所有創建好的剛體,必須通過addBody()添加到P2世界中,才可以進行碰撞模擬:?
var body:p2.Body({mass:1, position:[1,1]});?
this.world.addBody(body);?
當物體被子彈擊中,或超出屏幕范圍時,需要刪除剛體,可以通過removeBody()將其從P2世界中刪除,同時還可以避免不必要的計算。示例代碼:?
this.world.removeBody(bodyToRemove);?
2)addShape和removeShape:
Body類中的addShape()和removeShape()分別用來向剛體中添加和刪除形狀。使用addShape():?
var shape:p2.Rectangle=new p2.Rectangle(100,50);?
var body:p2.Body=new p2.Body({mass:1, position:[1,1]);?
body.addShape(shape);?
其實,addShape()中還有其他參數,構造函數為:?
function addShape(shape:p2.Shape, offset:number, angle:number)?
其中參數除了被添加的形狀shape,還有兩個參數,offset為形狀相對于坐標原點的偏移量,angle為形狀的角度,這兩個參數都是相對于剛體本地坐標系而言,即會隨剛體的變化而變化。?
可以通過removeShape()方法將指定的形狀從剛體中刪除。?
形狀的添加或刪除,并不會改變剛體的重心坐標,因此可用來模擬不倒翁效果。?
3)adjustCenterOfMass:
調整重心位置。剛體中增加或移去形狀后,重心并不會自動改變,可以使用adjustCenterOf Mass()方法,使剛體重心重新回到中心位置。這個方法不帶任何參數,也沒有返回值。?
4)applyForce:
作用力可以讓剛體狀態改變,通過applyForce()方法,可以在指定點worldPoint對剛體施加一個作用力,形成一個加速度或扭力,改變剛體的線速度或角速度。構造函數為:?
function applyForce(force:number[], worldPoint:number[])?
其中,force是要施加的作用力,這是一個二維向量; worldPoint是一個全局坐標點,表示force在剛體上的作用點,當此點不在剛體重心位置時,剛體角度也會發生變換。?
5)applyImpulse:
如果要瞬間改變剛體的狀態,如子彈彈出膛效果,需要使用applyImpulse()對其施加沖量,使剛體的速度和角速度瞬間發生變化。?
function applyImpulse(impulse:number[], relativePoint:number[])?
其中,impulse為要施加的沖量,沖量有大小和方向,是一個二維向量; relativePoint是一個本地坐標點,表示沖量的作用點,當作用點不在剛體中心時剛體角度也會發生變化。?
6)sleep和wakeup:?
Body的sleep()方法強制使剛體進入睡眠狀態,此時除了sleepState處于Body.SLEEPING狀態外,剛體的速度、角速度、受到的作用力、扭力等都會全部清零。?
function sleep(){?
this.sleepState=Body.SLEEPING;?
this.angularVelocity=0;?
this.angularForce=0;?
vec2.set(this.velocity, 0, 0);?
vec2.set(this.force, 0, 0);?
this.emit(Body.sleepEvent);?
};?
剛體進入睡眠狀態后,通過調用wakeup()方法,可以將剛體強制喚醒,但僅僅是將sleepState設置為Body.AWAKE,睡眠狀態前的速度、角度等屬性不會恢復:?
function wakeup(){?
var s=this.sleepState;?
this.sleepState=Body.AWAKE;?
this.idleTime=0;?
if(s!==Body.AWAKE){?
this.emit(Body.wakeUpEvent);?
}?
}?
可以使用sleep()方法實現類似冰凍效果。?
7)emit、on、off、has:
P2物理引擎中,通過EventEmitter類實現事件派發機制,并通過emit()、on()、off()、has()方法分別實現派發、監聽、取消監聽,以及檢測是否包含指定事件功能。?
⑴emit():派發自定義事件,事件類型使用任意字符串表示:?
function emit(event:Object)?
其中,event為要派發的自定義事件,是一個Object類型,用于包含任何需要通過事件傳遞的信息。在自定義事件時,event對象至少要包含名為type的字符串屬性值,表示事件名稱:?
body.emit({type:"movingUp"});?
⑵on():監聽對應的自定義函數?
監聽到事件對象,將作為參數傳遞給事件監聽函數,示例代碼為:?
var onMyEvent=function(event){?
console.log("onMyEvent is fired, because I am moving up.");?
};?
body.on("movingUp", onMyEvent);?
on()方法的參數是字符串類型的事件名稱,并在事件觸發時調用一個處理函數。?
⑶off():取消監聽?
當不需要監聽某個事件時,將事件名稱和事件監聽函數作為參數傳遞給off()方法,就可以取消監聽。示例代碼:?
body.off("movingUp", onMyEvent);?
⑷has():檢查對象是否包含指定的事件監聽?
Body類因為繼承了EventEmitter類,所以也擁有上面4個方法。通過這些方法,可以方便地對剛體的某些特定狀態進行監聽,如睡眠或蘇醒。Body類內置了睡眠和蘇醒事件:?
·sleepEvent:當剛體進入睡眠狀態時派發該事件,對應事件名稱為sleep,監聽使用body. on("sleep", onMyEvent);?
·wakeupEvent:當剛體從睡眠狀態恢復至蘇醒狀態時,派發wakeupEvent事件,事件名為wake,監聽使用body.on("wake", onMyEvent);?
·sleepyEvent:當剛體進入瞌睡狀態時,派發該事件。Body有一個sleepSpeedLimit屬性,當剛體的速度小于sleepSpeedLimit值時就進入瞌睡狀態;如果該狀態持續時間超過body. sleepTimeLimit,則剛體進入睡眠狀態。sleepyEvent對應的事件名為sleepy,監聽使用body. on("sleepy", onMyEvent);?
除了上述內置事件,還可以自定義事件,比如在step()方法中持續判斷body.velocity.y是否小于0,來檢測剛體向上運動,派發自定義moveUp事件:?
public loop():void{?
this.world.step(60/1000);?
this.debugDraw.drawDebug();?
if(this.bodyRef.velocity[1]<0){?
this.bodyRef.emit({type:"myEvent"});?
}?
}?
8)fromPolygon:
fromPolygon用于將多邊形分解成一個個小的形狀,然后組合成完整的多邊形。?
function fromPolygon(path:number[][], [options]):boolean?
其中,path保存了多邊形頂點數組,options為可選屬性,定義多邊形分解的相關設置。?
options包括的選項有:?
·optimalDecomp=false:是否進行最佳分解,默認false,開啟該選項會降低計算速度?
·skipSimpleCheck=false:是否進行頂點交叉的判斷,如果確定不存在交叉點可設為true?
·removeCollinearPoints=false:是否剔除共線頂點,false表示不剔除?
如果多邊形創建成功返回true,否則返回false。導致創建失敗有幾種原因,比如創建的形狀中有空洞、頂點和邊之間有交叉。可以編程將鼠標光標移動的軌跡中的點作為多邊形的頂點。也就是隨手創建剛體。?
9)hitTest:
用于實現指定坐標點與剛體的碰撞檢測,并將檢測到的碰撞剛體保存到數組中返回。?
function hitTest(worldPoint:number[][], bodies:Body[], precision:number):Body[]?
其中,worldPoint為要檢測的坐標點,是一個全局坐標點;bodies為要檢測的剛體清單,可以將需要檢測的剛體保存到bodies數組中,實現有針對性的碰撞檢測。如果要對所有的剛體進行檢測,可以直接設置該參數為world.bodies,即:hitTest(worldPoint, world.bodies);?
參數precision為檢測精度,默認為0,取值越大檢測精度越高,計算效率會降低,一般使用默認值,對尺寸極小的物體,如particle和line需要設置。方法的返回值為保存了與worldPoint發生碰撞所有剛體的數組。?
hitTest()最常用用于檢測鼠標光標點擊、拖曳效果。P2中沒有鼠標光標事件,可以通過hitTest()來判斷鼠標點是否與剛體發生碰撞,然后調整剛體的position至鼠標位置,實現對剛體的拖曳。為了便于拖曳,在鼠標點擊時通過sleep()方法將剛體設為睡眠狀態,使其不受重力影響,可以精確地隨鼠標光標移動,當拖曳完成彈起時再使用wakeUp()方法重新喚醒剛體,恢復重力的作用。?
10)getAABB:
獲取剛體的最小包圍盒AABB(Axis Align Bounding Box),最小包圍盒AABB是指包圍形狀的最小矩形框。可以通過設置剛體的isDrawAABB=true,以顯示出剛體的AABB。AABB對象將矩形對象的左下角和右下角坐標分別保存在屬性lowerBound和upperBound中。?
11)getArea:?
獲取剛體的當前所有形狀的面積總和。?
12)setDensity:
設置剛體的密度,結構為:?
function setDensity(density:number)?
其中,density為要設置的密度,是取值大于0的數值。?
實際上,P2中的剛體并沒有密度屬性,當調用setDensity()方法后,Body會根據剛體當前的面積area計算出對應的質量并保存在mass屬性中。?
13)overlaps:
檢測當前剛體與指定剛體是否有重疊,并返回檢測結果,結構為:?
function overlaps(body:Body):boolean?
其中,body為要檢測的目標剛體。如果剛體之間有重疊則返回true,否則返回false。?
目標剛體與被檢測剛體需添加到world中,才能確保overlaps()的正常運行。通常并不需要使用overlaps()進行重疊檢測,因為P2在實施碰撞檢測和模擬時已經完成了這些內容,只有當剛體不進行碰撞模擬時才需要使用overlaps()。比如在界面中放置一個物體,當此位置已經存在物體時不能放置。?
14)toWorldFrame和toLocalFrame:
toWorldFrame()是將剛體本地坐標系統中的坐標點轉換成全局坐標點,toLocalFrame()是將全局坐標點轉換成剛體本地坐標系統中的坐標點。通過這兩個方法,可以實現本地坐標和全局坐標之間的轉換。?
function toWorldFrame(out:number[], localPoint:number[]):void?
function toLocalFrame(out:number[],worldPoint:number[]):void?
其中,out為轉換后的本地坐標或全局坐標,將保存在該屬性對應的變量中; localPoint為要轉換的本地坐標;worldPoint為要轉換的全局坐標。?
15)raycast:
射線投射技術用于實現線段與形狀的碰撞檢測,通常用來模擬人物的視野、距離探測等。實現射線投射,要先從起點from到終點to構建一條射線ray,然后檢測與該線段發生碰撞的剛體,并保存在一個RaycastResult對象中。raycast結構為:?
function raycast(result:RaycastResult, ray:Ray)?
其中,result是保存了碰撞剛體、碰撞點、碰撞距離等信息的一個RaycastResult對象;ray是用于檢測的射線,是一個Ray類,包含起點from、終點to等屬性。使用射線投射,需要用到Ray類和RaycastResult類。?
①Ray類:
Ray類的構造函數為:?
function Ray([options])?
其中,options參數是一個Object對象,初始化Ray對象時,可以保持options缺省,然后再通過Ray屬性進行設置。Options對象中包含一些參數:?
·from:number[]:線段的起點,一個二維向量?
·to:number[]:線段的終點,一個二維向量?
·mode:number:射線的碰撞檢測模式,取值為3個常量,分別為Ray.ALL、Ray.CLOSEST、Ray.ANY。Ray.ALL模式下,raycast()函數會檢測所有與射線ray發生碰撞的剛體;Ray.CLOSEST模式下,返回檢測到的碰撞剛體中距離起點from最近的剛體;Ray.ANY模式下,當ray檢測到第1個碰撞剛體時會立刻停止檢測并返回該剛體,這時的第1個剛體與創建時的順序有關。?
·callback:Function:回調函數,當raycast()檢測到碰撞剛體后會立即調用回調函數,該屬性只適用于rayCastAll()?
·collisionMask:number:與collisionGroup配合使用,對檢測剛體進行篩選?
·collisionGroup:number:與collisionMask配合使用,對檢測剛體進行篩選,只有滿足條件的剛體才參與碰撞檢測,檢測條件為:?
(this.collisionGroup&body.collisionMask)&&(body.collisionGroup&this.collisionMask)==true?
·skipBackface:是否忽略射線ray反方向與剛體的碰撞點,值為false時只檢測正方向?
·checkCollisionResponse:配合Body中的collisionResponse屬性,如果剛體的屬性collisionResponse和checkCollisionResponse同時為true,則不對該剛體進行檢測。?
·direction:射線方向,可以缺省,取決于from和to屬性?
·length:射線從起點from到終點to的間距?
②RaycastResult類:
RaycastResult類用于保存射線與剛體的碰撞信息,包括幾個屬性:?
·body:當前碰撞檢測中,與射線ray發生碰撞的剛體?
·shape:當前碰撞剛體中,與射線ray發生重疊的形狀?
·fraction:射線起點from到碰撞點之間的距離distance與射線長度length的比例?
·normal:垂直于射線碰撞邊的法向量,只讀屬性,默認-1?
RaycastResult類還有一些方法:?
·hasHit():是否檢測到與射線ray發生碰撞的剛體,當檢測到時返回true?
·getHitDistance():當檢測到與射線發生碰撞的剛體時,碰撞點與射線起點from間的距離?
function getHitDistance(ray:Ray):number?
·getHitPoint():獲取碰撞點位置,返回結果是一個全局坐標點?
此方法的結構為function getHitPoint(out:number[], ray:Ray):void?
其中,out為用于保存碰撞點坐標的二維向量,ray為當前進行碰撞檢測的射線。?
·stop():用于立即停止碰撞檢測?
因為raycast()方法中的RaycastResult會重復使用,所以回調函數中獲取到的是最后一次碰撞檢測信息。

6. 碰撞處理:

P2可以實現物體碰撞模擬,同時在碰撞過程中派發一些事件實現碰撞檢測,將碰撞信息及時反饋,以添加相應的特效。?
P2中,當兩個剛體的最小包圍盒AABB發生重疊,碰撞就開始了;然后剛體的形狀發生重疊,同時P2會對重疊進行修復,使剛體朝對方的反方向移動,來消除形狀重疊;當形狀不再有重疊時,整個碰撞過程結束。可以把碰撞過程分為4個階段:?
·postBroadphase:AABB開始發生重疊,但形狀并沒有發生接觸?
·beginContact:剛體形狀開始發生重疊,剛體繼續保持原有速度移動?
·preSolve:剛體形狀發生了重疊,但P2還未進行碰撞處理?
·endContact:P2已經完成了碰撞處理,并為碰撞剛體重新分配了速度,同時剛體形狀分離,不再有重疊?
1)碰撞事件:
碰撞過程會產生4個事件,postBroadphase、preSolve、beginContact、endContact。在碰撞事件派發后,可以通過world類的on方法來監聽事件,并在監聽處理函數中進行對應的處理。on方法的結構為:?
function on(type:String, listener:functtion)?
其中,type為監聽事件名,為一個字符串,取值為對應的事件名稱;listener為事件監聽函數,當監聽到碰撞事件后,會自動調用監聽函數,并將碰撞事件對象作為參數傳遞給監聽處理函數。碰撞監聽函數的參數event是一個Object對象,對應碰撞事件對象,其中保存碰撞信息。?
在on事件處理函數中,this指的是派發事件的對象context,也就是world對象,而不再是主類中的this。因此,需要在on函數之前,將this指針保存到一個局部變量中,然后才能在事件處理函數中通過這個局部變量訪問主類中的變量和方法。?
on()方法監聽碰撞事件時,會將對應的碰撞事件對象作為參數傳遞給監聽處理函數,這些碰撞事件對象為:postBroadphaseEvent、preSolveEvent、beginContactEvent、endContactEvent。?
①postBroadphaseEvent:
當兩個剛體的AABB發生重疊時,不斷派發postBroadphase事件,并將碰撞信息保存到對應的postBroadphaseEvent對象中,該對象包含屬性pairs,即保存碰撞剛體對的數組。因為尚未進行剛體形狀的碰撞檢測,所以此時對pairs數組中的碰撞進行刪減可以取消對應碰撞剛體之間的碰撞模擬。但刪除pairs后,將不再進行beginContact和endContact事件派發。?
②preSolveEvent:
在剛體形狀發生重疊時,P2會根據動量守恒定律,對碰撞對象的速度和角度重新計算,實現碰撞模擬,這個過程稱為solve。preSolve事件在碰撞模擬過程前派發,在preSolve事件處理函數中進行一些處理可以取消或干預碰撞的模擬。?
preSolveEvent對象的屬性有:?
·contactEquations:保存當前碰撞產生的所有contactEquation對象的數組?
·frictionEquations:保存當前碰撞產生的所有frictionEquation對象的數組?
preSolve事件會隨step()方法不斷派發,在剛體形狀之間沒有重疊前,contactEquations屬性中并不包括contactEquation對象,所以代碼中要先進行判斷:contactEquations.length>0。?
③beginContactEvent:
當剛體形狀發生重疊時會派發beginContact事件,并將碰撞信息保存在對應的beginContact Event對象中,其中屬性有:?
·shapeA:發生碰撞的形狀A?
·shapeB:發生碰撞的形狀B?
·bodyA:形狀shapeA對應的剛體?
·bodyB:形狀shapeB對應的剛體?
·contactEquations:保存當前碰撞產生的所有contactEquation對象的數組?
④endContactEvent:
當前兩個碰撞剛體的形狀分離而不再重疊時會派發endContact事件,并將碰撞信息保存在對應的endContactEvent對象中,包含的屬性有:?
·shapeA:發生碰撞的形狀A?
·shapeB:發生碰撞的形狀B?
·bodyA:形狀shapeA對應的剛體?
·bodyB:形狀shapeB對應的剛體?
2)碰撞信息Equation:
在P2引擎中,Equation類用來保存碰撞發生時的碰撞點、碰撞向量等信息。一般用其兩個子類ContactEquation和FrictionEquation來保存不同類型的信息。?
①ContactEquation:
碰撞過程中,因接觸而產生的碰撞信息,如碰撞點、碰撞向量、碰撞剛體等,都保存在ContactEquation對象中。在preSolve和beginContact階段,會產生多個ContactEquation對象,并分別保存在preSolveEvent和beginContactEvent事件對象的ContactEquation屬性中。?
·shapeA:發生碰撞的形狀A?
·shapeB:發生碰撞的形狀B?
·bodyA:形狀shapeA對應的剛體?
·bodyB:形狀shapeB對應的剛體?
·contactPointA:自bodyA的坐標起,到碰撞點的全局向量?
·contactPointB:自bodyBA的坐標起,到碰撞點的全局向量?
·enabled:是否對當前的ContactEquation對象進行碰撞模擬,默認true,如果在preSolve階段將其設為false可以取消碰撞模擬?
·firstImpact:是否為第1次碰撞,當第1次碰撞step()完成后,firstImpact立即設為false?
·normalA:垂直于剛體碰撞邊的法向量,這是一個全局的單位向量?
·restitution:碰撞剛體之間的碰撞彈性系數,取值0~1。該系數只影響當前碰撞的模擬,如果對shapeA和shapeB設置contactMaterial,其restitution屬性不受影響。?
②FrictionEquation:
碰撞過程中,因剛體相對運動而產生的摩擦等碰撞信息,保存在FrictionEquation對象中。在碰撞的preSolve階段會產生FrictionEquation對象,并保存在preSolveEvent事件對象的FrictionEquation屬性中。FrictionEquation對象包含的屬性有:?
·shapeA:發生碰撞的形狀A?
·shapeB:發生碰撞的形狀B?
·bodyA:形狀shapeA對應的剛體?
·bodyB:形狀shapeB對應的剛體?
·frictionCoefficient:碰撞時剛體之間的碰撞系數,取值越大速度衰減越快,只影響當前碰撞模擬。如果有對shapeA和shapeB設置contactMaterial,其friction屬性不受影響。?
·t:碰撞邊的切線方向向量?
需要注意,frictionCoefficient屬性需要在world.solver.frictionIterations>0情況下才起作用,frictionIterations默認是0,需要在創建world時設置其值。

7. 關節:

P2中使用Constraint及其子類表示關節,也就是將兩個剛體按照指定的規則約束在一起,形成有規律的、相互限制的運動模擬。P2關節模擬中,兩個剛體沒有通過任何剛體連接,只是通過算法模擬出關節運動軌跡。為了更加直觀,p2DebugDraw類中使用黑色的線段表示連接剛體的連桿,黑點圓的表示關節節點anchor。?
P2中關節有5種,每一種都有獨特的約束規則,包括距離關節DistanceConstraint、齒輪關節GearConstraint、鎖定關節LockConstaint、位移關節PrismaticConstraint、旋轉關節Revilute Constraint。?
1)距離關節DistanceConstraint:
按照指定的距離distance將兩個剛體約束在一起,其中任何一個剛體的位置發生變化,會牽著另一個剛體運動,以保證兩者的間距為distance。但是兩個剛體的角度不受約束,可以繞著節點旋轉。DistanceConstraint構造函數為:?
function DistanceConstraint(bodyA:Body, bodyB:Body, options:object)?
其中,bodyA和bodyB為受約束的剛體,options為關節設置選項,可以缺省,P2以默認值設置,其中選項為:?
·distance:兩個剛體受到約束時保持的間距,默認為添加關節時兩個剛體之間的間距?
·localAnchorA:關節點相對于剛體bodyA本地坐標系統的坐標系,默認[0,0]?
·localAnchorB:關節點相對于剛體bodyB本地坐標系統的坐標系,默認[0,0]?
·maxForce:剛體運動中,如果距離不等于distance,為保持距離而對剛體施加的最大作用力,默認為Number.MAX_VALUE?
除了上面的構造函數中的參數,距離關節還包含一些屬性:?
·lowerLimit:設置距離關節約束范圍下限,即bodyA到bodyB的距離最小值,默認為0,該屬性必須大于0。只有當lowerLimitEnabled為true時才起作用。?
·lowerLimitEnabled:是否設置距離關節約束范圍下限,默認false。?
·upperLimit:設置距離關節約束范圍上限,即bodyA到bodyB的距離最大值,默認為0,該屬性必須大于0。只有當upperLimitEnabled為true時才起作用。?
·upperLimitEnabled:是否設置距離關節約束范圍上限,默認false?
·position:bodyA和bodyB的當前間距?
可以通過joint.collideConnected屬性為true,避免平臺和車輪之間的碰撞。創建完成后需要使用world的addConstraint(joint)方法將關節加入世界。?
2)齒輪關節GearConstraint:
按照指定的比例ratio,將兩個剛體的角度angleA和angleB約束為angle=angleB*ratio。其中任何一個剛體的角度變換,都會牽著另一個剛體的角度變化,以確保兩個剛體角度的比例為ratio。剛體的坐標位置不受約束,可以自由向任意方向移動。構造函數為:?
function GearConstraint(bodyA:body, bodyB:Body, options:Object)?
其中,bodyA和bodyB為受關節約束的兩個剛體,options為關節設置選項,可以缺省,P2會按默認值進行設置。選項為:?
·angle:兩個剛體的相對角度差,齒輪關節會將一個剛體的角度減去該角度差后,再保證角度變化量的比例為ratio?
·ratio:兩個剛體的角度變化量的比例,當ratio=2時,bodyB旋轉180°,bodyA只轉90°?
·maxForce:當兩個剛體的角度比例不是ratio時,為將其約束為ratio而對剛體施加的最大扭力?
齒輪關節還有兩種方法:?
·setMaxForce(force):當bodyB的角度偏離angle,齒輪關節對bodyB施加的最大扭力?
·getMaxForce():number:獲取setMaxForce()中設置的最大作用力?
3)鎖定關節LockConstraint:
將兩個剛體綁定在一起,使其相對坐標位置、角度差保存不變,仿佛被釘在一起。此關節中的任何剛體坐標或角度發生變化,都會牽著另一個剛體的坐標和角度變化,以確保兩個剛體相對坐標和角度分別為localOffsetB和localAngleB。構造函數:?
function LockConstraint(bodyA:Body, bodyB:body, options:Object)?
其中,bodyA和bodyB為受關節約束的兩個剛體,options為關節設置選項,可以缺省,P2會按默認值進行設置。選項為:?
·localOffsetB:剛體bodyB在關節約束下,相對于bodyA本地坐標系的偏移量,默認為添加關節時兩個剛體的相對位置?
·localAngleB:剛體bodyB在關節約束下,相對于bodyA本地坐標系統的角度,默認時為添加關節時兩個剛體的相對角度?
·maxForce:當兩個剛體未達到關節約束的localOffsetB和localAngleB,為使其達到約束指定狀態,而可以施加的最大作用力,默認Number.MAX_VALUE?
LockConstraint還包含幾個方法:?
·setMaxForce(force):當bodyB的位置偏離localOffsetB,或角度差不等于localAngleB時,鎖定關節對bodyB施加的最大作用力。?
·getMaxForce():number:獲取setMaxForce()中設置的最大作用力?
4)位移關節PrismaticConstraint:
將剛體bodyB的運動方向,限定為在剛體bodyA本地坐標系統中的一個指定向量。構造函數為:?
function PrismaticContraint(bodyA:Body, bodyB:Body, options:Object)?
其中,bodyA和bodyB為受約束的剛體,options為關節設置選項,可以缺省,P2以默認值設置,其中選項為:?
·maxForce:當bodyB相對于bodyA的位置偏離localAxisA時,為使其恢復到約束位置,可以施加的最大作用力,默認為Number.MAX_VALUE?
·localAnchorA:控制點anchorA在bodyA本地坐標系下的坐標,默認[0,0]?
·localAnchorB:控制點anchorB在bodyB本地坐標系下的坐標,默認[1,0]?
·localAxisA:剛體受到約束時只可以在該坐標軸方向上移動,這是剛體bodyA坐標系下的一個向量,默認[1,0]?
·disableRotationalLock:是否禁止bodyB繞節點旋轉,默認false,即bodyB不能自由旋轉,此值只有在構造函數中設置才起作用。?
·upperLimitEnabled:是否開啟bodyB移動方向上限,默認false,此時可以沿localAxisA正方向無限移動?
·upperLimit:設置bodyB沿localAxisA正方向可以移動的最大距離,默認為1?
·lowerLimitEnabled:是否開啟bodyB移動方向下限,默認false,此時可以沿localAxisA負方向無限移動?
·lowerLimit:設置bodyB沿localAxisA負方向可以移動的最大距離,默認為0,該屬性值要小于upperLimit?
除了上述在構造函數中的參數,PrismaticConstraint還有其他一些屬性:?
·motorEnabled:是否開啟馬達屬性,與motorSpeed配合使用。開啟后,關節會對bodyB施加作用力,使其線速度達到motorSpeed,并在約束范圍內一直保持該速度。開啟或關閉馬達屬性,要用enableMotor()和disableMotor()方法。?
·motorSpeed:開啟馬達屬性后,bodyB的目標速度值?
·position:在localAxisA上,bodyB相對于bodyA的當前位置?
PrismaticConstraint還有一些方法,用于調整關節的相關屬性:?
·setLimits(lower, upper):設置位移關節的上下限,其中lower一定要小于upper?
·disableMotor():關閉馬達屬性?
·enableMotor():開啟馬達屬性?
可以創建一個空剛體來固定關節。所謂空剛體,就是沒有包含任何形狀對象的剛體,所以不會與任何剛體發生碰撞模擬。?
5)旋轉關節RevoluteConstraint:
限制兩個剛體只能繞指定的控制點旋轉,該控制點是剛體bodyA本地坐標系下的坐標。其中一個剛體的位置或角度發生變化時,為了確保控制點和剛體的相對位置不變,另一個剛體也會被牽制發生位置和角度的變化。構造函數為:?
function RevoluteConstraint(bodyA:Body, bodyB:Body, options:Object)?
其中,bodyA和bodyB為受關節約束的兩個剛體,options為關節設置選項,可以缺省,P2會按默認值進行設置。選項為:?
·worldPivot:全局坐標系下的關節節點,bodyA和bodyB均受約束,只能繞該節點旋轉。設置該節點后,旋轉關節會自動計算localPivotA和localPivotB本地節點。?
·localPivotA:節點worldPivot在bodyA剛體本地坐標系統下的坐標,默認[0,0]?
·localPivotB:節點worldPivot在bodyB剛體本地坐標系統下的坐標,默認[0,0]?
·maxForce:當剛體坐標偏離節點時,為使其恢復到節點位置,可以施加的最大作用力,默認為Number.MAX_VALUE?
RevoluteConstraint還包含幾個方法:?
·setLimits(lower:number, upper:number):設置bodyB繞節點旋轉角度的上下限,值為弧度?
·enableMotor():開啟馬達屬性,與setMotorSpeed()配合使用,關節會對bodyB施加扭力,使其達到setMotorSpeed()?
·disableMotor():關閉馬達屬性?
·setMotorSpeed(speed):設置bodyB的目標角速度,只有開啟馬達屬性后才其作用。?
·getMotorSpeed():number:讀取馬達的當前速度?
旋轉關節常用于模擬小車運動。

8. 彈簧Spring:

P2中用來約束剛體運動的還有彈簧Spring。彈簧除約束兩個剛體之間的運動軌跡外,通過damping阻尼和stiffness剛度系數等屬性,使得剛體在向目標移動時,出現類似彈簧的簡諧運動。Spring只是抽象的父類,參與運動模擬的是兩個子類LinearSpring和RotationalSpring。?
1)LinearSpring:
LinearSpring是線性彈簧,對剛體的約束行為和距離關節DistanceConstraint相同,按照指定的距離restLength將兩個剛體約束在一起,其中任何一個剛體的位置發生變化,會牽制著另一個剛體運動,以保證兩者的間距為distance。在運動過程中,剛體bodyB呈現簡諧運動。兩個剛體的角度不受約束,可以繞節點旋轉。構造函數:?
function LinearSpring(bodyA:Body, bodyB:Body, options:Object)?
其中,bodyA和bodyB為受彈簧約束的兩個剛體,options為關節設置選項,可以缺省,P2會按默認值進行設置。選項為:?
·stiffness:彈簧的剛度系數,默認100。?
·damping:彈簧做簡諧運動過程中的阻尼系數,默認1?
·restLength:彈簧不受力狀態下的長度,默認為worldAnchorA和worldAnchorB間的距離?
·localAnchorA:剛體bodyA本地坐標系下的節點坐標,默認[0,0]?
·localAnchorB:剛體bodyB本地坐標系下的節點坐標,默認[0,0]?
·worldAnchorA:彈簧節點在全局坐標系下的坐標,設置后將自動轉換并覆蓋localAnchorA?
·worldAnchorB:彈簧節點在全局坐標系下的坐標,設置后將自動轉換并覆蓋localAnchorB?
2)RotationalSpring:
RotationalSpring是扭力彈簧,對剛體的約束類似齒輪關節,按照指定的restAngle約束兩個剛體之間的角度差。當剛體的角度不等于restAngle時,bodyB會進行簡諧運動旋轉,直至角度差恢復至restAngle。兩個剛體的坐標位置不受約束,可以自由移動。?
function LinearSpring(bodyA:Bodt, bodyB:Body, options:Object)?
其中,bodyA和bodyB為受彈簧約束的兩個剛體,options為關節設置選項,可以缺省,P2會按默認值進行設置。選項為:?
·restAngle:彈簧不受力無簡諧運動下剛體bodyA和bodyB間的角度差,默認為創建扭力彈簧時兩個剛體之間的角度差?
·stiffness:彈簧的剛度系數,默認100。?
·damping:彈簧做簡諧運動過程中的阻尼系數,默認1

轉載于:https://www.cnblogs.com/jacksplwxy/p/9763769.html

總結

以上是生活随笔為你收集整理的Egret中使用P2物理引擎的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

麻豆国产丝袜白领秘书在线观看 | 午夜理论片yy44880影院 | 亚洲国产精品久久久久久 | 国内揄拍国内精品少妇国语 | 性欧美大战久久久久久久 | 亚洲国产精品美女久久久久 | 国产精品美女久久久久av爽李琼 | 久久综合香蕉国产蜜臀av | 亚洲精品综合一区二区三区在线 | 两性色午夜视频免费播放 | 亚洲天堂2017无码 | 麻花豆传媒剧国产免费mv在线 | 香蕉久久久久久av成人 | 中文字幕无码av波多野吉衣 | 久久午夜无码鲁丝片秋霞 | 爆乳一区二区三区无码 | 亚洲午夜无码久久 | 一区二区三区高清视频一 | 国产内射老熟女aaaa | 国产真人无遮挡作爱免费视频 | 国产精品久久久久影院嫩草 | 荡女精品导航 | 国产一精品一av一免费 | 婷婷五月综合缴情在线视频 | 国产精品办公室沙发 | 成人性做爰aaa片免费看不忠 | 国产一区二区不卡老阿姨 | 少妇邻居内射在线 | 色婷婷av一区二区三区之红樱桃 | aⅴ在线视频男人的天堂 | 无码人妻丰满熟妇区毛片18 | 国产精品久久久久久亚洲毛片 | 国产精品久久久av久久久 | 精品成人av一区二区三区 | 成 人 网 站国产免费观看 | 天天摸天天透天天添 | 六十路熟妇乱子伦 | 精品午夜福利在线观看 | 天堂亚洲免费视频 | 亚洲精品成人福利网站 | 领导边摸边吃奶边做爽在线观看 | 疯狂三人交性欧美 | 牲欲强的熟妇农村老妇女视频 | 捆绑白丝粉色jk震动捧喷白浆 | 国内精品人妻无码久久久影院蜜桃 | 日韩精品久久久肉伦网站 | 日本熟妇乱子伦xxxx | 漂亮人妻洗澡被公强 日日躁 | 女人高潮内射99精品 | 亚洲中文字幕无码一久久区 | 我要看www免费看插插视频 | 天天拍夜夜添久久精品大 | 人人超人人超碰超国产 | 蜜桃视频韩日免费播放 | 又色又爽又黄的美女裸体网站 | 国产精品毛片一区二区 | 国产麻豆精品一区二区三区v视界 | 亚洲一区二区三区国产精华液 | 国内少妇偷人精品视频免费 | 无遮无挡爽爽免费视频 | 国产口爆吞精在线视频 | 中文字幕乱码亚洲无线三区 | 丰满少妇弄高潮了www | 亚洲成a人片在线观看无码3d | 男女爱爱好爽视频免费看 | 欧美阿v高清资源不卡在线播放 | 中文毛片无遮挡高清免费 | 丁香花在线影院观看在线播放 | 国产在线aaa片一区二区99 | 欧美成人高清在线播放 | 午夜精品久久久久久久 | 国产sm调教视频在线观看 | 天天摸天天透天天添 | 国产无套内射久久久国产 | 我要看www免费看插插视频 | 99riav国产精品视频 | 免费乱码人妻系列无码专区 | 国产成人综合色在线观看网站 | 天天摸天天碰天天添 | 亚洲男人av天堂午夜在 | 永久免费观看美女裸体的网站 | 无码播放一区二区三区 | 国产精品怡红院永久免费 | 97se亚洲精品一区 | 亚洲最大成人网站 | 国产午夜视频在线观看 | 最近的中文字幕在线看视频 | 巨爆乳无码视频在线观看 | 国产精品久久精品三级 | 精品无人区无码乱码毛片国产 | 亚洲啪av永久无码精品放毛片 | 日韩视频 中文字幕 视频一区 | 少妇的肉体aa片免费 | 377p欧洲日本亚洲大胆 | 在线天堂新版最新版在线8 | 色婷婷久久一区二区三区麻豆 | 正在播放老肥熟妇露脸 | 老子影院午夜伦不卡 | 色婷婷久久一区二区三区麻豆 | 欧美xxxxx精品 | 国产麻豆精品一区二区三区v视界 | 成 人 网 站国产免费观看 | 亚洲国产欧美国产综合一区 | 天干天干啦夜天干天2017 | 日韩av无码一区二区三区不卡 | 国产成人综合色在线观看网站 | 亚洲 另类 在线 欧美 制服 | 午夜精品久久久久久久久 | 成人欧美一区二区三区 | 久久精品一区二区三区四区 | 麻豆国产丝袜白领秘书在线观看 | 无码任你躁久久久久久久 | 巨爆乳无码视频在线观看 | 国产av久久久久精东av | 曰韩少妇内射免费播放 | 精品久久综合1区2区3区激情 | 在线天堂新版最新版在线8 | 国产香蕉97碰碰久久人人 | 一区二区三区高清视频一 | 精品国偷自产在线 | 成熟人妻av无码专区 | 老子影院午夜伦不卡 | 色一情一乱一伦一视频免费看 | 婷婷六月久久综合丁香 | 国产艳妇av在线观看果冻传媒 | 中文字幕乱码亚洲无线三区 | 蜜桃臀无码内射一区二区三区 | 精品偷自拍另类在线观看 | 强伦人妻一区二区三区视频18 | 成人免费视频一区二区 | 国产精品第一区揄拍无码 | 亚洲成av人片天堂网无码】 | 99精品无人区乱码1区2区3区 | 国产精华av午夜在线观看 | 免费无码av一区二区 | 亚洲乱码国产乱码精品精 | 国产亚洲视频中文字幕97精品 | 熟妇人妻无乱码中文字幕 | 国内少妇偷人精品视频 | 国产女主播喷水视频在线观看 | 97精品人妻一区二区三区香蕉 | 亚洲日韩av片在线观看 | 特黄特色大片免费播放器图片 | 性色欲情网站iwww九文堂 | 亚洲精品www久久久 | 永久免费观看国产裸体美女 | 中文字幕无线码免费人妻 | 日韩成人一区二区三区在线观看 | 亚洲国产av美女网站 | 国产人妻人伦精品 | 国产精品无码永久免费888 | 在线观看免费人成视频 | 激情亚洲一区国产精品 | 亚洲日韩中文字幕在线播放 | 人人妻人人藻人人爽欧美一区 | 在线a亚洲视频播放在线观看 | 亚洲一区二区三区无码久久 | 国产成人精品视频ⅴa片软件竹菊 | 全球成人中文在线 | 国产精品国产自线拍免费软件 | 欧美日韩视频无码一区二区三 | 亚洲中文字幕乱码av波多ji | 久久精品女人天堂av免费观看 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 精品偷自拍另类在线观看 | 男女性色大片免费网站 | 无码精品国产va在线观看dvd | 天天躁夜夜躁狠狠是什么心态 | 亚洲国产精品成人久久蜜臀 | 宝宝好涨水快流出来免费视频 | 日韩av无码中文无码电影 | 久久精品国产日本波多野结衣 | 三级4级全黄60分钟 | 中文字幕精品av一区二区五区 | 国产成人精品优优av | 亚洲小说图区综合在线 | 动漫av一区二区在线观看 | av无码电影一区二区三区 | 亚洲精品成人福利网站 | 亚洲乱码中文字幕在线 | 国产熟妇高潮叫床视频播放 | 狠狠色丁香久久婷婷综合五月 | 牛和人交xxxx欧美 | 国产麻豆精品一区二区三区v视界 | 麻豆精品国产精华精华液好用吗 | 动漫av一区二区在线观看 | 无码人妻少妇伦在线电影 | 在线亚洲高清揄拍自拍一品区 | 久久久久久久久888 | 日本va欧美va欧美va精品 | 久久亚洲日韩精品一区二区三区 | 国产精品对白交换视频 | 日日鲁鲁鲁夜夜爽爽狠狠 | 成年女人永久免费看片 | 欧美性猛交xxxx富婆 | 免费视频欧美无人区码 | 国产日产欧产精品精品app | 国产情侣作爱视频免费观看 | 亚洲国产精品毛片av不卡在线 | 99精品无人区乱码1区2区3区 | 麻豆精品国产精华精华液好用吗 | 欧美成人午夜精品久久久 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 国内精品一区二区三区不卡 | 免费观看激色视频网站 | 波多野结衣 黑人 | 国产suv精品一区二区五 | 欧美老熟妇乱xxxxx | 无码人妻丰满熟妇区毛片18 | 无码国产色欲xxxxx视频 | 在线成人www免费观看视频 | 欧美大屁股xxxxhd黑色 | 亚洲人成网站在线播放942 | 国产区女主播在线观看 | 午夜性刺激在线视频免费 | 又紧又大又爽精品一区二区 | 日本爽爽爽爽爽爽在线观看免 | 亚洲国产精品毛片av不卡在线 | 日本www一道久久久免费榴莲 | 国产精品国产三级国产专播 | 久久国产精品萌白酱免费 | 夜夜影院未满十八勿进 | 亚洲啪av永久无码精品放毛片 | 中文字幕无码免费久久9一区9 | 麻花豆传媒剧国产免费mv在线 | 国产精品爱久久久久久久 | 亚洲小说春色综合另类 | 麻豆人妻少妇精品无码专区 | 丰满少妇弄高潮了www | 国产小呦泬泬99精品 | 日本va欧美va欧美va精品 | 亚洲午夜久久久影院 | 久久久久免费看成人影片 | 300部国产真实乱 | 九九在线中文字幕无码 | 女人和拘做爰正片视频 | 一个人看的www免费视频在线观看 | 久久精品中文字幕一区 | 欧美日韩在线亚洲综合国产人 | 国产免费久久精品国产传媒 | 玩弄少妇高潮ⅹxxxyw | 欧美人妻一区二区三区 | 人妻体内射精一区二区三四 | 成年女人永久免费看片 | 欧洲熟妇色 欧美 | 亚洲国产一区二区三区在线观看 | 欧美性猛交xxxx富婆 | 久久99久久99精品中文字幕 | 免费无码午夜福利片69 | 亚洲色大成网站www | 久久国产精品精品国产色婷婷 | 亚洲男女内射在线播放 | 久久无码中文字幕免费影院蜜桃 | 亚洲人交乣女bbw | 国产精品亚洲五月天高清 | 久久国产精品二国产精品 | 丰满妇女强制高潮18xxxx | 久久精品中文字幕大胸 | 国产无遮挡又黄又爽免费视频 | 国产97在线 | 亚洲 | 日本va欧美va欧美va精品 | www成人国产高清内射 | 久久99精品久久久久久动态图 | 国产精品国产三级国产专播 | 强开小婷嫩苞又嫩又紧视频 | 老太婆性杂交欧美肥老太 | 亚洲 激情 小说 另类 欧美 | 久久亚洲中文字幕无码 | 国产av无码专区亚洲awww | 四十如虎的丰满熟妇啪啪 | 精品人妻av区 | 久久久久成人精品免费播放动漫 | аⅴ资源天堂资源库在线 | 亚洲午夜久久久影院 | 亚洲成熟女人毛毛耸耸多 | 老熟女重囗味hdxx69 | 欧美日韩色另类综合 | 国产suv精品一区二区五 | 97夜夜澡人人爽人人喊中国片 | 老熟女重囗味hdxx69 | 午夜福利一区二区三区在线观看 | 国内精品久久毛片一区二区 | 免费看男女做好爽好硬视频 | 亚欧洲精品在线视频免费观看 | 一二三四在线观看免费视频 | 国产高清不卡无码视频 | 久久人人爽人人人人片 | 亚洲成a人片在线观看无码3d | 麻豆国产97在线 | 欧洲 | 久久午夜夜伦鲁鲁片无码免费 | 亚洲国产精品久久久久久 | 精品国产aⅴ无码一区二区 | 性色欲网站人妻丰满中文久久不卡 | 乌克兰少妇xxxx做受 | 99久久精品午夜一区二区 | 亚洲一区二区三区 | 亚洲欧美精品伊人久久 | 熟女体下毛毛黑森林 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 中文字幕无码av波多野吉衣 | 国内精品人妻无码久久久影院蜜桃 | 欧美兽交xxxx×视频 | 欧美性猛交内射兽交老熟妇 | 精品国产一区二区三区av 性色 | 国产在线精品一区二区三区直播 | 无遮挡国产高潮视频免费观看 | 久久无码人妻影院 | 国产明星裸体无码xxxx视频 | 日本乱偷人妻中文字幕 | 精品 日韩 国产 欧美 视频 | 蜜臀aⅴ国产精品久久久国产老师 | 亚洲精品国产品国语在线观看 | 亚洲综合在线一区二区三区 | 中文字幕无码免费久久99 | 国产麻豆精品一区二区三区v视界 | 中文字幕无码视频专区 | 国产口爆吞精在线视频 | 99久久亚洲精品无码毛片 | 久精品国产欧美亚洲色aⅴ大片 | 粗大的内捧猛烈进出视频 | 亚洲精品美女久久久久久久 | 久久综合九色综合欧美狠狠 | 久久综合香蕉国产蜜臀av | 欧美亚洲国产一区二区三区 | 成 人 免费观看网站 | 亚洲精品一区三区三区在线观看 | 成人性做爰aaa片免费看不忠 | 黑森林福利视频导航 | 曰韩无码二三区中文字幕 | 亚洲国产精品久久人人爱 | 中文无码精品a∨在线观看不卡 | 熟妇人妻无码xxx视频 | 少妇愉情理伦片bd | 玩弄人妻少妇500系列视频 | 极品嫩模高潮叫床 | 久久久久人妻一区精品色欧美 | 一本久久a久久精品vr综合 | 国产成人综合在线女婷五月99播放 | 人人妻人人澡人人爽欧美一区九九 | 欧美国产亚洲日韩在线二区 | 亚洲色www成人永久网址 | 免费无码肉片在线观看 | 欧美放荡的少妇 | 国产激情无码一区二区 | 色欲人妻aaaaaaa无码 | 国产精品久久久久久久9999 | 国产精品久久久久久亚洲影视内衣 | 大地资源网第二页免费观看 | 久久亚洲中文字幕无码 | 成人影院yy111111在线观看 | 最近免费中文字幕中文高清百度 | 欧洲极品少妇 | 捆绑白丝粉色jk震动捧喷白浆 | 无码毛片视频一区二区本码 | 国产亚洲欧美日韩亚洲中文色 | 无码人妻丰满熟妇区毛片18 | 国产性生交xxxxx无码 | 性色av无码免费一区二区三区 | 久久久久久久久888 | 日韩欧美成人免费观看 | 国内精品久久久久久中文字幕 | 麻豆国产97在线 | 欧洲 | 亚洲无人区午夜福利码高清完整版 | 久久亚洲日韩精品一区二区三区 | 久久久久国色av免费观看性色 | 国产人妻人伦精品1国产丝袜 | 久久亚洲日韩精品一区二区三区 | 精品人妻人人做人人爽夜夜爽 | aa片在线观看视频在线播放 | 国产精品内射视频免费 | 久久国产劲爆∧v内射 | 55夜色66夜色国产精品视频 | 国产成人精品一区二区在线小狼 | 成人无码视频在线观看网站 | 性色欲网站人妻丰满中文久久不卡 | 久久天天躁狠狠躁夜夜免费观看 | 人妻人人添人妻人人爱 | 无套内谢的新婚少妇国语播放 | 国产97人人超碰caoprom | 久久久久se色偷偷亚洲精品av | 国产午夜无码精品免费看 | 欧美变态另类xxxx | 日韩av无码中文无码电影 | 99麻豆久久久国产精品免费 | 日本xxxx色视频在线观看免费 | 亚洲 日韩 欧美 成人 在线观看 | 亚洲中文字幕无码一久久区 | 亚洲精品久久久久avwww潮水 | 性色欲情网站iwww九文堂 | 欧美老人巨大xxxx做受 | 久久99精品久久久久久 | 成人女人看片免费视频放人 | 久久国产自偷自偷免费一区调 | 秋霞成人午夜鲁丝一区二区三区 | 性欧美熟妇videofreesex | 双乳奶水饱满少妇呻吟 | 久久久久成人精品免费播放动漫 | 日韩精品无码一本二本三本色 | 欧美老妇与禽交 | 欧美人妻一区二区三区 | 少妇高潮喷潮久久久影院 | 中文无码精品a∨在线观看不卡 | www国产亚洲精品久久网站 | 国产乱人偷精品人妻a片 | 亚洲国产精品毛片av不卡在线 | 国产精品永久免费视频 | 精品偷自拍另类在线观看 | 中文字幕av无码一区二区三区电影 | 国产疯狂伦交大片 | 国产精品.xx视频.xxtv | 无码纯肉视频在线观看 | 少女韩国电视剧在线观看完整 | 国产亚洲精品久久久久久大师 | 兔费看少妇性l交大片免费 | 亚洲gv猛男gv无码男同 | 伊人久久大香线蕉亚洲 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 在线成人www免费观看视频 | 国精品人妻无码一区二区三区蜜柚 | 国产偷抇久久精品a片69 | 国产精品免费大片 | 啦啦啦www在线观看免费视频 | 99久久精品国产一区二区蜜芽 | 亚洲综合色区中文字幕 | 宝宝好涨水快流出来免费视频 | 欧美日韩综合一区二区三区 | 人妻体内射精一区二区三四 | 日韩 欧美 动漫 国产 制服 | 欧美 亚洲 国产 另类 | 色妞www精品免费视频 | 又大又黄又粗又爽的免费视频 | 日韩av无码一区二区三区不卡 | 丰满少妇高潮惨叫视频 | 国产精品人人妻人人爽 | 精品成人av一区二区三区 | 一本大道久久东京热无码av | 亚洲精品中文字幕久久久久 | 国内精品久久毛片一区二区 | 久久精品中文字幕一区 | 日本又色又爽又黄的a片18禁 | 国产激情艳情在线看视频 | 未满小14洗澡无码视频网站 | 妺妺窝人体色www婷婷 | 在线精品亚洲一区二区 | 精品无码av一区二区三区 | 噜噜噜亚洲色成人网站 | 亚洲天堂2017无码 | 国产午夜无码视频在线观看 | 亚洲日本一区二区三区在线 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 日日碰狠狠丁香久燥 | 国内精品人妻无码久久久影院蜜桃 | 国产精品久久久久9999小说 | 精品aⅴ一区二区三区 | 国产av无码专区亚洲awww | 秋霞特色aa大片 | 小泽玛莉亚一区二区视频在线 | 欧洲欧美人成视频在线 | 国产莉萝无码av在线播放 | 国产成人一区二区三区在线观看 | 国产艳妇av在线观看果冻传媒 | 久久亚洲国产成人精品性色 | 精品aⅴ一区二区三区 | 欧美 丝袜 自拍 制服 另类 | 国产乱人偷精品人妻a片 | 日日摸夜夜摸狠狠摸婷婷 | 一区二区三区乱码在线 | 欧洲 | 国产97在线 | 亚洲 | 国产性生交xxxxx无码 | 中文字幕亚洲情99在线 | 一本大道伊人av久久综合 | 午夜时刻免费入口 | 精品国产麻豆免费人成网站 | 久久天天躁夜夜躁狠狠 | 一本大道伊人av久久综合 | 国产成人综合色在线观看网站 | 国产另类ts人妖一区二区 | 俺去俺来也在线www色官网 | 色婷婷av一区二区三区之红樱桃 | 老子影院午夜精品无码 | 熟妇人妻中文av无码 | 欧美国产日韩久久mv | 久久99精品国产麻豆 | 国产97色在线 | 免 | 欧美自拍另类欧美综合图片区 | 亚洲一区二区三区无码久久 | 久久精品人人做人人综合 | 午夜男女很黄的视频 | 国产精品99久久精品爆乳 | 婷婷六月久久综合丁香 | 国产色xx群视频射精 | 成 人 免费观看网站 | 2020最新国产自产精品 | 免费观看的无遮挡av | 无码乱肉视频免费大全合集 | 亚洲成a人片在线观看无码3d | 激情综合激情五月俺也去 | 内射老妇bbwx0c0ck | 亚洲日韩av一区二区三区四区 | 成人无码视频在线观看网站 | 国产乱人偷精品人妻a片 | 少女韩国电视剧在线观看完整 | 国产激情艳情在线看视频 | 午夜精品久久久内射近拍高清 | 亚洲最大成人网站 | 日本一区二区更新不卡 | 久久精品国产亚洲精品 | 亚洲日本va中文字幕 | 亚洲gv猛男gv无码男同 | 亚洲国产成人av在线观看 | 亚洲成a人片在线观看日本 | 帮老师解开蕾丝奶罩吸乳网站 | 亚洲а∨天堂久久精品2021 | 久久久精品456亚洲影院 | 国产精品无码成人午夜电影 | 最近免费中文字幕中文高清百度 | 永久黄网站色视频免费直播 | 亚洲国产精品久久人人爱 | 日韩精品一区二区av在线 | 亚洲の无码国产の无码影院 | 亚洲va中文字幕无码久久不卡 | 麻花豆传媒剧国产免费mv在线 | 偷窥村妇洗澡毛毛多 | 亚洲中文字幕无码一久久区 | 国产精品无码一区二区三区不卡 | av在线亚洲欧洲日产一区二区 | 人妻天天爽夜夜爽一区二区 | 欧美阿v高清资源不卡在线播放 | 日本xxxx色视频在线观看免费 | 亚洲国产高清在线观看视频 | 亚洲男人av天堂午夜在 | 国产成人无码av片在线观看不卡 | 欧美一区二区三区 | 丰满人妻精品国产99aⅴ | 成 人 免费观看网站 | 亚洲热妇无码av在线播放 | 97久久精品无码一区二区 | 成人无码视频免费播放 | 亚洲成a人片在线观看无码3d | 国内揄拍国内精品少妇国语 | 亚洲国产高清在线观看视频 | aⅴ亚洲 日韩 色 图网站 播放 | 曰韩少妇内射免费播放 | 人妻少妇精品久久 | 久久精品成人欧美大片 | 国产精品99久久精品爆乳 | 中文字幕亚洲情99在线 | 亚洲日本在线电影 | 日日摸天天摸爽爽狠狠97 | 牛和人交xxxx欧美 | 国产人妻大战黑人第1集 | 久久久中文久久久无码 | 欧美黑人性暴力猛交喷水 | 又色又爽又黄的美女裸体网站 | 精品 日韩 国产 欧美 视频 | 18精品久久久无码午夜福利 | 日日干夜夜干 | 在线欧美精品一区二区三区 | 76少妇精品导航 | 久久国产精品精品国产色婷婷 | 粉嫩少妇内射浓精videos | 亚洲精品中文字幕 | 男女爱爱好爽视频免费看 | 国产一区二区三区日韩精品 | 日韩精品无码一本二本三本色 | 久久亚洲精品中文字幕无男同 | 日日噜噜噜噜夜夜爽亚洲精品 | 色婷婷av一区二区三区之红樱桃 | 亚洲精品久久久久久久久久久 | 国产三级久久久精品麻豆三级 | 丰满少妇熟乱xxxxx视频 | 国产情侣作爱视频免费观看 | 国产成人久久精品流白浆 | 99国产精品白浆在线观看免费 | 四虎影视成人永久免费观看视频 | 成熟人妻av无码专区 | www成人国产高清内射 | 亚洲va欧美va天堂v国产综合 | 亚洲 日韩 欧美 成人 在线观看 | 亚洲 日韩 欧美 成人 在线观看 | 久久久久se色偷偷亚洲精品av | 亚洲欧美国产精品专区久久 | 又粗又大又硬毛片免费看 | 国产农村乱对白刺激视频 | 亚洲欧美日韩国产精品一区二区 | 男女爱爱好爽视频免费看 | 十八禁真人啪啪免费网站 | 色五月五月丁香亚洲综合网 | 精品国精品国产自在久国产87 | 色一情一乱一伦一区二区三欧美 | 无遮挡国产高潮视频免费观看 | 美女张开腿让人桶 | 国产乱人伦av在线无码 | 欧美老人巨大xxxx做受 | 亚洲熟妇色xxxxx欧美老妇 | 天天躁日日躁狠狠躁免费麻豆 | 国产精品国产自线拍免费软件 | 亚洲自偷精品视频自拍 | av无码电影一区二区三区 | 国产真实乱对白精彩久久 | 久久综合九色综合欧美狠狠 | 国产无遮挡又黄又爽免费视频 | 丝袜 中出 制服 人妻 美腿 | 久久久久免费看成人影片 | 曰本女人与公拘交酡免费视频 | 亚洲综合久久一区二区 | 精品久久久久香蕉网 | 亚洲精品国产精品乱码视色 | 超碰97人人射妻 | 亚洲成a人片在线观看无码3d | а√资源新版在线天堂 | aa片在线观看视频在线播放 | 老太婆性杂交欧美肥老太 | 岛国片人妻三上悠亚 | 国产香蕉97碰碰久久人人 | 麻豆人妻少妇精品无码专区 | aⅴ亚洲 日韩 色 图网站 播放 | 日韩精品成人一区二区三区 | 97se亚洲精品一区 | 亚洲小说春色综合另类 | 亚洲午夜福利在线观看 | 性欧美大战久久久久久久 | 中文字幕乱码中文乱码51精品 | 亚洲精品综合五月久久小说 | 无遮无挡爽爽免费视频 | 久久久久久av无码免费看大片 | 无码人妻精品一区二区三区不卡 | 天海翼激烈高潮到腰振不止 | 欧洲熟妇色 欧美 | 荫蒂被男人添的好舒服爽免费视频 | 人人妻人人澡人人爽人人精品 | 无码国模国产在线观看 | 97久久国产亚洲精品超碰热 | 久久午夜无码鲁丝片 | 中文无码伦av中文字幕 | 国产乱人伦av在线无码 | 青青青手机频在线观看 | 真人与拘做受免费视频 | 内射老妇bbwx0c0ck | 日韩精品一区二区av在线 | 自拍偷自拍亚洲精品10p | 狠狠躁日日躁夜夜躁2020 | 亚洲精品综合一区二区三区在线 | 久久久久亚洲精品中文字幕 | 一本久久伊人热热精品中文字幕 | 久久国产自偷自偷免费一区调 | 人人妻人人藻人人爽欧美一区 | 午夜精品久久久久久久 | 黑人玩弄人妻中文在线 | 中文字幕乱码亚洲无线三区 | 久久久久久av无码免费看大片 | 最近免费中文字幕中文高清百度 | 日韩人妻无码一区二区三区久久99 | 国产口爆吞精在线视频 | 国产真实乱对白精彩久久 | 久久亚洲精品中文字幕无男同 | 丰满妇女强制高潮18xxxx | 国产av一区二区精品久久凹凸 | 欧美xxxx黑人又粗又长 | 99久久精品日本一区二区免费 | 好屌草这里只有精品 | 精品无码国产自产拍在线观看蜜 | 人人妻人人澡人人爽欧美一区九九 | 亚洲第一无码av无码专区 | 99麻豆久久久国产精品免费 | av香港经典三级级 在线 | 久久国产精品萌白酱免费 | 大色综合色综合网站 | 中文字幕色婷婷在线视频 | 国产明星裸体无码xxxx视频 | 男人和女人高潮免费网站 | 中文字幕无线码免费人妻 | 欧美刺激性大交 | 国产乱人伦av在线无码 | 国产成人综合色在线观看网站 | 亚洲国产精品一区二区第一页 | 在线亚洲高清揄拍自拍一品区 | 亚洲日本va中文字幕 | 久久成人a毛片免费观看网站 | 亚洲一区av无码专区在线观看 | 天堂一区人妻无码 | 亚洲精品国偷拍自产在线麻豆 | 水蜜桃亚洲一二三四在线 | 欧美国产日韩久久mv | 丰满少妇弄高潮了www | 欧美国产日韩亚洲中文 | 久久综合久久自在自线精品自 | 国内精品人妻无码久久久影院蜜桃 | 日本丰满熟妇videos | 精品一二三区久久aaa片 | 麻豆av传媒蜜桃天美传媒 | 国产黑色丝袜在线播放 | 日韩亚洲欧美精品综合 | 中文字幕av伊人av无码av | 全黄性性激高免费视频 | 精品无码一区二区三区的天堂 | 黑森林福利视频导航 | 天天做天天爱天天爽综合网 | 成人欧美一区二区三区 | av无码电影一区二区三区 | 日日干夜夜干 | 成人欧美一区二区三区 | 国产精品爱久久久久久久 | 鲁一鲁av2019在线 | 少妇无套内谢久久久久 | 给我免费的视频在线观看 | 国产成人无码区免费内射一片色欲 | 国产超级va在线观看视频 | 人妻少妇被猛烈进入中文字幕 | 亚洲阿v天堂在线 | 国産精品久久久久久久 | 精品熟女少妇av免费观看 | v一区无码内射国产 | 成人一在线视频日韩国产 | 国产一区二区三区影院 | 熟妇人妻无码xxx视频 | 欧美人与物videos另类 | 亚洲狠狠色丁香婷婷综合 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 牲欲强的熟妇农村老妇女 | 国产人妻精品一区二区三区 | 清纯唯美经典一区二区 | 中文字幕av无码一区二区三区电影 | 国产真人无遮挡作爱免费视频 | 欧美日韩色另类综合 | 色噜噜亚洲男人的天堂 | 国产亚洲精品久久久久久久 | 久久婷婷五月综合色国产香蕉 | 亚洲人成网站在线播放942 | 大胆欧美熟妇xx | 欧美丰满熟妇xxxx | 乌克兰少妇性做爰 | 激情内射亚州一区二区三区爱妻 | 在线成人www免费观看视频 | 亚洲精品中文字幕 | 色婷婷综合激情综在线播放 | 人妻互换免费中文字幕 | 国产凸凹视频一区二区 | 亚洲午夜无码久久 | 无套内谢的新婚少妇国语播放 | 欧美肥老太牲交大战 | 国产亚洲视频中文字幕97精品 | 亚洲精品国产精品乱码视色 | 亚洲国产精品一区二区美利坚 | 最新国产乱人伦偷精品免费网站 | 久精品国产欧美亚洲色aⅴ大片 | 午夜免费福利小电影 | 18禁止看的免费污网站 | 久久 国产 尿 小便 嘘嘘 | 乌克兰少妇xxxx做受 | 亚洲国产高清在线观看视频 | 色欲人妻aaaaaaa无码 | 国产午夜视频在线观看 | 欧美性黑人极品hd | 黑人粗大猛烈进出高潮视频 | 国内揄拍国内精品少妇国语 | 人人澡人人透人人爽 | 国产人妖乱国产精品人妖 | 99久久人妻精品免费二区 | 国产午夜视频在线观看 | 久久亚洲精品成人无码 | 77777熟女视频在线观看 а天堂中文在线官网 | 色一情一乱一伦一区二区三欧美 | 亚洲高清偷拍一区二区三区 | 欧美日韩综合一区二区三区 | 国产人成高清在线视频99最全资源 | 亚洲男女内射在线播放 | 欧美日韩视频无码一区二区三 | 人妻少妇精品无码专区动漫 | 老熟妇乱子伦牲交视频 | 激情综合激情五月俺也去 | 国产精品爱久久久久久久 | 婷婷五月综合激情中文字幕 | 亚洲爆乳精品无码一区二区三区 | 又色又爽又黄的美女裸体网站 | 日本在线高清不卡免费播放 | 国产免费无码一区二区视频 | 久久久无码中文字幕久... | 青青久在线视频免费观看 | 丝袜足控一区二区三区 | 无码国产乱人伦偷精品视频 | 亚洲精品久久久久久久久久久 | 熟女少妇人妻中文字幕 | 欧美freesex黑人又粗又大 | 国产精品沙发午睡系列 | 国产色精品久久人妻 | 国产精品人人爽人人做我的可爱 | 精品国产aⅴ无码一区二区 | 久久综合久久自在自线精品自 | 国产精品理论片在线观看 | 熟妇人妻中文av无码 | 欧美亚洲国产一区二区三区 | 内射老妇bbwx0c0ck | 少妇人妻偷人精品无码视频 | 亚洲高清偷拍一区二区三区 | 亚洲精品国产精品乱码视色 | 日韩精品久久久肉伦网站 | 东北女人啪啪对白 | 亚洲中文无码av永久不收费 | 日韩欧美成人免费观看 | 一本久久伊人热热精品中文字幕 | 亚洲精品一区二区三区在线 | 亚洲成a人片在线观看日本 | 少妇邻居内射在线 | www国产亚洲精品久久网站 | 5858s亚洲色大成网站www | 久久精品女人天堂av免费观看 | 国产成人精品无码播放 | 国产av人人夜夜澡人人爽麻豆 | 亚无码乱人伦一区二区 | 国产香蕉尹人视频在线 | 中文字幕乱码人妻无码久久 | 国内少妇偷人精品视频 | 无码一区二区三区在线 | 国产精品对白交换视频 | 国产热a欧美热a在线视频 | 清纯唯美经典一区二区 | 无套内谢老熟女 | 国产另类ts人妖一区二区 | 国产手机在线αⅴ片无码观看 | 蜜臀aⅴ国产精品久久久国产老师 | av人摸人人人澡人人超碰下载 | 日本爽爽爽爽爽爽在线观看免 | 国产猛烈高潮尖叫视频免费 | 天海翼激烈高潮到腰振不止 | 午夜福利一区二区三区在线观看 | 正在播放东北夫妻内射 | 日本欧美一区二区三区乱码 | 国产熟妇高潮叫床视频播放 | 日韩人妻无码中文字幕视频 | www国产亚洲精品久久久日本 | 我要看www免费看插插视频 | 成人精品天堂一区二区三区 | 亚洲欧洲日本无在线码 | 国产精品亚洲综合色区韩国 | 久久99精品国产麻豆蜜芽 | 天干天干啦夜天干天2017 | 欧美野外疯狂做受xxxx高潮 | 国产sm调教视频在线观看 | 久久久久亚洲精品男人的天堂 | 国产精品国产自线拍免费软件 | 东京热无码av男人的天堂 | 性史性农村dvd毛片 | 无码精品人妻一区二区三区av | 国产一区二区三区日韩精品 | 久久久久久久人妻无码中文字幕爆 | 又湿又紧又大又爽a视频国产 | 国内丰满熟女出轨videos | 国产精品美女久久久网av | 亚洲精品无码人妻无码 | 亚洲精品欧美二区三区中文字幕 | av人摸人人人澡人人超碰下载 | 久久久久久av无码免费看大片 | 99国产精品白浆在线观看免费 | 纯爱无遮挡h肉动漫在线播放 | 少妇厨房愉情理9仑片视频 | 成人亚洲精品久久久久软件 | 男女爱爱好爽视频免费看 | 国产亚洲人成a在线v网站 | 蜜桃臀无码内射一区二区三区 | 日本爽爽爽爽爽爽在线观看免 | 亚洲欧洲日本综合aⅴ在线 | 一本精品99久久精品77 | 午夜熟女插插xx免费视频 | 国产精品多人p群无码 | 男人扒开女人内裤强吻桶进去 | 日日鲁鲁鲁夜夜爽爽狠狠 | 中文字幕 亚洲精品 第1页 | 性色欲情网站iwww九文堂 | 在线精品亚洲一区二区 | 国产成人无码av片在线观看不卡 | 国产精品鲁鲁鲁 | 亚洲精品综合一区二区三区在线 | 日韩成人一区二区三区在线观看 | 午夜无码人妻av大片色欲 | 亚洲中文字幕久久无码 | 国产精品久久久久影院嫩草 | 亚洲中文字幕乱码av波多ji | www一区二区www免费 | 久久国产精品偷任你爽任你 | 少妇无码一区二区二三区 | 久久久精品人妻久久影视 | 亚洲中文字幕成人无码 | 亚洲aⅴ无码成人网站国产app | 国产乱人伦av在线无码 | 99久久精品无码一区二区毛片 | 久在线观看福利视频 | 天天摸天天碰天天添 | 无码人妻av免费一区二区三区 | 久久精品人人做人人综合 | 久久国产精品二国产精品 | 2019午夜福利不卡片在线 | 亚洲国产av精品一区二区蜜芽 | 粗大的内捧猛烈进出视频 | 中文字幕亚洲情99在线 | 久久久久久亚洲精品a片成人 | 久久综合网欧美色妞网 | 在线精品国产一区二区三区 | 国产人妻大战黑人第1集 | 无码中文字幕色专区 | 高中生自慰www网站 | 午夜精品一区二区三区的区别 | 男女作爱免费网站 | 久久久久久九九精品久 | 亚洲无人区午夜福利码高清完整版 | 熟妇人妻无乱码中文字幕 | 无码人妻丰满熟妇区五十路百度 | 精品国产青草久久久久福利 | 精品水蜜桃久久久久久久 | 久久国产劲爆∧v内射 | 人人爽人人澡人人人妻 | 亚洲精品一区二区三区大桥未久 | 精品成在人线av无码免费看 | 中文字幕乱妇无码av在线 | 99精品久久毛片a片 | 蜜桃无码一区二区三区 | 久久99精品国产.久久久久 | 性生交大片免费看女人按摩摩 | 国产极品视觉盛宴 | 夜夜夜高潮夜夜爽夜夜爰爰 | 国产绳艺sm调教室论坛 | 久久99精品久久久久婷婷 | 少妇激情av一区二区 | 纯爱无遮挡h肉动漫在线播放 | 国产成人午夜福利在线播放 | 98国产精品综合一区二区三区 | 亚洲高清偷拍一区二区三区 | av人摸人人人澡人人超碰下载 | 中文久久乱码一区二区 | 久久久精品成人免费观看 | 亚洲区欧美区综合区自拍区 | 性欧美牲交在线视频 | 永久黄网站色视频免费直播 | 人妻少妇被猛烈进入中文字幕 | 伊人久久大香线蕉午夜 | 免费视频欧美无人区码 | 亚洲中文字幕无码中文字在线 | 国产亚洲精品久久久久久大师 | 精品国产一区二区三区四区在线看 | 国产精品久久久 | 中文字幕乱妇无码av在线 | 日韩欧美中文字幕在线三区 | 97精品国产97久久久久久免费 | 国产成人精品视频ⅴa片软件竹菊 | 午夜精品一区二区三区在线观看 | 漂亮人妻洗澡被公强 日日躁 | 综合激情五月综合激情五月激情1 | 成 人 免费观看网站 | 亚洲综合久久一区二区 | 欧美丰满少妇xxxx性 | 久久99精品国产麻豆 | 免费无码一区二区三区蜜桃大 | 成人免费无码大片a毛片 | 永久黄网站色视频免费直播 | 永久黄网站色视频免费直播 | 欧美性生交活xxxxxdddd | 亚洲色大成网站www国产 | 激情爆乳一区二区三区 | 澳门永久av免费网站 | 中文字幕人妻无码一区二区三区 | 国产情侣作爱视频免费观看 | 99精品国产综合久久久久五月天 | 伊在人天堂亚洲香蕉精品区 | 亚洲精品鲁一鲁一区二区三区 | 99久久精品无码一区二区毛片 | 国内少妇偷人精品视频免费 | 一本久道久久综合婷婷五月 | 欧美性生交xxxxx久久久 | 欧美放荡的少妇 | 久久精品99久久香蕉国产色戒 | 激情综合激情五月俺也去 | 国产精品久久福利网站 | 国产人妻大战黑人第1集 | 骚片av蜜桃精品一区 | 色综合久久88色综合天天 | 性欧美熟妇videofreesex | 国产精品理论片在线观看 | 少妇被黑人到高潮喷出白浆 | 国产精品久免费的黄网站 | 中文字幕无码热在线视频 | 国产区女主播在线观看 | 丰满妇女强制高潮18xxxx | 亚洲色无码一区二区三区 | 妺妺窝人体色www在线小说 | 国产特级毛片aaaaaa高潮流水 | 日本一区二区三区免费播放 | 亚洲色欲色欲欲www在线 | 日本高清一区免费中文视频 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 午夜不卡av免费 一本久久a久久精品vr综合 | 大胆欧美熟妇xx | 67194成是人免费无码 | 国产精品毛片一区二区 | 一本大道久久东京热无码av | 精品成在人线av无码免费看 | 久久www免费人成人片 | 久久久亚洲欧洲日产国码αv | 亚洲精品www久久久 | 国产乱人伦av在线无码 | 久久久久99精品国产片 | 日韩欧美群交p片內射中文 | 又色又爽又黄的美女裸体网站 | 成人女人看片免费视频放人 | 小泽玛莉亚一区二区视频在线 | 免费播放一区二区三区 | 久久久精品成人免费观看 | 欧美喷潮久久久xxxxx | 中文无码成人免费视频在线观看 | 亚洲伊人久久精品影院 | 欧美日本日韩 | 欧美变态另类xxxx | 日韩精品一区二区av在线 | 在线观看国产午夜福利片 | 老司机亚洲精品影院无码 | 人人爽人人爽人人片av亚洲 | 国精产品一品二品国精品69xx | 国产av无码专区亚洲a∨毛片 | 一二三四社区在线中文视频 | 午夜福利一区二区三区在线观看 | 国产激情艳情在线看视频 | 日本乱偷人妻中文字幕 | 亚洲精品一区二区三区大桥未久 | 国产成人精品久久亚洲高清不卡 | 人妻无码αv中文字幕久久琪琪布 | 亚洲无人区午夜福利码高清完整版 | 日产精品99久久久久久 | 狂野欧美激情性xxxx | 人妻天天爽夜夜爽一区二区 | a在线观看免费网站大全 | 天天综合网天天综合色 | 久在线观看福利视频 | 在线播放免费人成毛片乱码 | 国产激情精品一区二区三区 | 亚洲欧美综合区丁香五月小说 | 丰满护士巨好爽好大乳 | 日本大乳高潮视频在线观看 | 成人综合网亚洲伊人 | 131美女爱做视频 | 国产午夜亚洲精品不卡 | 色综合久久久久综合一本到桃花网 | 国产人妻久久精品二区三区老狼 | 日本精品人妻无码免费大全 | yw尤物av无码国产在线观看 | 丰腴饱满的极品熟妇 | 免费乱码人妻系列无码专区 | 久久亚洲a片com人成 | 99er热精品视频 | 人妻aⅴ无码一区二区三区 | 色欲久久久天天天综合网精品 | 97久久超碰中文字幕 | 午夜精品一区二区三区在线观看 | 色婷婷香蕉在线一区二区 | 国产精品欧美成人 | 性史性农村dvd毛片 | 在线精品国产一区二区三区 | 国产亚洲美女精品久久久2020 | 国产精品-区区久久久狼 | 免费观看黄网站 | 久久精品一区二区三区四区 | 国产亚洲欧美在线专区 | 色婷婷综合激情综在线播放 | 日本成熟视频免费视频 | 熟妇女人妻丰满少妇中文字幕 | 国产成人精品久久亚洲高清不卡 | 亚洲精品国产第一综合99久久 | 99久久久无码国产精品免费 | 97久久超碰中文字幕 | 亚洲精品无码国产 | 亚洲综合久久一区二区 | 亚洲成av人在线观看网址 | 无码免费一区二区三区 | 麻豆国产丝袜白领秘书在线观看 | 女人被男人躁得好爽免费视频 | 无码人妻丰满熟妇区五十路百度 | 大乳丰满人妻中文字幕日本 | 亚洲日韩av一区二区三区四区 | 熟妇人妻无乱码中文字幕 | 久久久精品欧美一区二区免费 | 最新版天堂资源中文官网 | 欧美黑人巨大xxxxx | 狂野欧美性猛xxxx乱大交 | 精品乱子伦一区二区三区 | 亚洲国产精品久久久天堂 | 永久免费观看国产裸体美女 | 国产精品永久免费视频 | 欧美成人免费全部网站 | 精品国产一区二区三区四区 | 欧美精品一区二区精品久久 | 中国女人内谢69xxxxxa片 | 久久久久se色偷偷亚洲精品av | 无套内谢老熟女 | 久久久久av无码免费网 | 亚洲一区av无码专区在线观看 | 精品国产一区二区三区av 性色 | 国产亚洲欧美日韩亚洲中文色 | 18精品久久久无码午夜福利 | 日日碰狠狠躁久久躁蜜桃 | 狠狠亚洲超碰狼人久久 | 久久人人爽人人爽人人片av高清 | 国产成人精品久久亚洲高清不卡 | 天天躁日日躁狠狠躁免费麻豆 | 欧美激情一区二区三区成人 | 图片区 小说区 区 亚洲五月 | 亚洲成a人片在线观看无码 | 又黄又爽又色的视频 | 亚洲中文字幕乱码av波多ji | 久久精品中文字幕大胸 | 东京一本一道一二三区 | 高清国产亚洲精品自在久久 | 亚洲va中文字幕无码久久不卡 | 亚洲国产精品久久人人爱 | 强辱丰满人妻hd中文字幕 | 亚洲乱码国产乱码精品精 | 好屌草这里只有精品 | 国产激情一区二区三区 | 黑人粗大猛烈进出高潮视频 | 成人免费视频视频在线观看 免费 | 黑人粗大猛烈进出高潮视频 | 国产精品无码一区二区三区不卡 | 99久久人妻精品免费二区 | 中文字幕人成乱码熟女app | 中文字幕日产无线码一区 | 大乳丰满人妻中文字幕日本 | 三上悠亚人妻中文字幕在线 | 日本va欧美va欧美va精品 | 亚无码乱人伦一区二区 | 亚洲精品国偷拍自产在线观看蜜桃 | 国产亚洲人成在线播放 | 一个人看的www免费视频在线观看 | 永久免费精品精品永久-夜色 | 欧美日韩久久久精品a片 | 青草视频在线播放 | 国产做国产爱免费视频 | 香港三级日本三级妇三级 | 亚洲精品一区二区三区在线观看 | 一区二区三区乱码在线 | 欧洲 | 欧美熟妇另类久久久久久多毛 | 久久亚洲中文字幕无码 | 日韩无套无码精品 | 亚洲无人区一区二区三区 | 色欲久久久天天天综合网精品 | 亚洲综合无码久久精品综合 | 色一情一乱一伦一视频免费看 | 国产成人综合色在线观看网站 | 色婷婷香蕉在线一区二区 | 久久久www成人免费毛片 | 奇米影视888欧美在线观看 | 亚洲午夜福利在线观看 | 99久久久无码国产aaa精品 | 99久久婷婷国产综合精品青草免费 | 亚洲爆乳无码专区 | 波多野42部无码喷潮在线 | 国产精品a成v人在线播放 | 国产亚洲精品久久久久久 | 爆乳一区二区三区无码 | 中文精品无码中文字幕无码专区 | 人人妻在人人 | www国产亚洲精品久久网站 | 图片区 小说区 区 亚洲五月 | 无码人妻精品一区二区三区下载 | 人妻无码αv中文字幕久久琪琪布 | av无码不卡在线观看免费 | 国内精品久久久久久中文字幕 | 欧美高清在线精品一区 | 亚洲码国产精品高潮在线 | 国产亚洲精品久久久久久国模美 | 1000部夫妻午夜免费 | 国产三级久久久精品麻豆三级 | 精品国产青草久久久久福利 | 亚洲日韩精品欧美一区二区 | 牲欲强的熟妇农村老妇女视频 | 99精品国产综合久久久久五月天 | 女人被爽到呻吟gif动态图视看 | 狠狠色噜噜狠狠狠狠7777米奇 | 性色欲情网站iwww九文堂 | 国产熟妇高潮叫床视频播放 | 狂野欧美性猛交免费视频 | 欧美第一黄网免费网站 | 丰满人妻一区二区三区免费视频 | 性开放的女人aaa片 | 精品欧洲av无码一区二区三区 | 婷婷丁香六月激情综合啪 | 亚洲欧美日韩国产精品一区二区 | 在线播放亚洲第一字幕 | 久久久久亚洲精品中文字幕 | 久久精品国产精品国产精品污 | 中国女人内谢69xxxx | 精品一区二区三区波多野结衣 | 激情国产av做激情国产爱 | 久久精品国产99久久6动漫 | 高清无码午夜福利视频 | 狂野欧美激情性xxxx | 成人三级无码视频在线观看 | 久久久精品国产sm最大网站 | 久久精品人人做人人综合试看 | 少妇久久久久久人妻无码 | 色欲久久久天天天综合网精品 | 欧美丰满少妇xxxx性 | 婷婷五月综合激情中文字幕 | 九九久久精品国产免费看小说 | 丰满少妇人妻久久久久久 | 九月婷婷人人澡人人添人人爽 | 扒开双腿吃奶呻吟做受视频 | 西西人体www44rt大胆高清 | 日本又色又爽又黄的a片18禁 | 婷婷综合久久中文字幕蜜桃三电影 | 国产精品第一国产精品 | 中文字幕人妻无码一区二区三区 | 蜜臀av无码人妻精品 | 国产免费无码一区二区视频 | 青草视频在线播放 | 综合网日日天干夜夜久久 | 日韩精品成人一区二区三区 | 日韩 欧美 动漫 国产 制服 | 精品国精品国产自在久国产87 | 一本久道久久综合狠狠爱 | 国产美女极度色诱视频www | 国产亚av手机在线观看 | 亚洲 激情 小说 另类 欧美 | 国产精品久久国产三级国 | 天天摸天天碰天天添 | 国产激情精品一区二区三区 | 国产精品久久久av久久久 | 男人的天堂av网站 | 又粗又大又硬毛片免费看 | 国产人妻精品一区二区三区不卡 | 久久国内精品自在自线 | 亚洲 另类 在线 欧美 制服 | 欧美日韩亚洲国产精品 | 免费看少妇作爱视频 | 成人无码精品1区2区3区免费看 | 无码av中文字幕免费放 | 欧美人妻一区二区三区 | 欧美丰满熟妇xxxx | 精品久久综合1区2区3区激情 | 97精品人妻一区二区三区香蕉 | 久久综合香蕉国产蜜臀av | 国产精品成人av在线观看 | 中文无码伦av中文字幕 | 亚洲欧美中文字幕5发布 | 又粗又大又硬毛片免费看 | 国产成人无码a区在线观看视频app | 性生交大片免费看女人按摩摩 | 国产精品亚洲а∨无码播放麻豆 | 最近中文2019字幕第二页 | 亚洲一区二区三区在线观看网站 | 无码人妻精品一区二区三区不卡 | 国产香蕉尹人视频在线 | 白嫩日本少妇做爰 | 国产亚洲人成a在线v网站 | 熟女少妇人妻中文字幕 | 四虎4hu永久免费 | 国产精品亚洲а∨无码播放麻豆 | 久久久久免费精品国产 | 欧美日韩一区二区三区自拍 | 亚洲无人区午夜福利码高清完整版 | 日本乱人伦片中文三区 | 中文字幕中文有码在线 | 国产 精品 自在自线 | 精品国产av色一区二区深夜久久 | 国产午夜亚洲精品不卡下载 | 精品国产一区二区三区av 性色 | 丁香花在线影院观看在线播放 | 色婷婷香蕉在线一区二区 | 色欲久久久天天天综合网精品 | 亚洲国产欧美日韩精品一区二区三区 | 熟妇人妻无码xxx视频 | 亚洲 激情 小说 另类 欧美 | 俺去俺来也www色官网 | 强辱丰满人妻hd中文字幕 | 日本丰满护士爆乳xxxx | 日本高清一区免费中文视频 | 无码任你躁久久久久久久 | 中文字幕+乱码+中文字幕一区 | av无码不卡在线观看免费 | 亚洲爆乳精品无码一区二区三区 | 国产人妻久久精品二区三区老狼 | 97色伦图片97综合影院 | 99久久精品午夜一区二区 | 久久99热只有频精品8 | 国精品人妻无码一区二区三区蜜柚 | 亚洲の无码国产の无码影院 | 亚洲色欲久久久综合网东京热 | 国内老熟妇对白xxxxhd | 国产办公室秘书无码精品99 | 综合人妻久久一区二区精品 | 人妻少妇精品久久 | 亚洲国产精华液网站w | 99麻豆久久久国产精品免费 | 国产精品久久久午夜夜伦鲁鲁 | 在线 国产 欧美 亚洲 天堂 | 国产精品久久久一区二区三区 | 亚洲日韩一区二区三区 | 99麻豆久久久国产精品免费 | 性生交大片免费看女人按摩摩 | 国产成人无码av片在线观看不卡 | 欧美黑人巨大xxxxx | 欧美精品无码一区二区三区 | 国产熟妇另类久久久久 | 国产亚洲精品久久久久久久久动漫 | 久久熟妇人妻午夜寂寞影院 | 在线观看免费人成视频 | 国产精品亚洲专区无码不卡 | 伊人久久大香线蕉亚洲 | 正在播放老肥熟妇露脸 | 亚无码乱人伦一区二区 | 久久久久人妻一区精品色欧美 | 国产亚洲精品久久久久久 | 一本色道久久综合狠狠躁 | 51国偷自产一区二区三区 | aⅴ亚洲 日韩 色 图网站 播放 | 午夜不卡av免费 一本久久a久久精品vr综合 | 99久久精品午夜一区二区 | www国产精品内射老师 | 红桃av一区二区三区在线无码av | 中文字幕av伊人av无码av | 成人三级无码视频在线观看 | 人人妻在人人 | 青青青爽视频在线观看 | 大胆欧美熟妇xx | 国产午夜亚洲精品不卡 | 老熟女重囗味hdxx69 | 在线精品国产一区二区三区 | 青春草在线视频免费观看 | 久久www免费人成人片 | 国产午夜无码精品免费看 | 亚洲va中文字幕无码久久不卡 | 国产无遮挡又黄又爽免费视频 | 久久久久99精品国产片 | 天堂亚洲免费视频 | 亚洲国产精品久久人人爱 | 少妇人妻av毛片在线看 | 成人无码影片精品久久久 | 欧美精品一区二区精品久久 | 久久精品国产精品国产精品污 | 亚洲人交乣女bbw | 中文无码精品a∨在线观看不卡 | 亚洲理论电影在线观看 | 天天爽夜夜爽夜夜爽 | 国精产品一区二区三区 | 无码av免费一区二区三区试看 | 国产激情精品一区二区三区 | 乱中年女人伦av三区 | 十八禁视频网站在线观看 | 久久国语露脸国产精品电影 | 国産精品久久久久久久 | 亚洲国产欧美日韩精品一区二区三区 | 麻豆md0077饥渴少妇 | 无码人妻久久一区二区三区不卡 | 麻豆国产人妻欲求不满 | 无套内谢老熟女 | 国产人妻人伦精品1国产丝袜 | 国产在线精品一区二区三区直播 | 亚洲精品综合一区二区三区在线 | 秋霞成人午夜鲁丝一区二区三区 | 大地资源网第二页免费观看 | 天海翼激烈高潮到腰振不止 | 欧美阿v高清资源不卡在线播放 | 一区二区三区高清视频一 | 欧美阿v高清资源不卡在线播放 | 亚洲精品国产精品乱码不卡 | 国产精品久久久久无码av色戒 | 亚洲熟妇色xxxxx亚洲 | 亚洲色大成网站www国产 | 国产亚洲日韩欧美另类第八页 | 性欧美大战久久久久久久 | 扒开双腿吃奶呻吟做受视频 | 波多野结衣av在线观看 | 波多野结衣av在线观看 | 国内综合精品午夜久久资源 | 激情亚洲一区国产精品 | 欧美老妇交乱视频在线观看 | 在线播放免费人成毛片乱码 | 亚洲天堂2017无码 | 亚洲国产精品一区二区美利坚 | 国产色精品久久人妻 | 国语精品一区二区三区 | 亚洲大尺度无码无码专区 | 日本精品少妇一区二区三区 | 婷婷五月综合缴情在线视频 | 中文精品久久久久人妻不卡 | 国产精品国产三级国产专播 | 性色欲网站人妻丰满中文久久不卡 | 色妞www精品免费视频 | 国产精品亚洲专区无码不卡 | 无码一区二区三区在线观看 | 国产精品18久久久久久麻辣 | 精品无人区无码乱码毛片国产 | 国产午夜精品一区二区三区嫩草 | 欧美老妇交乱视频在线观看 | 日本熟妇浓毛 | 久久精品视频在线看15 | 国产亚洲精品久久久久久久久动漫 | 久久国产精品_国产精品 | 2019nv天堂香蕉在线观看 | 中文字幕无码日韩欧毛 | 国产成人久久精品流白浆 | 兔费看少妇性l交大片免费 | 久久久精品国产sm最大网站 | 久久久久成人片免费观看蜜芽 | 国产乱人无码伦av在线a | 亚洲精品午夜无码电影网 | 国产精品免费大片 | 人妻体内射精一区二区三四 | 国产免费久久精品国产传媒 | 久久亚洲精品中文字幕无男同 | 老熟妇乱子伦牲交视频 | 中文字幕av日韩精品一区二区 | 亚洲理论电影在线观看 | 少妇高潮一区二区三区99 | 色欲人妻aaaaaaa无码 | 成人片黄网站色大片免费观看 | 又色又爽又黄的美女裸体网站 | 国产成人无码午夜视频在线观看 | 人人妻人人澡人人爽欧美一区九九 | 永久免费观看美女裸体的网站 | 丰满少妇人妻久久久久久 | 扒开双腿吃奶呻吟做受视频 | 欧美性色19p | 澳门永久av免费网站 | 在线a亚洲视频播放在线观看 | 国产成人无码午夜视频在线观看 | 一本久久伊人热热精品中文字幕 | 久久久中文久久久无码 | 欧美精品一区二区精品久久 | 最新国产麻豆aⅴ精品无码 | 国产精品人妻一区二区三区四 | 亚洲精品一区二区三区四区五区 | 澳门永久av免费网站 | 又大又紧又粉嫩18p少妇 | 狠狠噜狠狠狠狠丁香五月 | 久久久久免费看成人影片 | 7777奇米四色成人眼影 | 日本乱人伦片中文三区 | 国产亚洲精品久久久久久大师 | 亚洲精品一区二区三区在线 | 亚拍精品一区二区三区探花 | 亚洲精品美女久久久久久久 | 奇米影视7777久久精品 | 亚洲成色www久久网站 | 又大又黄又粗又爽的免费视频 | 久久国产精品萌白酱免费 | 中文字幕久久久久人妻 | 亚洲а∨天堂久久精品2021 | 欧洲vodafone精品性 | 久久综合网欧美色妞网 | 国产无遮挡吃胸膜奶免费看 | 麻豆蜜桃av蜜臀av色欲av | 色欲av亚洲一区无码少妇 | 狠狠亚洲超碰狼人久久 | 免费无码一区二区三区蜜桃大 | 国产两女互慰高潮视频在线观看 | 在线视频网站www色 | 内射巨臀欧美在线视频 | 无人区乱码一区二区三区 | 两性色午夜视频免费播放 | 欧美日韩在线亚洲综合国产人 | 国产免费久久精品国产传媒 | 久久久久亚洲精品中文字幕 | 76少妇精品导航 | 免费看少妇作爱视频 | 亚洲精品鲁一鲁一区二区三区 | 国产精品资源一区二区 | 亚洲一区二区三区含羞草 | 丰满诱人的人妻3 | 国产深夜福利视频在线 | 日韩精品无码一本二本三本色 | 亚洲小说图区综合在线 | 国产一区二区三区影院 | 中文字幕av伊人av无码av | 亚洲男人av天堂午夜在 | 久久婷婷五月综合色国产香蕉 | 亚洲中文字幕在线无码一区二区 | 青青青手机频在线观看 | 久久久精品456亚洲影院 | 亚洲日本va中文字幕 | 午夜无码区在线观看 | 亚洲色成人中文字幕网站 | 高潮毛片无遮挡高清免费 | 丰满少妇弄高潮了www | 色一情一乱一伦一区二区三欧美 | 精品一区二区三区无码免费视频 | 欧美 亚洲 国产 另类 | 人人妻人人澡人人爽精品欧美 | 美女黄网站人色视频免费国产 | 精品夜夜澡人妻无码av蜜桃 | 亚洲成av人片在线观看无码不卡 | 国产内射爽爽大片视频社区在线 | 中文字幕人妻丝袜二区 | 国产国语老龄妇女a片 | 一区二区传媒有限公司 | 欧美人与牲动交xxxx | 国产无遮挡吃胸膜奶免费看 | 亚洲成a人片在线观看无码3d | 丁香花在线影院观看在线播放 | 综合激情五月综合激情五月激情1 | 红桃av一区二区三区在线无码av | 亚洲精品一区三区三区在线观看 | 国产真实乱对白精彩久久 | 狠狠亚洲超碰狼人久久 | 国产成人一区二区三区别 | 中文字幕久久久久人妻 | 日本高清一区免费中文视频 | 蜜臀av在线播放 久久综合激激的五月天 | 国产成人无码午夜视频在线观看 | 国产猛烈高潮尖叫视频免费 | 青草视频在线播放 | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | 欧美丰满老熟妇xxxxx性 | 国产精品第一国产精品 | 久久综合给久久狠狠97色 | 秋霞成人午夜鲁丝一区二区三区 | www一区二区www免费 | 欧美熟妇另类久久久久久不卡 | 2020久久超碰国产精品最新 | 国产亚洲美女精品久久久2020 | 日韩精品一区二区av在线 | 中文精品无码中文字幕无码专区 | 亚洲中文字幕在线无码一区二区 | 国产香蕉97碰碰久久人人 | 高清国产亚洲精品自在久久 | 亚洲第一无码av无码专区 | 精品无码国产一区二区三区av | 成年女人永久免费看片 | 欧美日韩人成综合在线播放 | 51国偷自产一区二区三区 | а√天堂www在线天堂小说 | 99麻豆久久久国产精品免费 | 久久无码人妻影院 | 精品国精品国产自在久国产87 | 伊人久久大香线蕉av一区二区 | 性色av无码免费一区二区三区 | 日本乱偷人妻中文字幕 | 色婷婷综合中文久久一本 | 国产绳艺sm调教室论坛 | 乌克兰少妇性做爰 | 国产深夜福利视频在线 | 午夜福利不卡在线视频 | 国产亲子乱弄免费视频 | 久久精品女人天堂av免费观看 | www国产精品内射老师 | 熟女少妇人妻中文字幕 | 国产性生大片免费观看性 | 九九久久精品国产免费看小说 | 亚洲精品一区三区三区在线观看 | 好男人www社区 | 久久99精品久久久久婷婷 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 在线观看欧美一区二区三区 | 亚洲精品一区二区三区婷婷月 | 丰满人妻精品国产99aⅴ | 欧美日韩一区二区三区自拍 | 国产一区二区三区日韩精品 | 色欲人妻aaaaaaa无码 | 中文字幕+乱码+中文字幕一区 | 国产色视频一区二区三区 | 国产精品自产拍在线观看 | 奇米影视7777久久精品 | 乌克兰少妇xxxx做受 | 爱做久久久久久 | 98国产精品综合一区二区三区 | 乌克兰少妇性做爰 | 国产人妻精品午夜福利免费 | 初尝人妻少妇中文字幕 | 亚洲爆乳精品无码一区二区三区 | 久久天天躁狠狠躁夜夜免费观看 | 久久99国产综合精品 | 少女韩国电视剧在线观看完整 | 国产精品久久久一区二区三区 | 亚洲成a人一区二区三区 | 国产熟妇高潮叫床视频播放 | 熟妇人妻无乱码中文字幕 | av无码不卡在线观看免费 | 成人无码精品一区二区三区 | 国产成人一区二区三区在线观看 | 天堂а√在线地址中文在线 | 午夜精品一区二区三区的区别 | 黄网在线观看免费网站 | 一本色道久久综合狠狠躁 | 国产精品沙发午睡系列 | 性做久久久久久久免费看 | 久久人人爽人人爽人人片av高清 | 午夜精品一区二区三区的区别 | 久久久精品人妻久久影视 | 在线精品国产一区二区三区 | 亚洲毛片av日韩av无码 | 欧美国产日韩亚洲中文 | 人妻中文无码久热丝袜 | 男人的天堂av网站 | 亚洲成a人一区二区三区 | 性欧美疯狂xxxxbbbb | 天天做天天爱天天爽综合网 | 欧美日韩综合一区二区三区 | 撕开奶罩揉吮奶头视频 | 精品偷自拍另类在线观看 | 精品 日韩 国产 欧美 视频 | 嫩b人妻精品一区二区三区 | 漂亮人妻洗澡被公强 日日躁 | 日日干夜夜干 | 男女下面进入的视频免费午夜 | 国内精品久久久久久中文字幕 | 欧美人与禽猛交狂配 | 亚洲国产精品无码一区二区三区 | 成人精品视频一区二区三区尤物 | 动漫av网站免费观看 | 国产精品无码一区二区桃花视频 | 国产精品无码永久免费888 | 麻豆av传媒蜜桃天美传媒 | 亚洲色在线无码国产精品不卡 | 欧美国产日韩久久mv | 日韩av无码一区二区三区不卡 | 999久久久国产精品消防器材 | 内射老妇bbwx0c0ck | 中文亚洲成a人片在线观看 | 国产无遮挡吃胸膜奶免费看 | 精品一区二区三区波多野结衣 | 欧美怡红院免费全部视频 | 国产成人一区二区三区别 | 久久这里只有精品视频9 | 欧洲vodafone精品性 | 国产精品久久精品三级 | 性色av无码免费一区二区三区 | 综合网日日天干夜夜久久 | 黑人玩弄人妻中文在线 | 爽爽影院免费观看 | 国产午夜亚洲精品不卡 | 亚洲精品中文字幕 | 精品厕所偷拍各类美女tp嘘嘘 | 日本免费一区二区三区最新 | 久久久精品成人免费观看 | 99精品国产综合久久久久五月天 | 久久久久久久久蜜桃 | 一本加勒比波多野结衣 | 中文字幕乱码人妻无码久久 | 欧美日韩一区二区三区自拍 | 天天摸天天透天天添 | 日本爽爽爽爽爽爽在线观看免 | 国产精品美女久久久网av | 国产猛烈高潮尖叫视频免费 | 久热国产vs视频在线观看 | 中文字幕日韩精品一区二区三区 | 亚洲国产高清在线观看视频 | 一本久道久久综合婷婷五月 | 国产精品亚洲а∨无码播放麻豆 | 亚洲色欲色欲天天天www | 人人妻人人澡人人爽人人精品浪潮 | 日韩欧美中文字幕在线三区 | 亚洲娇小与黑人巨大交 | 亚洲精品国产品国语在线观看 | 亚洲欧美国产精品专区久久 | 精品国产一区二区三区av 性色 | 97色伦图片97综合影院 | 久久人妻内射无码一区三区 | 国产成人无码区免费内射一片色欲 | 无码一区二区三区在线观看 | 夫妻免费无码v看片 | 欧美猛少妇色xxxxx | 人妻尝试又大又粗久久 | 99riav国产精品视频 | 国产精品久久福利网站 | 亚洲熟妇色xxxxx欧美老妇y | 亚洲码国产精品高潮在线 | 欧美日本精品一区二区三区 | 亚洲精品一区二区三区大桥未久 | 人人爽人人澡人人高潮 | 欧美野外疯狂做受xxxx高潮 | 亚洲欧美综合区丁香五月小说 | 日韩精品久久久肉伦网站 | 色婷婷综合中文久久一本 | 性做久久久久久久免费看 | 青草青草久热国产精品 | 久热国产vs视频在线观看 | 女高中生第一次破苞av | 亚洲国产精品久久人人爱 | 一本色道婷婷久久欧美 | 奇米影视7777久久精品人人爽 |