日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

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

编程问答

CSharpGL(29)初步封装Texture和Framebuffer

發(fā)布時間:2024/1/17 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CSharpGL(29)初步封装Texture和Framebuffer 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
+BIT祝威+悄悄在此留下版了個權(quán)的信息說:

?

CSharpGL(29)初步封裝Texture和Framebuffer

+BIT祝威+悄悄在此留下版了個權(quán)的信息說:

Texture和Framebuffer

Texture和Framebuffer是OpenGL進行3D渲染高級效果必不可少的利器。有了Texture和Framebuffer就可以實現(xiàn)體渲染(Volume Rendering)等效果。現(xiàn)在到了對Texture和Framebuffer的創(chuàng)建、修改、使用進行封裝的時候。

+BIT祝威+悄悄在此留下版了個權(quán)的信息說:

下載

CSharpGL已在GitHub開源,歡迎對OpenGL有興趣的同學加入(https://github.com/bitzhuwei/CSharpGL)

+BIT祝威+悄悄在此留下版了個權(quán)的信息說:

封裝Texture

過程式的Texture

首先觀察一下平時是如何創(chuàng)建和使用Texture對象的。

+BIT祝威+悄悄在此留下版了個權(quán)的信息說:

創(chuàng)建Texture

以創(chuàng)建2D Texture為例。

1 uint CreateTexture(Bitmap bitmap) 2 { 3 glActiveTexture(OpenGL.GL_TEXTURE0); 4 var id = new uint[1]; 5 OpenGL.GenTextures(1, id); 6 OpenGL.BindTexture(target, id[0]); 7 OpenGL.TexParameteri(OpenGL.GL_TEXTURE_2D, OpenGL.GL_TEXTURE_WRAP_R, (int)OpenGL.GL_CLAMP_TO_EDGE); 8 OpenGL.TexParameteri(OpenGL.GL_TEXTURE_2D, OpenGL.GL_TEXTURE_WRAP_S, (int)OpenGL.GL_CLAMP_TO_EDGE); 9 OpenGL.TexParameteri(OpenGL.GL_TEXTURE_2D, OpenGL.GL_TEXTURE_WRAP_T, (int)OpenGL.GL_CLAMP_TO_EDGE); 10 OpenGL.TexParameteri(OpenGL.GL_TEXTURE_2D, OpenGL.GL_TEXTURE_MIN_FILTER, (int)OpenGL.GL_REPEAT); 11 OpenGL.TexParameteri(OpenGL.GL_TEXTURE_2D, OpenGL.GL_TEXTURE_MAG_FILTER, (int)OpenGL.GL_REPEAT); 12 13 BitmapData bitmapData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), 14 ImageLockMode.ReadOnly, PixelFormat.Format32bppArgb); 15 OpenGL.TexImage2D(OpenGL.GL_TEXTURE_2D, 0, OpenGL.GL_RGBA, bitmap.Width, bitmap.Height, 0, OpenGL.GL_BGRA, OpenGL.GL_UNSIGNED_BYTE, bitmapData.Scan0); 16 bitmap.UnlockBits(bitmapData); 17 18 return id[0]; 19 } CreateTexture?

使用Texture

使用上述Texture的方式:

1 void UseTexture(string textureNameInShader, uint textureId) 2 { 3 uint target = OpenGL.GL_TEXTURE0; 4 glActiveTexture(target); 5 OpenGL.BindTexture(OpenGL.GL_TEXTURE_2D, textureId); 6 SetUniform("textureNameInShader", target - OpenGL.GL_TEXTURE0); 7 } 8 9 int SetUniform(string uniformName, uint v0) 10 { 11 int location = GetUniformLocation(uniformName); 12 if (location >= 0) 13 { 14 glUniform1ui(GetUniformLocation(uniformName), v0); 15 } 16 return location; 17 }

封裝的Texture

從上述創(chuàng)建Texture的過程可知,創(chuàng)建Texture主要有2個步驟:設置Sampler填充Texture數(shù)據(jù)。Sampler就是各個濾波選項。填充數(shù)據(jù)就是用glTexImage2D()一類的命令指定Texture的內(nèi)容。

1 void Initialize() 2 { 3 glActiveTexture(this.ActiveTexture); 4 OpenGL.GenTextures(1, id); 5 BindTextureTarget target = this.Target; 6 OpenGL.BindTexture(target, id[0]); 7 this.Sampler.Bind(this.ActiveTexture - OpenGL.GL_TEXTURE0, target); 8 this.ImageFiller.Fill(target); 9 OpenGL.GenerateMipmap((MipmapTarget)((uint)target));// TODO: does this work? 10 //this.SamplerBuilder.Unbind(OpenGL.GL_TEXTURE0 - OpenGL.GL_TEXTURE0, this.Target); 11 OpenGL.BindTexture(this.Target, 0); 12 } +BIT祝威+悄悄在此留下版了個權(quán)的信息說:

Sampler

Sampler中主要就是那幾個濾波選項。

1 /// <summary> 2 /// texture's settings. 3 /// </summary> 4 public class SamplerParameters 5 { 6 public TextureWrapping wrapS = TextureWrapping.ClampToEdge; 7 public TextureWrapping wrapT = TextureWrapping.ClampToEdge; 8 public TextureWrapping wrapR = TextureWrapping.ClampToEdge; 9 public TextureFilter minFilter = TextureFilter.Linear; 10 public TextureFilter magFilter = TextureFilter.Linear; 11 12 public SamplerParameters() { } 13 } +BIT祝威+悄悄在此留下版了個權(quán)的信息說:

Sampler的唯一任務就是在創(chuàng)建Texture時指定某些濾波。

1 /// <summary> 2 /// texture's settings. 3 /// </summary> 4 public abstract class SamplerBase 5 { 6 protected MipmapFilter mipmapFilter; 7 public SamplerParameters Parameters { get; protected set; } 8 9 /// <summary> 10 /// texture's settings. 11 /// </summary> 12 /// <param name="parameters"></param> 13 /// <param name="mipmapFilter"></param> 14 public SamplerBase(SamplerParameters parameters, MipmapFilter mipmapFilter) 15 { 16 if (parameters == null) 17 { 18 this.Parameters = new SamplerParameters(); 19 } 20 else 21 { 22 this.Parameters = parameters; 23 } 24 25 this.mipmapFilter = mipmapFilter; 26 } 27 28 /// <summary> 29 /// 30 /// </summary> 31 /// <param name="unit">OpenGL.GL_TEXTURE0 etc.</param> 32 /// <param name="target"></param> 33 public abstract void Bind(uint unit, BindTextureTarget target); 34 35 }

實際上為了簡化指定Sampler的操作,OpenGL提供了一個Sampler對象。這里順便也把它封裝了。

1 /// <summary> 2 /// texture's settings. 3 /// </summary> 4 public partial class Sampler : SamplerBase, IDisposable 5 { 6 /// <summary> 7 /// sampler's Id. 8 /// </summary> 9 public uint Id { get; private set; } 10 11 /// <summary> 12 /// texture's settings. 13 /// </summary> 14 /// <param name="parameters"></param> 15 /// <param name="mipmapFiltering"></param> 16 public Sampler( 17 SamplerParameters parameters = null, 18 MipmapFilter mipmapFiltering = MipmapFilter.LinearMipmapLinear) 19 : base(parameters, mipmapFiltering) 20 { 21 22 } 23 24 private bool initialized = false; 25 /// <summary> 26 /// 27 /// </summary> 28 public void Initialize(uint unit, BindTextureTarget target) 29 { 30 if (!this.initialized) 31 { 32 this.DoInitialize(unit, target); 33 this.initialized = true; 34 } 35 } 36 37 private void DoInitialize(uint unit, BindTextureTarget target) 38 { 39 var ids = new uint[1]; 40 OpenGL.GenSamplers(1, ids); 41 this.Id = ids[0]; 42 //OpenGL.BindSampler(unit, ids[0]); 43 OpenGL.BindSampler(unit, ids[0]); 44 /* Clamping to edges is important to prevent artifacts when scaling */ 45 OpenGL.SamplerParameteri(ids[0], OpenGL.GL_TEXTURE_WRAP_R, (int)this.parameters.wrapR); 46 OpenGL.SamplerParameteri(ids[0], OpenGL.GL_TEXTURE_WRAP_S, (int)this.parameters.wrapS); 47 OpenGL.SamplerParameteri(ids[0], OpenGL.GL_TEXTURE_WRAP_T, (int)this.parameters.wrapT); 48 /* Linear filtering usually looks best for text */ 49 OpenGL.SamplerParameteri(ids[0], OpenGL.GL_TEXTURE_MIN_FILTER, (int)this.parameters.minFilter); 50 OpenGL.SamplerParameteri(ids[0], OpenGL.GL_TEXTURE_MAG_FILTER, (int)this.parameters.magFilter); 51 // TODO: mipmap not used yet. 52 53 OpenGL.BindSampler(unit, 0); 54 } 55 /// <summary> 56 /// texture's settings. 57 /// </summary> 58 /// <param name="unit">OpenGL.GL_TEXTURE0 etc.</param> 59 /// <param name="target"></param> 60 public override void Bind(uint unit, BindTextureTarget target) 61 { 62 if (!this.initialized) { this.Initialize(unit, target); } 63 64 OpenGL.BindSampler(unit, this.Id); 65 } 66 } Sampler +BIT祝威+悄悄在此留下版了個權(quán)的信息說:

當然也可以不用這個OpenGL的Sampler對象,直接用glTexParameteri()等指令。這就像是一個假的Sampler對象在工作。

1 /// <summary> 2 /// texture's settings. 3 /// </summary> 4 public class FakeSampler : SamplerBase 5 { 6 7 /// <summary> 8 /// texture's settings. 9 /// </summary> 10 /// <param name="parameters"></param> 11 /// <param name="mipmapFiltering"></param> 12 public FakeSampler(SamplerParameters parameters, MipmapFilter mipmapFiltering) 13 : base(parameters, mipmapFiltering) 14 { 15 } 16 17 /// <summary> 18 /// texture's settings. 19 /// </summary> 20 /// <param name="unit">OpenGL.GL_TEXTURE0 etc.</param> 21 /// <param name="target"></param> 22 public override void Bind(uint unit, BindTextureTarget target) 23 { 24 /* Clamping to edges is important to prevent artifacts when scaling */ 25 OpenGL.TexParameteri((uint)target, OpenGL.GL_TEXTURE_WRAP_R, (int)this.parameters.wrapR); 26 OpenGL.TexParameteri((uint)target, OpenGL.GL_TEXTURE_WRAP_S, (int)this.parameters.wrapS); 27 OpenGL.TexParameteri((uint)target, OpenGL.GL_TEXTURE_WRAP_T, (int)this.parameters.wrapT); 28 /* Linear filtering usually looks best for text */ 29 OpenGL.TexParameteri((uint)target, OpenGL.GL_TEXTURE_MIN_FILTER, (int)this.parameters.minFilter); 30 OpenGL.TexParameteri((uint)target, OpenGL.GL_TEXTURE_MAG_FILTER, (int)this.parameters.magFilter); 31 // TODO: mipmap filter not working yet. 32 33 } 34 } FakeSampler

當然,有的時候根本不需要指定任何濾波選項。這可以用一個空的Sampler類型實現(xiàn)。

1 /// <summary> 2 /// do nothing about sampling in building texture. 3 /// </summary> 4 public class NullSampler : SamplerBase 5 { 6 /// <summary> 7 /// do nothing about sampling in building texture. 8 /// </summary> 9 public NullSampler() : base(null, MipmapFilter.LinearMipmapLinear) { } 10 11 /// <summary> 12 /// do nothing. 13 /// </summary> 14 /// <param name="unit">OpenGL.GL_TEXTURE0 etc.</param> 15 /// <param name="target"></param> 16 public override void Bind(uint unit, BindTextureTarget target) 17 { 18 // nothing to do. 19 } 20 }

?

+BIT祝威+悄悄在此留下版了個權(quán)的信息說:

ImageFiller

填充數(shù)據(jù)就是用?glTexImage2D()?、?glTexStorage2D()?等指令設置Texture的內(nèi)容。ImageFiller就是封裝這一操作的。

1 /// <summary> 2 /// build texture's content. 3 /// </summary> 4 public abstract class ImageFiller 5 { 6 7 /// <summary> 8 /// build texture's content. 9 /// </summary> 10 /// <param name="target"></param> 11 public abstract void Fill(BindTextureTarget target); 12 }

對于常見的以?System.Drawing.Bitmap?為數(shù)據(jù)源填充Texture的情形,可以用下面的BitmapFiller。它可以作為1D/2D的Texture對象的填充器。

1 /// <summary> 2 /// build texture's content with Bitmap. 3 /// </summary> 4 public class BitmapFiller : ImageFiller 5 { 6 private System.Drawing.Bitmap bitmap; 7 private int level; 8 private uint internalformat; 9 private int border; 10 private uint format; 11 private uint type; 12 13 /// <summary> 14 /// build texture's content with Bitmap. 15 /// </summary> 16 /// <param name="bitmap"></param> 17 /// <param name="level">0</param> 18 /// <param name="internalformat">OpenGL.GL_RGBA etc.</param> 19 /// <param name="border">0</param> 20 /// <param name="format">OpenGL.GL_BGRA etc.</param> 21 /// <param name="type">OpenGL.GL_UNSIGNED_BYTE etc.</param> 22 public BitmapFiller(System.Drawing.Bitmap bitmap, 23 int level, uint internalformat, int border, uint format, uint type) 24 { 25 this.bitmap = bitmap; 26 this.level = level; 27 this.internalformat = internalformat; 28 this.border = border; 29 this.format = format; 30 this.type = type; 31 } 32 33 /// <summary> 34 /// build texture's content with Bitmap. 35 /// </summary> 36 /// <param name="target"></param> 37 public override void Fill(BindTextureTarget target) 38 { 39 // generate texture. 40 // Lock the image bits (so that we can pass them to OGL). 41 BitmapData bitmapData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), 42 ImageLockMode.ReadOnly, PixelFormat.Format32bppArgb); 43 if (target == BindTextureTarget.Texture1D) 44 { 45 OpenGL.TexImage1D((uint)target, 0, this.internalformat, bitmap.Width, 0, this.format, this.type, bitmapData.Scan0); 46 } 47 else if (target == BindTextureTarget.Texture2D) 48 { 49 OpenGL.TexImage2D((uint)target, 0, this.internalformat, bitmap.Width, bitmap.Height, 0, this.format, this.type, bitmapData.Scan0); 50 } 51 else 52 { throw new NotImplementedException(); } 53 54 // Unlock the image. 55 bitmap.UnlockBits(bitmapData); 56 } 57 } BitmapFiller

還有一個常見的填充方式?glTexStorage2D()?,可以用下面的TexStorageImageFiller實現(xiàn)。

1 /// <summary> 2 /// 3 /// </summary> 4 public class TexStorageImageFiller : ImageFiller 5 { 6 private int levels; 7 private uint internalFormat; 8 private int width; 9 private int height; 10 11 /// <summary> 12 /// 13 /// </summary> 14 /// <param name="levels"></param> 15 /// <param name="internalFormat"></param> 16 /// <param name="width"></param> 17 /// <param name="height"></param> 18 public TexStorageImageFiller(int levels, uint internalFormat, int width, int height) 19 { 20 // TODO: Complete member initialization 21 this.levels = levels; 22 this.internalFormat = internalFormat; 23 this.width = width; 24 this.height = height; 25 } 26 27 /// <summary> 28 /// 29 /// </summary> 30 /// <param name="target"></param> 31 public override void Fill(BindTextureTarget target) 32 { 33 switch (target) 34 { 35 case BindTextureTarget.Unknown: 36 break; 37 case BindTextureTarget.Texture1D: 38 break; 39 case BindTextureTarget.Texture2D: 40 OpenGL.TexStorage2D(TexStorage2DTarget.Texture2D, levels, internalFormat, width, height); 41 break; 42 case BindTextureTarget.Texture3D: 43 break; 44 case BindTextureTarget.TextureCubeMap: 45 break; 46 case BindTextureTarget.TextureBuffer: 47 break; 48 default: 49 break; 50 } 51 } 52 } TexStorageImageFiller

?

+BIT祝威+悄悄在此留下版了個權(quán)的信息說:

創(chuàng)建Texture

用封裝的類型創(chuàng)建Texture的方式如下:

1 Texture Create(Bitmap bitmap) 2 { 3 var texture = new Texture(BindTextureTarget.Texture2D, 4 new BitmapFiller(bitmap, 0, OpenGL.GL_RGBA32F, 0, OpenGL.GL_BGRA, OpenGL.GL_UNSIGNED_BYTE), 5 new SamplerParameters( 6 TextureWrapping.ClampToEdge, 7 TextureWrapping.ClampToEdge, 8 TextureWrapping.ClampToEdge, 9 TextureFilter.Linear, 10 TextureFilter.Linear)); 11 texture.Initialize(); 12 13 return texture; 14 }

使用Texture

Texutre.Id就是用?glGenTextures()?獲得的id。Texture中記錄了此Texture的ActiveTexture、Target等屬性。配合CSharpGL中的?samplerValue?,我們有:

1 /// <summary> 2 /// get <see cref="samplerValue"/> from this texture. 3 /// </summary> 4 /// <param name="texture"></param> 5 /// <returns></returns> 6 public static samplerValue ToSamplerValue(this Texture texture) 7 { 8 return new samplerValue( 9 texture.Target, 10 texture.Id, 11 texture.ActiveTexture); 12 }

這就可以用到設置shader中需要的Texture上:

this.SetUniform("tex", texture.ToSamplerValue());

?

封裝Framebuffer

過程式的Framebuffer

首先觀察一下平時是如何創(chuàng)建和使用Framebuffer對象的。

創(chuàng)建Framebuffer

為關(guān)注重點,這里直接傳入Texture的Id。

1 uint Create(int width, int height, uint textureId) 2 { 3 // create framebuffer. 4 var frameBufferId = new uint[1]; 5 glGenFramebuffers(1, frameBufferId); 6 glBindFramebuffer(OpenGL.GL_FRAMEBUFFER, frameBufferId); 7 8 // attach texture as a color buffer. 9 glFramebufferTexture2D(OpenGL.GL_FRAMEBUFFER, OpenGL.GL_COLOR_ATTACHMENT0, OpenGL.GL_TEXTURE_2D, textureId, 0); 10 11 // create a depth buffer. 12 var renderbufferId = new uint[1]; 13 glGenRenderbuffers(1, renderbufferId); 14 glBindRenderbuffer(OpenGL.GL_RENDERBUFFER, renderbufferId[0]); 15 glRenderbufferStorage(OpenGL.GL_RENDERBUFFER, OpenGL.GL_DEPTH_COMPONENT, width, height); 16 17 // attach depth buffer. 18 glFramebufferRenderbuffer(OpenGL.GL_RENDERBUFFER, OpenGL.GL_DEPTH_ATTACHMENT, OpenGL.GL_RENDERBUFFER, renderbufferId); 19 20 glBindFramebuffer(OpenGL.GL_RENDERBUFFER, 0); 21 22 return frameBufferId; 23 }

使用Framebuffer

使用方式與Texture類似,只要綁定就可以了。

glBindFramebuffer(OpenGL.GL_FRAMEBUFFER, frameBufferId);

用完再解綁。

glBindFramebuffer(OpenGL.GL_FRAMEBUFFER, 0);

封裝的Framebuffer

Framebuffer就是一個盒子,單獨創(chuàng)建一個Framebuffer基本上是沒什么用的。必須Attach一些colorbuffer/depthbuffer/texture才能發(fā)揮作用。

一個Framebuffer能夠綁定多個texture和colorbuffer,只能綁定一個depthbuffer。

Renderbuffer

colorbuffer和depthbuffer都屬于Renderbuffer的一種,其創(chuàng)建方式相同,只不過有一個標識其為colorbuffer還是depthbuffer的標志不同。

創(chuàng)建Renderbuffer很簡單。

1 /// <summary> 2 /// Create, update, use and delete a renderbuffer object. 3 /// </summary> 4 public partial class Renderbuffer 5 { 6 uint[] renderbuffer = new uint[1]; 7 /// <summary> 8 /// Framebuffer Id. 9 /// </summary> 10 public uint Id { get { return renderbuffer[0]; } } 11 12 /// <summary> 13 /// Create, update, use and delete a renderbuffer object. 14 /// </summary> 15 /// <param name="width"></param> 16 /// <param name="height"></param> 17 /// <param name="internalformat">GL_DEPTH_COMPONENT, GL_RGBA etc.</param> 18 /// <param name="bufferType"></param> 19 public Renderbuffer(int width, int height, uint internalformat, RenderbufferType bufferType) 20 { 21 this.Width = width; 22 this.Height = height; 23 this.BufferType = bufferType; 24 25 glGenRenderbuffers(1, renderbuffer); 26 glBindRenderbuffer(OpenGL.GL_RENDERBUFFER, renderbuffer[0]); 27 glRenderbufferStorage(OpenGL.GL_RENDERBUFFER, 28 internalformat, width, height); 29 } 30 31 public int Width { get; set; } 32 public int Height { get; set; } 33 public RenderbufferType BufferType { get; private set; } 34 } 35 36 public enum RenderbufferType 37 { 38 DepthBuffer, 39 ColorBuffer, 40 } +BIT祝威+悄悄在此留下版了個權(quán)的信息說:

創(chuàng)建Framebuffer

創(chuàng)建Framebuffer也很簡單,實際上只是調(diào)用了一個?glGenFramebuffers(1, frameBuffer);?命令。

1 /// <summary> 2 /// Create, update, use and delete a framebuffer object. 3 /// </summary> 4 public partial class Framebuffer : IDisposable 5 { 6 uint[] frameBuffer = new uint[1]; 7 /// <summary> 8 /// Framebuffer Id. 9 /// </summary> 10 public uint Id { get { return frameBuffer[0]; } } 11 12 /// <summary> 13 /// Create an empty framebuffer object. 14 /// </summary> 15 public Framebuffer() 16 { 17 glGenFramebuffers(1, frameBuffer); 18 } 19 } 20 21 /// <summary> 22 /// 23 /// </summary> 24 public enum FramebufferTarget : uint 25 { 26 /// <summary> 27 /// used to draw(write only) something. 28 /// </summary> 29 DrawFramebuffer = OpenGL.GL_DRAW_FRAMEBUFFER, 30 /// <summary> 31 /// used to read from(read only). 32 /// </summary> 33 ReadFramebuffer = OpenGL.GL_READ_FRAMEBUFFER, 34 /// <summary> 35 /// both read/write. 36 /// </summary> 37 Framebuffer = OpenGL.GL_FRAMEBUFFER, 38 }

使用Framebuffer

使用方式與Texture類似,只要綁定就可以了。

framebuffer.Bind();// glBindFramebuffer(OpenGL.GL_FRAMEBUFFER, framebufferId);

用完再解綁。

framebuffer.Unbind();// glBindFramebuffer(OpenGL.GL_FRAMEBUFFER, 0);

這與未封裝的使用方式?jīng)]什么區(qū)別。

總結(jié)

基于目前我對Texture和Framebuffer的了解,現(xiàn)在只能封裝到這個地步。

?

+BIT祝威+悄悄在此留下版了個權(quán)的信息說:

總結(jié)

以上是生活随笔為你收集整理的CSharpGL(29)初步封装Texture和Framebuffer的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

深爱激情亚洲 | 亚洲国产成人精品电影在线观看 | 在线观看黄av | 亚洲爱爱视频 | 国产视频在线免费 | 日韩欧美有码在线 | 天天色天天上天天操 | 九九综合九九 | 中文字幕丝袜美腿 | 日本黄色一级电影 | 99热这里只有精品久久 | 国产精品电影在线 | 日韩精品视频免费在线观看 | 国产精品一区二区三区四 | 少妇bbbb搡bbbb桶 | 91精品国产乱码 | 欧美性超爽 | 国产手机av在线 | 国产91对白在线播 | 日韩精品中文字幕在线不卡尤物 | 色天天 | 免费看国产a | 69视频网站 | 午夜精品视频一区 | 日韩网站中文字幕 | 美女视频a美女大全免费下载蜜臀 | 中文字幕在线观看1 | 99国内精品久久久久久久 | 久草视频精品 | 九九热免费在线观看 | 日本在线精品视频 | 国产精品免费久久久久久 | 久草在线久草在线2 | 99久久99久久精品国产片 | 99在线免费视频 | 五月婷婷视频 | 国产精品美女视频网站 | 黄a在线观看 | 成人午夜毛片 | 国产99re| 成人香蕉视频 | 精品婷婷| 天天干,天天射,天天操,天天摸 | av中文字幕在线免费观看 | 亚洲黄色免费观看 | 亚洲精品高清在线观看 | 亚洲美女免费视频 | 在线免费观看黄色 | 在线播放91 | 久久精品视频国产 | 丝袜制服综合网 | 国产精品一区二区免费 | 视频一区二区免费 | 麻豆免费在线视频 | 夜夜骑首页 | 国产亚洲精品bv在线观看 | 91豆麻精品91久久久久久 | 成年人免费看片网站 | 中文字幕欲求不满 | 亚洲精品日韩一区二区电影 | 黄色在线看网站 | mm1313亚洲精品国产 | 久久亚洲视频 | 国产91全国探花系列在线播放 | 日韩www在线 | 国产在线观看二区 | 国产视频一区在线免费观看 | www国产亚洲精品久久网站 | 国产成人a亚洲精品 | 国产精品免费久久久久影院仙踪林 | 五月婷婷免费 | 日本在线观看一区二区 | 久久精品aaa| 天天鲁一鲁摸一摸爽一爽 | 成年人电影免费在线观看 | 久久国产精品99久久人人澡 | 国产精品第54页 | 免费成人在线观看视频 | 亚洲精品久久久蜜桃直播 | 久草爱视频 | 久久久久久网 | 久久成人亚洲欧美电影 | 日韩在线字幕 | 国产经典三级 | 日韩狠狠操 | 欧美日韩免费一区二区三区 | www.99久久.com| 在线观看av网| 婷婷激情综合 | 亚洲电影一区二区 | 免费三级在线 | 又黄又刺激| 国产精品久久久久婷婷二区次 | 九九有精品 | 91精品婷婷国产综合久久蝌蚪 | 一级成人免费视频 | 亚洲欧洲精品一区 | 亚洲一区二区三区在线看 | 亚洲精品午夜久久久久久久久久久 | 色综合激情网 | 久久er99热精品一区二区三区 | av在线一| 成人在线观看资源 | 97超碰精品 | 久久精品免费电影 | 欧美激情视频一区二区三区免费 | 国产资源免费在线观看 | 精品一二三四在线 | 亚洲精品国偷拍自产在线观看 | www.天天操 | 国产成人不卡 | 成人国产一区二区 | 亚洲欧洲国产日韩精品 | 久草在线一免费新视频 | 少妇激情久久 | 人人添人人澡人人澡人人人爽 | av网在线观看 | 亚洲高清在线精品 | www.五月天婷婷 | 99国产成+人+综合+亚洲 欧美 | 天天色天天射天天综合网 | 久久成 | 欧美不卡视频在线 | 免费观看www视频 | 中文字幕在线观看第二页 | 婷婷在线不卡 | 99视频在线观看一区三区 | 亚洲国产资源 | 麻豆91在线看 | 丁香花中文在线免费观看 | 黄色三级在线 | 亚洲电影影音先锋 | 中文字幕一区二区三区在线视频 | 久久久久日本精品一区二区三区 | 9幺看片 | 91视频在线 | 久久精品99国产国产 | 国产原创91 | 日韩视频图片 | 天天干夜夜夜操天 | 免费在线观看一区 | 国产成人精品一区二 | 美腿丝袜一区二区三区 | 精品久久网站 | 激情综合婷婷 | 亚洲精品国产精品久久99 | 伊人春色电影网 | 中文字幕亚洲在线观看 | h动漫中文字幕 | 2019天天干夜夜操 | 色 中文字幕 | 日韩黄色中文字幕 | 久久国产免费 | 丁香视频全集免费观看 | 91av视屏| 久久视频在线观看中文字幕 | 999免费视频 | 久久99热这里只有精品 | 久久综合成人网 | 五月婷婷亚洲 | 欧美精品久久久久久久 | 天天干天天操av | 成人欧美一区二区三区在线观看 | 国产在线观看黄 | 国产麻豆电影在线观看 | 精品在线一区二区 | 精品国产成人av | 免费视频久久久久 | 日韩精品免费一区二区在线观看 | 黄色精品一区二区 | 日韩精品一区二区电影 | 日本精品午夜 | 国产日韩欧美网站 | 婷婷色网视频在线播放 | 天天视频亚洲 | 99精品视频网站 | 97视频在线免费播放 | 日本精品视频在线观看 | 欧美-第1页-屁屁影院 | 久久66热这里只有精品 | 国产成人精品国内自产拍免费看 | 涩涩网站在线看 | 欧美日韩一区二区免费在线观看 | 成人久久18免费 | 国产很黄很色的视频 | 伊人影院av| 国产精品一区二区免费看 | 午夜精品久久久久久久久久久久久久 | 精品人人爽 | 久久免费视频这里只有精品 | 免费观看十分钟 | 国产中文字幕视频在线 | 久久国产精品久久精品国产演员表 | 亚洲日本欧美在线 | a色视频| 不卡视频在线 | 国产高清不卡一区二区三区 | 最近日本中文字幕a | 天天干,狠狠干 | 久久久久麻豆v国产 | 久久精品亚洲国产 | 五月天婷婷在线播放 | 久久免费久久 | 久久久网 | 日本激情视频中文字幕 | 国产精品丝袜在线 | 国产一线二线三线性视频 | 夜夜嗨av色一区二区不卡 | 99综合久久| 国内精品久久久久影院一蜜桃 | 欧美另类tv| 99精品视频精品精品视频 | 欧美不卡视频在线 | 久久免费av电影 | 伊人网综合在线观看 | 麻豆久久精品 | 午夜 在线 | 中文在线a√在线 | 成人午夜免费福利 | 久久久精品在线观看 | 日韩最新理论电影 | 日韩精品免费一区二区 | 黄p网站在线观看 | 国产精品久久久久免费a∨ 欧美一级性生活片 | 成片免费观看视频 | av先锋影音少妇 | 欧美精品做受xxx性少妇 | 美女在线国产 | 9幺看片 | 97av在线视频免费播放 | 99在线高清视频在线播放 | 日韩高清精品免费观看 | 久艹在线播放 | 亚洲免费精彩视频 | 99国产高清 | 久久久精品视频网站 | 午夜av电影院 | 99re8这里有精品热视频免费 | 国产在线p| 亚洲午夜在线视频 | 日日夜夜精品视频天天综合网 | 97精品国产97久久久久久粉红 | 国产中文字幕大全 | 午夜精品影院 | 国产专区在线看 | 综合网天天色 | 成年人黄色免费网站 | 久久精品99国产精品酒店日本 | 国产高清精品在线 | 成人久久18免费网站图片 | 中文字幕第一页在线 | 91看片在线免费观看 | 亚洲精品视频一二三 | 96久久久| 国产成人精品午夜在线播放 | 五月婷婷av在线 | 中文字幕乱在线伦视频中文字幕乱码在线 | 国产精品亚州 | 日本精品视频一区 | 麻豆91在线| 亚洲人成在线观看 | 青春草视频在线播放 | 最近最新中文字幕视频 | 激情综合中文娱乐网 | 日韩一区二区三区观看 | 波多野结衣在线播放视频 | 亚洲人成精品久久久久 | 五月天亚洲综合 | 久久免费看视频 | 在线观看播放av | 在线观看免费色 | 夜夜干夜夜 | 久久久久成人免费 | 91麻豆精品国产91久久久久 | 日韩中文字幕免费看 | 色婷婷国产精品一区在线观看 | 九九热视频在线播放 | 91麻豆精品91久久久久同性 | 亚洲最新av网址 | 狠狠色狠狠色综合日日92 | 在线免费观看麻豆视频 | 国产精品久久嫩一区二区免费 | 亚洲激情 在线 | 免费黄色av.| 911精品视频 | 国产精品久久在线 | 综合网五月天 | 91色偷偷 | 久久久免费av| 国精产品一二三线999 | 欧美性色综合网站 | 97超碰在线免费观看 | 婷婷综合 | 色噜噜日韩精品欧美一区二区 | 国产成人精品午夜在线播放 | 精品久久久影院 | 国产中文字幕在线免费观看 | 午夜精品一区二区三区免费视频 | 美女视频网| 在线观看视频97 | 国产精品国产精品 | 久久免费视频播放 | 最近高清中文字幕在线国语5 | 国产精品免费观看网站 | 国产精品美女久久久久久2018 | 最新动作电影 | 西西4444www大胆无视频 | 日韩乱码中文字幕 | 国产精品久久片 | 国产精品精品久久久久久 | 女人高潮一级片 | 美女久久精品 | 久久久久久综合网天天 | 毛片网站免费 | 在线观看理论 | 国产精品乱看 | 蜜桃麻豆www久久囤产精品 | 午夜精品福利一区二区 | 国产激情电影综合在线看 | 国产一区自拍视频 | 狠狠狠色丁香综合久久天下网 | 91精品国产92久久久久 | 亚洲精品成人网 | 97电影院在线观看 | 中文字幕在线视频一区二区三区 | 狠狠色狠狠综合久久 | 66av99精品福利视频在线 | 五月视频 | 天天操人人要 | 日韩av综合网站 | 天天射夜夜爽 | 99精品黄色片免费大全 | 久久久精品电影 | 精品国产免费观看 | 国产亚洲精品久久久久动 | 三级午夜片 | 黄色成人av在线 | 在线看毛片网站 | 深爱五月激情五月 | 91自拍成人 | 精品国产一区二区三区久久久 | 久久免费视频这里只有精品 | 五月婷婷激情 | 亚洲乱码精品 | 亚洲精品资源 | 久久国产手机看片 | 亚洲成人频道 | 高清视频一区二区三区 | 亚洲国产美女精品久久久久∴ | 亚洲色综合 | 色多多视频在线观看 | 中文字幕免费高清在线观看 | 黄色综合| 97干com | 深爱激情五月综合 | 在线视频在线观看 | 99久久日韩精品免费热麻豆美女 | 亚洲自拍偷拍色图 | 久久国产精品精品国产色婷婷 | 久要激情网 | 亚洲成人动漫在线观看 | 五月婷婷丁香综合 | 亚洲国产精品一区二区尤物区 | 色婷婷电影 | 99久久精品免费 | 国产男男gay做爰 | 日本高清免费中文字幕 | 日本三级在线观看中文字 | 在线天堂v| 天天综合网久久综合网 | jizzjizzjizz亚洲 | 欧美激情在线网站 | 欧美激情精品久久久久久免费 | 国产美女免费观看 | 国产精品毛片一区二区 | av免费片 | 午夜 免费 | 色婷婷电影 | 精品久久一级片 | 亚洲国产成人精品电影在线观看 | 亚洲视频观看 | 99综合久久 | 国产 中文 日韩 欧美 | 色婷婷 亚洲| 久草免费福利在线观看 | 免费高清看电视网站 | 91亚洲精| 丰满少妇一级片 | 欧美在线一级片 | 久久久久久久看片 | 天天综合区 | 成人欧美一区二区三区在线观看 | 91视频久久久 | 2022国产精品视频 | 在线观看国产一区 | 男女全黄一级一级高潮免费看 | 97在线精品| 久久精品首页 | 免费观看www7722午夜电影 | 日韩系列在线观看 | 亚洲视频久久久久 | 日日干综合 | 日日夜夜精品免费 | 美女一二三区 | 97精品国产91久久久久久 | 热九九精品 | 日韩乱码在线 | 久插视频| 蜜桃视频在线观看一区 | 天天爱天天射天天干天天 | 欧美一区二区三区在线观看 | 久久久久亚洲精品国产 | 亚洲理论在线观看 | 国产艹b视频 | 亚洲国产色一区 | 亚洲1区在线 | 精品在线小视频 | 国产一区二区三区高清播放 | 国产视频网站在线观看 | 青草视频在线播放 | 99国产精品久久久久老师 | 国产成人一区二区三区久久精品 | 四虎海外影库www4hu | 99在线播放| 国产精品久久久久永久免费看 | 三级av黄色| 欧美激精品 | 国产精在线 | 久久久久免费电影 | 亚洲香蕉视频 | 国内外成人免费在线视频 | 在线成人国产 | 国产黄色精品在线 | 97在线免费视频 | 色网av| 99久久久久久久久久 | 中文字幕91 | 九九综合九九 | 夜夜狠狠| 国产精品久久精品国产 | 一区中文字幕在线观看 | 成人一级片视频 | avsex| 国产精品女人久久久 | 精品亚洲视频在线观看 | 成年人在线看视频 | av在线精品 | 亚洲成av人片在线观看香蕉 | 国内精品久久久久影院日本资源 | 一级成人免费视频 | 91九色蝌蚪 | 中文字幕在线播放日韩 | 中文字幕 欧美性 | 91精彩视频 | 在线免费av网 | 91九色视频导航 | 在线观看中文字幕一区二区 | 91色视频 | 99久在线精品99re8热视频 | 久 久久影院 | 国产区免费在线 | 久久综合狠狠综合久久狠狠色综合 | 日韩精品一区二区三区免费视频观看 | 五月婷香| 成人网444ppp | 国产 日韩 欧美 中文 在线播放 | 中文字幕免费高清在线 | 偷拍久久久 | 中文字幕中文字幕在线中文字幕三区 | 国产在线综合视频 | 人人爽人人插 | 91精品国自产在线偷拍蜜桃 | 婷婷激情综合五月天 | 国产在线观看免 | 色综合久久88色综合天天免费 | 欧美亚洲专区 | 成年人app网址 | 天天综合成人网 | 一二区电影 | bbb搡bbb爽爽爽| 一级性视频 | 在线一二三区 | 婷婷六月色 | 亚洲欧美日韩精品久久奇米一区 | 夜夜操天天 | 亚洲一区二区精品在线 | 91在线视频观看 | 亚洲电影一区二区 | 黄色精品免费 | 激情综合站 | 成人教育av | 91九色porny蝌蚪视频 | 国产成免费视频 | 久久久精品一区二区三区 | 66av99精品福利视频在线 | 久久精品视频在线看 | 日韩在线视频免费播放 | 国产美腿白丝袜足在线av | 99中文字幕视频 | 中文字幕中文字幕中文字幕 | av一区在线播放 | 视频在线观看日韩 | 亚洲爱av | 天天插综合 | 91欧美精品| 国产专区免费 | 欧美精品在线观看一区 | 狠狠躁夜夜躁人人爽视频 | 精品欧美一区二区在线观看 | 精品国内自产拍在线观看视频 | 国外调教视频网站 | 日韩区欠美精品av视频 | 中国精品一区二区 | 久久在线一区 | 欧日韩在线| 国产资源在线视频 | 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 最近中文字幕大全中文字幕免费 | 国产精品二区在线观看 | 免费久久久久久 | 国产精品免费观看网站 | 亚洲日日夜夜 | 日韩亚洲国产中文字幕 | 亚洲视频在线免费看 | 免费看一级黄色大全 | 黄在线| 国产精品久久久久一区二区 | 五月天丁香综合 | 最近中文字幕在线中文高清版 | 国产热re99久久6国产精品 | 中文字幕第一页在线视频 | 精品国产一区二区三区四区在线观看 | 日韩手机视频 | 色婷婷伊人| 欧美激情精品久久久 | 国产精品一区在线观看 | 中文字幕资源网 | 日日夜夜中文字幕 | 日本久久视频 | 欧美色图亚洲图片 | 久久久久久久久久久久国产精品 | 中文免费 | 精品在线观看一区二区三区 | 中文字幕日韩精品有码视频 | 国产一级做a | 国产精品久久久久久一区二区三区 | 怡红院久久 | 欧美一区,二区 | 久久精品99久久久久久2456 | 亚洲自拍av在线 | 中文字幕在线播放第一页 | 国产精品久久久久久999 | 四虎免费av | 精品麻豆入口免费 | 精品视频www| 亚洲三级在线免费观看 | 久久免费播放 | 欧美另类一二三四区 | 99精品视频在线观看免费 | 天天综合网天天 | 亚洲欧美日韩精品久久奇米一区 | 欧美人体xx | 免费视频三区 | 国产手机av | 国产成人一区二区啪在线观看 | 免费观看av网站 | 欧美爽爽爽 | 免费国产在线观看 | 夜夜夜| 亚洲黄色激情小说 | 亚洲精品91天天久久人人 | 色综合天天在线 | 91九色视频在线观看 | 在线观看一区二区视频 | 久久大香线蕉app | 久久久电影网站 | 久久久久久久久久免费 | 五月天色婷婷丁香 | 日韩激情影院 | 日韩理论电影在线观看 | 精品亚洲免费 | 亚洲国产精品一区二区久久hs | 亚洲午夜久久久久 | 麻豆91网站| 五月天国产 | 一区二区三区在线视频111 | 有码视频在线观看 | 女人18片毛片90分钟 | 国产在线精品区 | 96精品高清视频在线观看软件特色 | 婷婷av网站| 免费在线观看av网站 | 91av在线看 | 国产美女搞久久 | 中文字幕黄色 | 亚洲在线精品视频 | 91在线影院 | 五月婷婷电影网 | 精壮的侍卫呻吟h | 婷婷久久亚洲 | 国产在线欧美在线 | 99久久久久免费精品国产 | 日本久久免费电影 | 久久tv视频| 黄色免费网站大全 | av3级在线| 日韩亚洲国产中文字幕 | 国产一区二区在线观看免费 | www亚洲国产 | 三级黄色免费 | 久久综合99 | 日韩v在线91成人自拍 | 欧美激情精品久久久久久免费印度 | 国产亚洲婷婷免费 | 中文字幕频道 | 欧美一级免费片 | 国产精品久久久久av福利动漫 | 久久综合国产伦精品免费 | 国产亚洲91| 日日操日日 | 九九色综合 | 精品国产一区二区三区在线 | 久草精品视频 | av在线免费网站 | 日韩欧美视频在线播放 | 在线播放你懂 | 午夜精品一区二区三区可下载 | 久久免费a | 91成人免费电影 | 丁香九月婷婷综合 | 免费在线观看国产黄 | 欧美精品在线视频观看 | 国产最顶级的黄色片在线免费观看 | 五月情婷婷 | 99久久9 | 国产黄a三级三级三级三级三级 | 99热精品在线观看 | 亚洲国产日本 | 欧美成年黄网站色视频 | 午夜视频久久久 | 日韩欧美高清视频在线观看 | 日本三级不卡视频 | 亚洲精品国产欧美在线观看 | 99视频网址 | 久久久 精品 | a天堂免费 | 中文字幕 二区 | 国产三级在线播放 | 91精品视频一区二区三区 | 成人羞羞视频在线观看免费 | 99在线视频精品 | 久久综合爱 | av视屏在线 | 欧美另类xxxxx | 在线免费观看黄 | 久久这里只有精品1 | 天天色天天爱天天射综合 | 九九热免费在线视频 | 97成人啪啪网 | 狠日日| 国产一区二区三区高清播放 | 国产精品成人免费精品自在线观看 | 91在线视频免费观看 | 在线观看韩日电影免费 | 欧美色婷婷 | 成人h动漫在线看 | 欧美精品二区 | 99久久精品免费一区 | 在线观看黄网 | 99热最新在线 | 久一久久| 亚洲欧美日韩国产一区二区三区 | 中文字幕日本在线 | 美女av免费看 | zzijzzij亚洲日本少妇熟睡 | 久久午夜视频 | 麻豆成人小视频 | 亚洲小视频在线 | 国产精品女同一区二区三区久久夜 | 99资源网 | www.色爱 | 国产一区二区精品91 | 日韩免费大片 | 国产精品久久久久久久久久久久午夜 | 精品毛片在线 | 国产黄色大片 | 99电影 | 国产最新视频在线 | 在线国产中文字幕 | av三级在线免费观看 | 日本九九视频 | 婷婷激情影院 | 免费下载高清毛片 | 国产视频999| www色,com| 中文字幕国产在线 | av成人动漫 | a√天堂资源 | 久久久久久久久久久免费视频 | 超碰97免费观看 | 久久久婷| 337p西西人体大胆瓣开下部 | 中文字幕第一页在线播放 | 99精品一区二区 | 欧洲精品码一区二区三区免费看 | 亚洲精品456在线播放 | 黄色一二级片 | 久久久免费精品国产一区二区 | 国产小视频国产精品 | 国产精品久久99综合免费观看尤物 | 中文字幕在线播放日韩 | 激情视频在线观看网址 | 国产资源网 | 久二影院| 精品999 | 国产免费美女 | 天天做日日做天天爽视频免费 | 91免费网站在线观看 | 欧美特一级 | 久久久久精 | 亚洲无吗av | 成人av片免费观看app下载 | 亚洲四虎影院 | 五月天国产 | 亚洲精品九九 | 99久久激情视频 | 香蕉久草 | 亚洲国产精品一区二区尤物区 | 午夜精品一区二区三区在线观看 | 欧美日韩破处 | 亚洲激情六月 | 91视频免费网站 | 伊人导航 | 久久精品高清 | 亚洲精品国产自产拍在线观看 | 99久久久国产精品美女 | 一级片免费视频 | 亚洲1区在线 | 日本性高潮视频 | 蜜臀aⅴ国产精品久久久国产 | 国产小视频在线观看免费 | 国产专区一 | 国产一区福利在线 | 中文字幕在线视频国产 | 黄色软件大全网站 | 欧美精品一区二区蜜臀亚洲 | 欧美视频日韩 | 免费下载高清毛片 | 五月婷婷在线观看视频 | 成人久久免费视频 | 天天操夜夜拍 | 激情综合亚洲精品 | 九九av| 天天综合日 | 日韩美女av在线 | 97电院网手机版 | 在线视频久久 | 99热这里只有精品免费 | 999久久a精品合区久久久 | 91av视频| 97视频入口免费观看 | 中文字幕在线视频精品 | 视频一区二区在线 | 中文视频在线看 | 亚洲精品久久激情国产片 | 国产精品自在欧美一区 | 五月天综合色 | 国产精品视频大全 | 精品国产一区二区在线 | 综合国产在线观看 | 天天天操操操 | 成人资源在线观看 | 天天操天天干天天插 | 国产久草在线 | 国产免费小视频 | 国内精品99 | 久久视精品 | 青青河边草免费 | 免费看91的网站 | 亚洲手机天堂 | 久久在线免费观看视频 | 久久草草影视免费网 | 亚洲精品网页 | 天天夜操 | 欧洲精品久久久久毛片完整版 | 午夜久久美女 | 在线视频app | 亚洲黄网址 | 丁香婷婷激情五月 | 蜜桃视频在线视频 | 久综合网 | 国产一级视频在线观看 | 超级碰碰碰视频 | 97超碰免费在线 | 免费的黄色的网站 | 波多野结衣在线观看视频 | 国产一级一片免费播放放 | japanesefreesex中国少妇 | 国产精品手机在线观看 | 亚洲精品在线观看不卡 | 久久公开视频 | 伊香蕉大综综综合久久啪 | 综合天天网 | 在线免费黄色毛片 | 亚洲免费激情 | 在线看一级片 | av综合av| 日韩在线电影 | 欧美一级黄色片 | 91人人插 | 日韩亚洲国产精品 | 国产69精品久久久久久 | 亚洲国产剧情 | 国产v在线观看 | 麻豆免费在线视频 | 国产亚洲精品电影 | 2019天天干夜夜操 | 六月丁香社区 | 成 人 黄 色 视频免费播放 | 亚洲男男gⅴgay双龙 | 久久久久看片 | 亚洲婷婷综合色高清在线 | 日韩中文字幕在线观看 | 操操操av | 国产精品福利午夜在线观看 | 亚洲 欧美 成人 | 伊人久久五月天 | 中文字幕在线精品 | 久久夜靖品 | 日韩av网页 | 免费看av在线 | 天天干天天做天天爱 | 亚洲精品456在线播放第一页 | 成人在线视频免费观看 | 日韩av不卡在线观看 | 久久99精品久久只有精品 | 久草视频在| 国产精品黄色av | 91精品久| 欧美在一区 | 五月黄色 | 夜夜看av| www.97色.com| 又湿又紧又大又爽a视频国产 | 日本成址在线观看 | 中文字幕高清在线播放 | 丰满少妇麻豆av | 精品国产一区二区三区四区在线观看 | 久久精品国产免费看久久精品 | 久久看片 | 欧美国产日韩一区二区三区 | 成人羞羞视频在线观看免费 | 国产精品91一区 | 很黄很污的视频网站 | 午夜精品久久久久久久久久 | 久久国产精品久久久久 | 97超碰总站 | 国产精品免费视频网站 | 国产永久免费高清在线观看视频 | 手机色在线 | 中文字幕a∨在线乱码免费看 | 国产美女视频网站 | 色噜噜在线观看 | 国产精品videoxxxx | 美女一区网站 | 99视频在线观看视频 | 久久精品电影网 | 亚洲三级在线 | 久热免费 | 在线观看免费91 | 亚洲欧美成人 | 国产色网站 | 美女黄色网在线播放 | 一区二区三区 亚洲 | 国产91精品一区二区麻豆亚洲 | 精品国产一区二区三区四区vr | 综合久久影院 | 国产理论免费 | 国产精品久免费的黄网站 | 久久国产精品久久久久 | 伊人午夜| 欧美激情视频在线观看免费 | 成年人黄色免费看 | 在线播放一区二区三区 | 又爽又黄又无遮挡网站动态图 | 99热日本 | 亚洲欧美综合精品久久成人 | 久久韩国免费视频 | 免费黄色小网站 | 免费在线观看日韩欧美 | 国产伦理久久精品久久久久_ | 91刺激视频 | 免费看黄在线观看 | 国产最新视频在线观看 | 亚洲欧美日韩一区二区三区在线观看 | 日本久久免费电影 | 91麻豆精品国产91 | 成人av直播 | 久草在线免费播放 | 国产精品原创视频 | 久久精品久久精品久久39 | 精品人人人人 | 狠狠干2018 | 国产精品一区二区无线 | 欧美日韩中文字幕综合视频 | 精品国产免费观看 | 玖草影院 | 国产精品久久久久久久久久久久午夜片 | 日韩精品专区在线影院重磅 | 免费观看国产视频 | 亚洲综合成人在线 | 国产精美视频 | 国产免费视频在线 | www.久草.com| av先锋中文字幕 | 久草在线一免费新视频 | 久久公开免费视频 | 婷婷亚洲激情 | 国产精品毛片一区 | 97精品一区二区三区 | 国产亚洲精品久久久久久久久久久久 | 在线一二区 | 国产精品久久一卡二卡 | 国产裸体无遮挡 | 国产麻豆剧传媒免费观看 | 69国产盗摄一区二区三区五区 | 色噜噜在线观看视频 | 麻豆果冻剧传媒在线播放 | 91九色国产视频 | 天天玩天天干天天操 | 色综合中文字幕 | 人人爽人人爽人人爽 | www.狠狠色.com| www.91av在线 | 亚洲乱码精品久久久久 | 国产精品毛片一区二区在线看 | 久久激情五月丁香伊人 | 久久欧美在线电影 | 天天躁日日躁狠狠躁av麻豆 | 日日操天天射 | 射射射综合网 | 久久福利电影 | 免费亚洲精品视频 | 五月开心激情 | 免费国产ww | 国产精品一区二区免费在线观看 | 婷婷精品在线视频 | 欧美做受xxx | 国产精品va在线播放 | 日韩中出在线 | 日韩中文免费视频 | 精品五月天 | 成片视频在线观看 | 欧美日韩二区在线 | 久久国产精品一区二区三区四区 | 日韩亚洲在线观看 | 五月婷婷久草 | 中文字幕亚洲欧美日韩 | 91人人爽久久涩噜噜噜 | 91九色成人 | 最新色站 | 日韩av一卡二卡三卡 | 免费黄色特级片 | 97精品国产一二三产区 | 91视频免费 | 国产亚洲精品bv在线观看 | 亚洲黄色一级大片 | 二区三区av | 六月激情网 | 黄色一级片视频 | 久久久久久久18 | 免费成人在线电影 | 黄色大全在线观看 | 亚洲理论在线观看电影 | 3d黄动漫免费看 | 国产专区精品视频 | 亚洲黄色在线观看 | 国产亚洲精品久久久久久久久久久久 | 国产在线视频导航 | 免费av在线网站 | 2024国产精品视频 | 91中文在线视频 | 国产精品毛片一区二区 | 91人人爽久久涩噜噜噜 | 欧美在线观看视频一区二区 | 久久视频免费在线 | av一级片网站 | 天天草天天色 | 国产亚洲欧美一区 | 免费在线观看91 | 欧美一进一出抽搐大尺度视频 | 91在线视频| 国产精品久久久久免费 | 99国内精品久久久久久久 | 国产视频网站在线观看 | 国产日韩视频在线播放 | 国产自产高清不卡 | 色噜噜噜|