精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

一起學(xué) WebGL:紋理對(duì)象學(xué)習(xí)

開(kāi)發(fā) 前端
紋理對(duì)象,是將像素(Texels)以數(shù)組方式傳給 GPU 的對(duì)象,常見(jiàn)場(chǎng)景是貼圖,就是將圖片的數(shù)據(jù)應(yīng)用到 3D 物體上。

大家好,我是前端西瓜哥,今天我們來(lái)了解 WebGL 的紋理對(duì)象(Texture)

紋理對(duì)象,是將像素(texels)以數(shù)組方式傳給 GPU 的對(duì)象,常見(jiàn)場(chǎng)景是貼圖,就是將圖片的數(shù)據(jù)應(yīng)用到 3D 物體上。

紋理對(duì)象創(chuàng)建和綁定

先創(chuàng)建紋理對(duì)象:

const texture = gl.createTexture(); // 創(chuàng)建紋理對(duì)象

然后綁定到紋理單元:

gl.bindTexture(gl.TEXTURE_2D, texture); // 將紋理對(duì)象綁定上去

填充方式

紋理是要貼到畫布的某個(gè)區(qū)域上的,并不一定剛好設(shè)置一下填充方式。

紋理比繪制區(qū)域大,就要做縮放;紋理比繪制區(qū)域小,就要做放大;紋理沒(méi)能完全填充繪制區(qū)域,就要在水平和垂直方向進(jìn)行填充。

這些場(chǎng)景都需要對(duì)應(yīng)設(shè)置不同的策略。

// 縮小和放大都都使用 “最近點(diǎn)采樣”
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);

紋理單元

WebGL 支持設(shè)置多個(gè)紋理單元(Texture Unit),即我們可以將多個(gè)圖片放到多個(gè)單元中,然后進(jìn)行切換。

就好像手里拿著不同的蓋章,想印哪種圖案就掏出哪個(gè)蓋上去。

紋理單元是有上限的,至少要支持 8 個(gè),主流瀏覽器一般支持 16 個(gè)。

具體支持幾個(gè),可通過(guò)下面代碼獲得。

gl.getParameter(gl.MAX_TEXTURE_IMAGE_UNITS) // 通常是 16

默認(rèn)使用 0 號(hào)紋理單元,可通過(guò)下面這一行代碼來(lái)切換紋理單元:

gl.activeTexture(gl.TEXTURE1); // 開(kāi)啟 1 號(hào)紋理單元

注意這個(gè)要 在將紋理對(duì)象綁定紋理單元之前 執(zhí)行。

最后我們需要設(shè)置一下我們的紋理采樣器選擇使用哪個(gè)紋理單元:

gl.uniform1i(u_Sampler, 0); // 開(kāi)啟 0 號(hào)紋理對(duì)象

不主動(dòng)調(diào)用這個(gè)方法,默認(rèn)會(huì)使用 0 號(hào)紋理單元。

切換紋理單元是有一定的性能代價(jià)的,不建議你在短時(shí)間內(nèi)不斷地切換紋理單元。簡(jiǎn)單的渲染場(chǎng)景可忽略不計(jì)。

純色紋理

畫個(gè)純純的紅色紋理。

// 紅色
const data = new Uint8Array([
  255, 0, 0
]);

gl.texImage2D(
  gl.TEXTURE_2D, // 紋理目標(biāo),這里是二維紋理
  0, // 細(xì)節(jié)級(jí)別,0 表示最高級(jí)別
  gl.RGB, // 紋理內(nèi)部格式,還支持其他的比如 gl.RGBA、LUMINANCE(流明)
  1, // 寬(寬高的單位為像素,且為 2 的 n 次冪)
  1, // 高
  0, // 是否描邊。必須為 0(但 opengl 支持)
  gl.RGB, // 源圖像數(shù)據(jù)格式
  gl.UNSIGNED_BYTE, // 紋素(單個(gè)像素)數(shù)據(jù)類型
  data // 數(shù)據(jù)數(shù)組,一個(gè)個(gè)像素點(diǎn)
);

主要注意的是,gl.texImage2D() 方法支持函數(shù)重載,有多種傳入的參數(shù)的方式,注意分辨。具體看 官方文檔。

這里選擇使用 gl.RGB 格式,設(shè)置了一個(gè) (255, 0, 0) 的紅色顏色值。

最后我們成功畫出一個(gè)純紅色塊。

圖片

完整代碼:

/** @type {HTMLCanvasElement} */
const canvas = document.querySelector('canvas');
const gl = canvas.getContext('webgl');

const vertexShaderSrc = `
attribute vec4 a_Position;
attribute vec2 a_TexCoord;
varying vec2 v_TexCoord;
void main() {
 gl_Position = a_Position;
 v_TexCoord = a_TexCoord;
}
`;

const fragmentShaderSrc = `
precision highp float;
uniform sampler2D u_Sampler;
varying vec2 v_TexCoord;
void main() {
  gl_FragColor = texture2D(u_Sampler, v_TexCoord);
}
`;

// 創(chuàng)建程序?qū)ο?createProgram(gl);

// 頂點(diǎn)坐標(biāo),紋理坐標(biāo)
const verticesTexCoords = new Float32Array([
  // 左上點(diǎn)。
  // 左邊兩個(gè)是頂點(diǎn);右邊兩個(gè)是紋理
  -0.5, 0.5, 0.0, 1,
  // 左下
  -0.5, -0.5, 0.0, 0.0,
  // 右上
  0.5, 0.5, 1, 1,
  // 右下
  0.5, -0.5, 1, 0.0,
]);
const FSIZE = verticesTexCoords.BYTES_PER_ELEMENT;

// 創(chuàng)建緩存對(duì)象
const verticesTexBuffer = gl.createBuffer();
// 綁定緩存對(duì)象到上下文
gl.bindBuffer(gl.ARRAY_BUFFER, verticesTexBuffer);
// 向緩存區(qū)寫入數(shù)據(jù)
gl.bufferData(gl.ARRAY_BUFFER, verticesTexCoords, gl.STATIC_DRAW);

// 獲取 a_Position 變量地址
const a_Position = gl.getAttribLocation(gl.program, 'a_Position');
// 將緩沖區(qū)對(duì)象分配給 a_Position 變量
gl.vertexAttribPointer(a_Position, 2, gl.FLOAT, false, FSIZE * 4, 0);
// 允許訪問(wèn)緩存區(qū)
gl.enableVertexAttribArray(a_Position);

// 傳入紋理坐標(biāo)位置信息
const a_TexCoord = gl.getAttribLocation(gl.program, 'a_TexCoord');
gl.vertexAttribPointer(a_TexCoord, 2, gl.FLOAT, false, FSIZE * 4, FSIZE * 2);
gl.enableVertexAttribArray(a_TexCoord);

/***** 紋理對(duì)象 *****/
const texture = gl.createTexture(); // 創(chuàng)建紋理對(duì)象
const u_Sampler = gl.getUniformLocation(gl.program, 'u_Sampler'); // 獲取 u_Sampler 地址

// 記載圖片

gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 1); // 翻轉(zhuǎn)紋路圖像的 y 軸
gl.activeTexture(gl.TEXTURE0); // 開(kāi)啟 0 號(hào)紋理單元
gl.bindTexture(gl.TEXTURE_2D, texture); // 將我們的紋理對(duì)象綁定上去

// 配置紋理參數(shù)
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);

// 【----關(guān)鍵代碼---】配置紋理圖像
const data = new Uint8Array([255, 0, 0, 0, 255, 255, 0, 255, 0, 0, 255, 0]);
gl.texImage2D(
  gl.TEXTURE_2D, // 紋理目標(biāo)
  0, // 細(xì)節(jié)級(jí)別
  gl.RGB, // 紋理內(nèi)部格式
  1,
  1,
  0,
  gl.RGB, // 源圖像數(shù)據(jù)格式
  gl.UNSIGNED_BYTE, // 紋素?cái)?shù)據(jù)類型
  data // 數(shù)據(jù)
);

gl.uniform1i(u_Sampler, 0); // 開(kāi)啟 0 號(hào)紋理對(duì)象

/****** 繪制 ******/
// 清空畫布,并指定顏色
gl.clearColor(0, 0, 0, 1);
gl.clear(gl.COLOR_BUFFER_BIT);
// 繪制矩形,這里提供了 4 個(gè)點(diǎn)
gl.drawArrays(gl.TRIANGLE_STRIP, 0, 4);

/**** 封裝的方法 ****/

function createProgram(gl) {
  /**** 渲染器生成處理 ****/
  // 創(chuàng)建頂點(diǎn)渲染器
  const vertexShader = gl.createShader(gl.VERTEX_SHADER);
  gl.shaderSource(vertexShader, vertexShaderSrc);
  gl.compileShader(vertexShader);
  // 創(chuàng)建片元渲染器
  const fragmentShader = gl.createShader(gl.FRAGMENT_SHADER);
  gl.shaderSource(fragmentShader, fragmentShaderSrc);
  gl.compileShader(fragmentShader);
  // 程序?qū)ο?  const program = gl.createProgram();
  gl.attachShader(program, vertexShader);
  gl.attachShader(program, fragmentShader);
  gl.linkProgram(program);
  gl.useProgram(program);
  gl.program = program;
}

線上 demo:

https://codesandbox.io/s/1hvp4x?file=/index.js。

多個(gè)色塊紋理

也可以同時(shí)設(shè)置多個(gè)色塊。

圖片

const data = new Uint8Array([
  255, 0, 0, 255,   // 紅色
  255, 255, 0, 255, // 黃色
  0, 0, 255, 255,  // 藍(lán)色
  0, 255, 0, 255,  // 綠色
]);

gl.texImage2D(
  gl.TEXTURE_2D, // 紋理目標(biāo)
  0, // 細(xì)節(jié)級(jí)別
  gl.RGBA, // 紋理內(nèi)部格式
  2,
  2,
  0,
  gl.RGBA, // 源圖像數(shù)據(jù)格式
  gl.UNSIGNED_BYTE, // 紋素?cái)?shù)據(jù)類型
  data // 數(shù)據(jù)
);

創(chuàng)建了 2x2 4個(gè)像素大小的紋理,并制定了這個(gè) 4 個(gè)像素點(diǎn)的顏色,然后被放大繪制到指定區(qū)域上。

線上演示 demo:

https://codesandbox.io/s/7436cs?file=/index.js。

圖片紋理

圖片紋理,需要加載玩圖片,將圖片對(duì)象綁定到紋理對(duì)象上。

// 將紋理圖像分配給紋理對(duì)象
gl.texImage2D(
  gl.TEXTURE_2D,
  0, // 細(xì)節(jié)級(jí)別
  gl.RGB,
  gl.RGB,
  gl.UNSIGNED_BYTE,
  img // Image 實(shí)例
);

結(jié)尾

紋理對(duì)象是很常用的一個(gè)對(duì)象,用于指定區(qū)域要填充的像素。

常見(jiàn)的是加載圖片,把圖片貼到三維的一個(gè)面上。也可以自己指定像素值。

責(zé)任編輯:姜華 來(lái)源: 前端西瓜哥
相關(guān)推薦

2023-05-04 08:48:42

WebGL復(fù)合矩陣

2023-04-26 07:42:16

WebGL圖元的類型

2023-04-12 07:46:24

JavaScriptWebGL

2023-03-29 07:31:09

WebGL坐標(biāo)系

2023-04-13 07:45:15

WebGL片元著色器

2023-05-16 07:44:03

紋理映射WebGL

2023-05-31 20:10:03

WebGL繪制立方體

2023-04-11 07:48:32

WebGLCanvas

2023-05-17 08:28:55

2023-04-27 08:27:29

WebGL變形矩陣

2023-04-17 09:01:01

WebGL繪制三角形

2023-05-08 07:29:48

WebGL視圖矩陣

2022-11-29 16:35:02

Tetris鴻蒙

2022-12-02 14:20:09

Tetris鴻蒙

2023-03-30 09:32:27

2022-11-14 17:01:34

游戲開(kāi)發(fā)畫布功能

2023-05-06 07:23:57

2023-11-13 22:27:53

Mapping數(shù)據(jù)庫(kù)

2023-02-28 07:28:50

Spritepixijs

2024-02-28 12:12:20

Pipeline數(shù)據(jù)機(jī)制
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

男人天堂1024| 国产精品高清在线| 97久久夜色精品国产九色 | 国产精品xxx| 国产精品免费视频一区| av一区二区三区免费| 五月婷婷亚洲综合| 91亚洲人成网污www| 欧美一区二区女人| 日韩中文字幕三区| 麻豆影视国产在线观看| av电影在线观看完整版一区二区| 国产成人中文字幕| 精品无码人妻一区二区三区品 | 蜜臀av在线播放一区二区三区| 久久天堂电影网| 久久中文字幕人妻| 国产成人免费视频网站视频社区| 红桃av永久久久| 一区二区精品在线观看| 五月激情婷婷网| 国产一区久久久| 日韩免费av片在线观看| 91视频免费在线看| 日韩中文字幕高清在线观看| 亚洲国产天堂久久国产91| 国产精品视频中文字幕| 亚洲国产成人二区| 亚洲综合久久av| 亚洲精品在线免费| 青青草免费观看免费视频在线| 国产乱淫av一区二区三区 | 日韩在线你懂得| 91污在线观看| 亚洲一区二区三区视频播放| 国产女主播喷水视频在线观看| 欧美人成在线| 久久最新资源网| 人妻一区二区视频| 在线成人动漫av| 亚洲国产精品大全| 性农村xxxxx小树林| 欧美日韩卡一| 欧美体内she精视频| 色欲av无码一区二区人妻| 国精产品一区一区三区mba下载| 国产原创一区二区| 国产日产欧美a一级在线| 国产熟妇一区二区三区四区| 亚洲欧美视频| 97视频在线观看免费| 久草国产在线视频| 欧美福利在线| 欧美成人免费观看| 欧美 日韩 国产 一区二区三区| 日韩一区二区中文| 综合网中文字幕| 国产亚洲精品熟女国产成人| 久久不见久久见中文字幕免费 | 香蕉视频xxxx| 国产精品白丝久久av网站| 欧美日本韩国一区二区三区视频 | 亚洲电影成人av99爱色| 欧洲成人午夜精品无码区久久| 国产美女亚洲精品7777| 欧美一区二区三区在线观看 | 亚洲视频在线看| 性猛交娇小69hd| 成人婷婷网色偷偷亚洲男人的天堂| 亚洲欧美日韩一区二区在线| 国产交换配乱淫视频免费| 中文精品一区二区| 日韩在线精品视频| 无码黑人精品一区二区| 欧美日韩免费观看一区=区三区| 免费成人高清视频| 久久视频免费看| 99精品国产在热久久下载| 9.1国产丝袜在线观看| 欧产日产国产69| 日本美女一区二区三区| 成人免费在线视频网址| 亚洲老妇色熟女老太| 成人福利电影精品一区二区在线观看| 久久96国产精品久久99软件| 免费在线稳定资源站| 欧美激情资源网| 国产资源第一页| 秋霞伦理一区| 欧美日韩一级大片网址| 巨乳女教师的诱惑| 天天躁日日躁狠狠躁欧美| 国产亚洲欧美视频| 青娱乐免费在线视频| 一区二区三区国产盗摄 | 国产成人自拍视频在线| 久久久久久久欧美精品| 成人精品一区二区三区| 日韩一级片免费| 国产婷婷色一区二区三区在线| 成人欧美在线视频| 性中国古装videossex| 97se亚洲国产综合自在线观| 神马影院午夜我不卡| 神马午夜伦理不卡| 日本精品一级二级| 午夜性福利视频| 精品视频久久| 欧美激情乱人伦一区| 欧美日韩 一区二区三区| 国产一区二区三区四| 麻豆成人av| 成人欧美在线| 欧美视频你懂的| 成人手机在线免费视频| 亚洲第一偷拍| 国产精品96久久久久久| 六月婷婷综合网| 国产精品国产三级国产有无不卡| 全黄性性激高免费视频| 台湾天天综合人成在线| 亚洲欧美另类在线观看| 精品少妇久久久| 狠狠色狠狠色综合系列| 日本精品一区| 国产不卡人人| 日韩手机在线导航| 久久一级免费视频| 日韩综合在线视频| 精品国产一二| 色女人在线视频| 欧美精品第一页| 免费网站在线高清观看| 国产一区91| 国产伦精品一区二区三区视频孕妇| 福利在线观看| 色综合久久88色综合天天6| 老司机av网站| 亚洲影视一区| 成人欧美一区二区三区在线| av电影在线网| 在线精品视频一区二区三四| 亚洲一区二区观看| 免费视频一区| 鲁片一区二区三区| 欧美调教sm| 亚洲跨种族黑人xxx| 精品美女久久久久| 99视频在线观看一区三区| h无码动漫在线观看| 日韩高清在线观看一区二区| 久久人人爽亚洲精品天堂| 一区视频免费观看| 精品系列免费在线观看| 亚洲免费视频一区| 青青国产精品| 久久深夜福利免费观看| 国产绿帽一区二区三区| 中文字幕视频一区| 久久久久久国产精品日本| 888久久久| 99中文字幕| 变态调教一区二区三区| 亚洲国产精品美女| 国产精品第5页| 国产偷国产偷亚洲高清人白洁| 黄色aaa级片| 日韩黄色大片| 91探花福利精品国产自产在线| 91精品久久久久久粉嫩| 精品美女一区二区| 黄网在线观看视频| 欧美极品aⅴ影院| 91在线第一页| 亚洲精品综合| 三级三级久久三级久久18| 国产亚洲欧美日韩精品一区二区三区| www亚洲欧美| 性中国古装videossex| 欧美日韩亚洲高清| 91狠狠综合久久久久久| 国产精品亚洲第一| 18岁网站在线观看| 四虎国产精品免费观看| 99在线免费观看视频| 日本三级一区| 中文字幕精品网| 亚洲第一天堂在线观看| 欧美日韩亚洲精品内裤| 污污视频网站在线免费观看| 国产盗摄女厕一区二区三区| 国产美女主播在线播放| 欧美日韩国产高清电影| 亚洲qvod图片区电影| 九色porny丨国产首页在线| 亚洲图片欧美日产| 国产成人三级在线播放| 欧美视频中文字幕在线| 黑人操日本美女| 97久久超碰国产精品电影| 69久久久久久| 亚洲精品麻豆| 美国av在线播放| 亚洲69av| 亚洲一区中文字幕在线观看| 成人直播视频| 欧美国产日产韩国视频| 国产区视频在线| 日韩欧美国产一二三区| 国产一卡二卡三卡| 图片区日韩欧美亚洲| 制服丨自拍丨欧美丨动漫丨| 99国产精品视频免费观看| 三级性生活视频| 久久影院亚洲| 女人帮男人橹视频播放| 国产精品久久久久久久久久10秀| 蜜桃视频在线观看91| 精品一区二区三区视频在线播放| 国产精品成久久久久三级| 日本在线视频网址| 久久婷婷国产麻豆91天堂| youjizz在线播放| 日韩av中文字幕在线免费观看| 国产乱淫av片免费| 欧美优质美女网站| 五月天婷婷导航| 午夜亚洲国产au精品一区二区| 91视频综合网| 国产精品国产自产拍高清av王其 | 黑人巨茎大战欧美白妇| 国产成人精品一区二区免费看京| 国产日本一区二区三区| 欧州一区二区三区| 91在线视频精品| 成人日韩av| 国产成人精品日本亚洲| 伊人久久在线| 69av在线视频| 国产精品原创| 韩日欧美一区二区| av手机免费在线观看| 欧美黑人一区二区三区| 婷婷色在线播放| 欧美日韩第一视频| 免费在线看电影| 欧美激情第三页| 青草视频在线免费直播| 欧美大片va欧美在线播放| 成人video亚洲精品| www.亚洲天堂| 黄色网在线播放| 欧美精品一区二区三区国产精品| 黄色网址在线免费观看| 欧美精品在线免费观看| 亚洲精品白浆| 欧美精品videosex极品1| 青春草视频在线| 国产最新精品视频| 色偷偷色偷偷色偷偷在线视频| 97在线看福利| 欧美极品videos大乳护士| 91精品国产色综合| 卡通欧美亚洲| 国产精品一区久久| 玖玖精品一区| 国产尤物99| jizzjizz欧美69巨大| 一区一区视频| 亚洲最新色图| www..com日韩| 久久精品系列| 日韩成人精品视频在线观看| 国产老妇另类xxxxx| zjzjzjzjzj亚洲女人| 久久综合九色综合久久久精品综合| a毛片毛片av永久免费| 国产精品嫩草久久久久| 青娱乐国产在线| 福利微拍一区二区| 伊人免费在线观看高清版| 欧美一区二区三区四区五区| 韩国av免费在线观看| 亚洲美女黄色片| 瑟瑟视频在线| 久久久免费电影| 台湾成人免费视频| 999国内精品视频在线| 亚洲黄页在线观看| 樱空桃在线播放| 国产日韩欧美一区| 99re精彩视频| 99视频热这里只有精品免费| 中国1级黄色片| 午夜精品久久久久久久久久| 伊人网av在线| 亚洲精品美女久久久| 欧美日韩视频在线播放| 高清欧美性猛交xxxx| 国产成人精选| 国产在线精品一区| 68国产成人综合久久精品| 内射国产内射夫妻免费频道| 九九视频精品免费| 人妻丰满熟妇av无码久久洗澡| 国产精品久久久久一区二区三区 | 亚洲熟妇一区二区| 国产视频一区二区在线观看| 久久久久久欧美精品se一二三四 | 国产熟女一区二区三区五月婷 | 97电影在线观看| 88xx成人精品| 视频免费一区二区| 亚洲午夜精品国产| 久久高清一区| 黄色av网址在线观看| 亚洲蜜臀av乱码久久精品| 日韩欧美专区在线| 天堂a√在线| 欧美成人亚洲成人| 日韩综合av| 欧美三日本三级少妇三99| 亚洲无线视频| 激情成人在线观看| 欧美国产激情一区二区三区蜜月| 久久精品视频6| 欧美一区二区三区爱爱| av电影在线观看| 国产精品成人av性教育| 欧美爱爱网站| 日韩日韩日韩日韩日韩| 国产成人免费视| 欧美人禽zoz0强交| 欧美剧情片在线观看| www视频在线观看免费| 欧美影院久久久| 女同一区二区三区| 夜夜添无码一区二区三区| 国产成人在线视频网址| 日韩欧美国产成人精品免费| 欧美日韩一级片在线观看| 成人午夜影视| 国产精品福利在线观看网址| 日韩理论电影中文字幕| 欧美综合在线播放| 成人午夜av电影| 性生活在线视频| 亚洲精品自拍动漫在线| 国产av精国产传媒| 欧美成人午夜剧场免费观看| 日韩区一区二| 日韩精品免费一区| 成人手机电影网| 国产午夜精品无码| 亚洲精品国产综合久久| 美女av在线免费看| 免费试看一区| 日本vs亚洲vs韩国一区三区二区| 欧美a在线播放| 欧美精品丝袜中出| 青青草国产在线观看| 这里只有精品在线| 久久久久久久久久福利| 国产日本欧洲亚洲| 一级α片免费看刺激高潮视频| 色偷偷噜噜噜亚洲男人| 99综合久久| 精品一二三四五区| 91毛片在线观看| 天天射天天干天天| 日韩一区av在线| 91精品短视频| 欧美韩国日本在线| 中文字幕精品三区| 国产精品羞羞答答在线| 欧美激情精品久久久久久黑人 | 一区二区91| 精品欧美一区二区久久久| 欧美日韩精品综合在线| 在线免费观看a视频| 国产免费一区| 日本aⅴ精品一区二区三区| 久久爱一区二区| 欧美精品一区二区三区蜜桃| 高清不卡亚洲| 国产日产欧美一区二区| caoporen国产精品视频| 波多野结衣视频观看| 欧美xxxx做受欧美| 天天躁日日躁狠狠躁欧美巨大小说| 黄色片在线免费| 一区二区三区波多野结衣在线观看| 少妇av在线播放| 国产精品视频男人的天堂| 亚洲无线一线二线三线区别av| 丰满圆润老女人hd| 91精品国产一区二区三区蜜臀| 91在线超碰| 久久久国产精华液999999| av在线一区二区|