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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android使用NDK OpenGL ES3.0绘制一个三角形

發(fā)布時間:2024/4/15 Android 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android使用NDK OpenGL ES3.0绘制一个三角形 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Android使用NDK ?OpenGL ES3.0繪制一個三角形

【尊重原創(chuàng),轉(zhuǎn)載請注明出處】https://blog.csdn.net/guyuealian/article/details/82021607

? ? ?網(wǎng)上已經(jīng)有很多OpenCV的教程,不過大都是基于Java層調(diào)用openGL接口,若使用Java層openGL接口繪制三角形,還是比較簡單的,但要是使用NDK C++ 實現(xiàn),還是有點復雜。

? ? 本文將使用Android NDK開發(fā),利用C++的 OpenGL ES3.0繪制一個三角形。繪制三角形的C/C++源碼大部分是參考:《OPENGL ES 3.0編程指南?》第二章的代碼,但該書只有源碼,沒有工程項目,是用Android.mk配置,要做成Android Studio Demo還是要花點力氣的。本博客的OpenGL的開發(fā),其配置文件使用CMakeLists.txt,Android Studio 2.3以上NDK開發(fā)很容易啦,其配置方法使用CMakeLists.txt會比使用Android.mk更容易。

? ? 這里不具體分析繪制三角形的代碼實現(xiàn)過程了,畢竟《OPENGL ES 3.0編程指南?》這本書已經(jīng)很詳細啦。

? ? 本項目源碼下載地址:https://github.com/PanJinquan/openGL-Demo?,要是覺得不錯,給個”Star“哈

開發(fā)環(huán)境:

  • (1)Android Studio 2.3.3 以上
  • (2)android-ndk-r10d 以上,下載地址:https://developer.android.google.cn/ndk/downloads/index.html

?1、新建項目:

? ?新建Android工程一定要勾選“Include C++ support”,這樣新建的Android工程會直接支持NDK開發(fā),避免各種配置問題,如果提示沒有NDK,請下載NDK,并在工程“Project Structure”中導入即可。

我的工程目錄是這樣的:

2、新建RendererJNI類

package opengl.panjq.com.opengl_demo;import android.opengl.GLSurfaceView.Renderer; import javax.microedition.khronos.egl.EGLConfig; import javax.microedition.khronos.opengles.GL10;import android.content.Context; import android.content.res.AssetManager; import android.opengl.GLSurfaceView; import android.util.Log;public class RendererJNI implements GLSurfaceView.Renderer {static {System.loadLibrary("gltest-lib");}private AssetManager mAssetMgr = null;private final String mLogTag = "ndk-build";public native void glesInit();public native void glesRender();public native void glesResize(int width, int height);public native void readShaderFile(AssetManager assetMgr);public RendererJNI(Context context) {mAssetMgr = context.getAssets();if (null == mAssetMgr) {Log.e(mLogTag, "getAssets() return null !");}}/*** 當創(chuàng)建 GLSurfaceView時,系統(tǒng)調(diào)用這個方法.使用這個方法去執(zhí)行只需要發(fā)生一次的動作,* 例如設(shè)置OpenGL環(huán)境參數(shù)或者初始化OpenGL graphic 對象.* @param gl* @param config*/@Overridepublic void onSurfaceCreated(GL10 gl, EGLConfig config) {readShaderFile(mAssetMgr);glesInit();}/*** 當GLSurfaceView 幾何學發(fā)生改變時系統(tǒng)調(diào)用這個方法.包括 GLSurfaceView 的大小發(fā)生改變或者橫豎屏發(fā)生改變.* 使用這個方法去響應(yīng)GLSurfaceView 容器的改變* @param gl* @param width* @param height*/@Overridepublic void onSurfaceChanged(GL10 gl, int width, int height) {glesResize(width, height);}/*** 執(zhí)行渲染工作:當系統(tǒng)每一次重畫 GLSurfaceView 時調(diào)用.使用這個方法去作為主要的繪制和重新繪制graphic 對象的執(zhí)行點.* @param gl*/@Overridepublic void onDrawFrame(GL10 gl) {glesRender();} }

3、修改MainActivity.java文件

package opengl.panjq.com.opengl_demo;import android.content.Context; import android.opengl.GLSurfaceView; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.TextView;import android.app.ActivityManager; import android.content.pm.ConfigurationInfo; import android.util.Log;import static android.opengl.GLSurfaceView.RENDERMODE_WHEN_DIRTY;public class MainActivity extends AppCompatActivity {private final int CONTEXT_CLIENT_VERSION = 3;private GLSurfaceView mGLSurfaceView;RendererJNI mRenderer;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);mGLSurfaceView = new GLSurfaceView(this);mRenderer=new RendererJNI(this);if (detectOpenGLES30()) {// 設(shè)置OpenGl ES的版本mGLSurfaceView.setEGLContextClientVersion(CONTEXT_CLIENT_VERSION);// 設(shè)置與當前GLSurfaceView綁定的RenderermGLSurfaceView.setRenderer(mRenderer);// 設(shè)置渲染的模式mGLSurfaceView.setRenderMode(RENDERMODE_WHEN_DIRTY);} else {Log.e("opengles30", "OpenGL ES 3.0 not supported on device. Exiting...");finish();}setContentView(mGLSurfaceView);}@Overrideprotected void onResume() {super.onResume();mGLSurfaceView.onResume();}@Overrideprotected void onPause() {super.onPause();mGLSurfaceView.onPause();}private boolean detectOpenGLES30() {ActivityManager am = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);ConfigurationInfo info = am.getDeviceConfigurationInfo();return (info.reqGlEsVersion >= 0x30000);} }

4.新建C++ JNI文件

RendererJNI.h頭文件

/* DO NOT EDIT THIS FILE - it is machine generated */ #include <jni.h> /* Header for class opengl_panjq_com_opengl_demo_RendererJNI */#ifndef _Included_opengl_panjq_com_opengl_demo_RendererJNI #define _Included_opengl_panjq_com_opengl_demo_RendererJNI #ifdef __cplusplus extern "C" { #endif /** Class: opengl_panjq_com_opengl_demo_RendererJNI* Method: glesInit* Signature: ()V*/ JNIEXPORT void JNICALL Java_opengl_panjq_com_opengl_1demo_RendererJNI_glesInit(JNIEnv *, jobject);/** Class: opengl_panjq_com_opengl_demo_RendererJNI* Method: glesRender* Signature: ()V*/ JNIEXPORT void JNICALL Java_opengl_panjq_com_opengl_1demo_RendererJNI_glesRender(JNIEnv *, jobject);/** Class: opengl_panjq_com_opengl_demo_RendererJNI* Method: glesResize* Signature: (II)V*/ JNIEXPORT void JNICALL Java_opengl_panjq_com_opengl_1demo_RendererJNI_glesResize(JNIEnv *, jobject, jint, jint);JNIEXPORT void JNICALL Java_opengl_panjq_com_opengl_1demo_RendererJNI_readShaderFile(JNIEnv *env, jobject self, jobject assetManager);#ifdef __cplusplus } #endif #endif

RendererJNI.cpp源文件

? ? 這里提供一個方法char* readShaderSrcFile(char *shaderFile, AAssetManager *pAssetManager),用于獲取assets資源文件*.glsl文件:

char *pVertexShader = readShaderSrcFile("shader/vs.glsl", g_pAssetManager);char *pFragmentShader = readShaderSrcFile("shader/fs.glsl", g_pAssetManager);

? ? 當然,也可以寫死在文件中,如:?

char vShaderStr[] ="#version 300 es \n""layout(location = 0) in vec4 vPosition; \n""void main() \n""{ \n"" gl_Position = vPosition; \n""} \n";char fShaderStr[] ="#version 300 es \n""precision mediump float; \n""out vec4 fragColor; \n""void main() \n""{ \n"" fragColor = vec4 ( 1.0, 0.0, 0.0, 1.0 ); \n""} \n";

? ? ?再用LoadShader加載:

vertexShader = LoadShader ( GL_VERTEX_SHADER, vShaderStr );fragmentShader = LoadShader ( GL_FRAGMENT_SHADER, fShaderStr );

? ? 完整的代碼如下?

/* DO NOT EDIT THIS FILE - it is machine generated */ #include <jni.h> #include "RendererJNI.h" #include <stdlib.h> #include <stdio.h> #include <errno.h> #include <GLES3/gl3.h> #include <android/asset_manager_jni.h> #include <android/log.h>#define LOG_TAG "ndk-build" #define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__) #define LOGE(...) __android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__) GLint g_programObject; jint g_width; jint g_height;AAssetManager* g_pAssetManager = NULL; char* readShaderSrcFile(char *shaderFile, AAssetManager *pAssetManager) {AAsset *pAsset = NULL;char *pBuffer = NULL;off_t size = -1;int numByte = -1;if (NULL == pAssetManager){LOGE("pAssetManager is null!");return NULL;}pAsset = AAssetManager_open(pAssetManager, shaderFile, AASSET_MODE_UNKNOWN);//LOGI("after AAssetManager_open");size = AAsset_getLength(pAsset);LOGI("after AAssetManager_open");pBuffer = (char *)malloc(size+1);pBuffer[size] = '\0';numByte = AAsset_read(pAsset, pBuffer, size);LOGI("%s : [%s]", shaderFile, pBuffer);AAsset_close(pAsset);return pBuffer; }GLuint LoadShader ( GLenum type, const char *shaderSrc ) {GLuint shader;GLint compiled;// Create the shader objectshader = glCreateShader ( type );if ( shader == 0 ){return 0;}// Load the shader sourceglShaderSource ( shader, 1, &shaderSrc, NULL );// Compile the shaderglCompileShader ( shader );// Check the compile statusglGetShaderiv ( shader, GL_COMPILE_STATUS, &compiled );if ( !compiled ){GLint infoLen = 0;glGetShaderiv ( shader, GL_INFO_LOG_LENGTH, &infoLen );if ( infoLen > 1 ){char *infoLog = (char *)malloc ( sizeof ( char ) * infoLen );glGetShaderInfoLog ( shader, infoLen, NULL, infoLog );LOGE("Error compiling shader:[%s]", infoLog );free ( infoLog );}glDeleteShader ( shader );return 0;}return shader;}//********************************************************************************* JNIEXPORT void JNICALL Java_opengl_panjq_com_opengl_1demo_RendererJNI_glesInit(JNIEnv *pEnv, jobject obj){char vShaderStr[] ="#version 300 es \n""layout(location = 0) in vec4 vPosition; \n""void main() \n""{ \n"" gl_Position = vPosition; \n""} \n";char fShaderStr[] ="#version 300 es \n""precision mediump float; \n""out vec4 fragColor; \n""void main() \n""{ \n"" fragColor = vec4 ( 1.0, 0.0, 0.0, 1.0 ); \n""} \n";char *pVertexShader = readShaderSrcFile("shader/vs.glsl", g_pAssetManager);char *pFragmentShader = readShaderSrcFile("shader/fs.glsl", g_pAssetManager);GLuint vertexShader;GLuint fragmentShader;GLuint programObject;GLint linked;// Load the vertex/fragment shaders//vertexShader = LoadShader ( GL_VERTEX_SHADER, vShaderStr );//fragmentShader = LoadShader ( GL_FRAGMENT_SHADER, fShaderStr );vertexShader = LoadShader ( GL_VERTEX_SHADER, pVertexShader );fragmentShader = LoadShader ( GL_FRAGMENT_SHADER, pFragmentShader );// Create the program objectprogramObject = glCreateProgram ( );if ( programObject == 0 ){return;}glAttachShader ( programObject, vertexShader );glAttachShader ( programObject, fragmentShader );// Link the programglLinkProgram ( programObject );// Check the link statusglGetProgramiv ( programObject, GL_LINK_STATUS, &linked );if ( !linked ){GLint infoLen = 0;glGetProgramiv ( programObject, GL_INFO_LOG_LENGTH, &infoLen );if ( infoLen > 1 ){char *infoLog = (char *)malloc ( sizeof ( char ) * infoLen );glGetProgramInfoLog ( programObject, infoLen, NULL, infoLog );LOGE("Error linking program:[%s]", infoLog );free ( infoLog );}glDeleteProgram ( programObject );return;}// Store the program objectg_programObject = programObject;glClearColor ( 1.0f, 1.0f, 1.0f, 0.0f ); }/** Class: opengl_panjq_com_opengl_demo_RendererJNI* Method: glesRender* Signature: ()V*/ JNIEXPORT void JNICALL Java_opengl_panjq_com_opengl_1demo_RendererJNI_glesRender(JNIEnv *pEnv, jobject obj){GLfloat vVertices[] = { 0.0f, 0.5f, 0.0f,-0.5f, -0.5f, 0.0f,0.5f, -0.5f, 0.0f};// Set the viewportglViewport ( 0, 0, g_width, g_height );// Clear the color bufferglClear ( GL_COLOR_BUFFER_BIT );// Use the program objectglUseProgram ( g_programObject );// Load the vertex dataglVertexAttribPointer ( 0, 3, GL_FLOAT, GL_FALSE, 0, vVertices );glEnableVertexAttribArray ( 0 );glDrawArrays ( GL_TRIANGLES, 0, 3 );}/** Class: opengl_panjq_com_opengl_demo_RendererJNI* Method: glesResize* Signature: (II)V*/ JNIEXPORT void JNICALL Java_opengl_panjq_com_opengl_1demo_RendererJNI_glesResize(JNIEnv *pEnv, jobject obj, jint width, jint height){g_width = width;g_height = height;}JNIEXPORT void JNICALL Java_opengl_panjq_com_opengl_1demo_RendererJNI_readShaderFile(JNIEnv *env, jobject self, jobject assetManager){if (assetManager && env){//LOGI("before AAssetManager_fromJava");g_pAssetManager = AAssetManager_fromJava(env, assetManager);//LOGI("after AAssetManager_fromJava");if (NULL == g_pAssetManager){LOGE("AAssetManager_fromJava() return null !");}}else{LOGE("assetManager is null !");} }

5、修改CMakeLists.txt文件

? ? OpenGL ES開發(fā)需要把OpenGL的相關(guān)依賴庫導入進來,其方法很簡單,直接在target_link_libraries中添加GLESv2 或者GLESv3都可以,由于需要在NDK使用AAssetManager操作asset資源,因此需要在target_link_libraries中,也把android添加進來,否則會出錯:Error: undefined reference to 'AAssetManager_fromJava'。

# For more information about using CMake with Android Studio, read the # documentation: https://d.android.com/studio/projects/add-native-code.html# Sets the minimum version of CMake required to build the native library.cmake_minimum_required(VERSION 3.4.1)# Creates and names a library, sets it as either STATIC # or SHARED, and provides the relative paths to its source code. # You can define multiple libraries, and CMake builds them for you. # Gradle automatically packages shared libraries with your APK. include_directories(${CMAKE_SOURCE_DIR} src/main/cpp) add_library( # Sets the name of the library.gltest-lib# Sets the library as a shared library.SHARED# Provides a relative path to your source file(s).src/main/cpp/RendererJNI.cpp )add_library( # Sets the name of the library.native-lib# Sets the library as a shared library.SHARED# Provides a relative path to your source file(s).src/main/cpp/native-lib.cpp )# Searches for a specified prebuilt library and stores the path as a # variable. Because CMake includes system libraries in the search path by # default, you only need to specify the name of the public NDK library # you want to add. CMake verifies that the library exists before # completing its build.find_library( # Sets the name of the path variable.log-lib# Specifies the name of the NDK library that# you want CMake to locate.log )# Specifies libraries CMake should link to your target library. You # can link multiple libraries, such as libraries you define in this # build script, prebuilt third-party libraries, or system libraries.target_link_libraries( # Specifies the target library.gltest-libandroid # 錯誤:Error: undefined reference to 'AAssetManager_fromJava'GLESv3 # 把opengl庫文件添加進來,GLESv3# Links the target library to the log library# included in the NDK.${log-lib} ) target_link_libraries( # Specifies the target library.native-lib# Links the target library to the log library# included in the NDK.${log-lib} )

Run,Run,Run,效果圖:

?

總結(jié)

以上是生活随笔為你收集整理的Android使用NDK OpenGL ES3.0绘制一个三角形的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

在线观看日韩免费视频 | 一级一片免费观看 | av黄色免费在线观看 | 亚洲精品一区二区在线观看 | 亚洲h在线播放在线观看h | 黄色在线网站噜噜噜 | 国产91小视频| 国产一区免费观看 | 欧美性生活小视频 | 欧美激情综合五月色丁香 | 国产精品免费观看在线 | 亚洲天堂网在线播放 | 色一色在线 | 国产一区视频导航 | av免费观看在线 | 一区二区三区在线电影 | 亚洲毛片久久 | 91在线最新 | 99精品视频在线看 | 在线视频 国产 日韩 | 日韩精品91偷拍在线观看 | 国产一区网 | 亚洲人xxx | 色综合久久综合中文综合网 | 久久精品中文字幕一区二区三区 | 伊人午夜视频 | 久久久久久久久久久黄色 | 人人澡超碰碰 | 久草在线视频免费资源观看 | 亚洲成年人免费网站 | 蜜桃视频日韩 | 午夜美女福利 | 国产三级在线播放 | 国产精品专区h在线观看 | 亚洲91中文字幕无线码三区 | 激情综合网在线观看 | 国产亚洲成人网 | 免费午夜在线视频 | 特级毛片在线观看 | 香蕉网在线播放 | 欧美久久电影 | 91大神dom调教在线观看 | 91新人在线观看 | 在线观看中文av | 成 人 黄 色 免费播放 | 四虎在线免费视频 | 色九九在线 | 日韩av中文在线 | 狠狠撸电影| 久草视频在线播放 | 亚洲成a人片综合在线 | 夜夜爽天天爽 | 91在线观看欧美日韩 | 欧美福利片在线观看 | 亚洲成av人片在线观看香蕉 | 国产三级午夜理伦三级 | 2021国产在线视频 | 亚洲视频 中文字幕 | 91在线操| 一区二区精品视频 | 色a网| 天天射天天射天天射 | 亚洲国产精品成人va在线观看 | 国产男男gay做爰 | 日韩精品一区二区三区丰满 | 国产欧美精品在线观看 | 色狠狠狠 | 国产亚洲精品日韩在线tv黄 | 国产香蕉97碰碰久久人人 | 中文字幕第一页在线播放 | 亚洲欧美少妇 | 亚洲国产三级在线 | 国产精品久久久久一区二区 | 亚洲欧美怡红院 | 亚洲 欧洲 国产 精品 | 又湿又紧又大又爽a视频国产 | 日韩欧美在线视频一区二区三区 | 91成人精品一区在线播放 | 97操碰| 久久理伦片 | 国产精品日韩欧美一区二区 | 亚洲国产视频a | 免费的黄色av | 中文字幕国内精品 | 欧美日韩国产二区三区 | 在线中文字母电影观看 | 久久亚洲婷婷 | 精品你懂的 | 亚洲欧美在线观看视频 | 久久综合五月天 | 91成人看片 | 国产精品99免费看 | 超碰97免费| 中文字幕一区二区三区四区视频 | 亚洲综合成人专区片 | 在线观看激情av | 啪嗒啪嗒免费观看完整版 | 欧美-第1页-屁屁影院 | 亚洲va综合va国产va中文 | 久久国产精品影视 | 天天操天天摸天天干 | 国产又粗又长又硬免费视频 | 天天看天天干 | 国产不卡在线视频 | 亚洲影院色 | 人人爱夜夜操 | 日韩乱码中文字幕 | 亚洲一区免费在线 | 最新国产精品久久精品 | 亚洲精品视频大全 | 国产亚洲精品久久19p | 国产精品久久久久久久久久久久午夜 | 国产极品尤物在线 | 日韩久久久久久久 | 亚洲欧美日韩国产一区二区 | 手机看片午夜 | 婷婷国产在线 | 91福利国产在线观看 | 国产自制av | 97电影手机| 99精品国产一区二区三区麻豆 | 亚洲专区视频在线观看 | 久爱精品在线 | 国产视频一区在线播放 | 精品视频久久 | 欧美精品一区二区在线观看 | 日韩欧美在线观看一区二区 | 黄色aaa毛片 | 久久精品国产免费看久久精品 | 97超碰资源 | 日本性xxx | 一区二区三区在线播放 | 狠狠色丁香婷婷综合视频 | 香蕉视频亚洲 | 四虎视频| av免费观看高清 | 国产精品自产拍在线观看蜜 | 九色91在线 | 激情五月婷婷网 | 狠狠干狠狠久久 | 久久欧美视频 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 久久久久国产精品一区 | 精品久久网站 | 欧美网址在线观看 | 久久久99久久 | 操久久免费视频 | 国产亚洲精品久 | av电影 一区二区 | 久久兔费看a级 | 国产五月色婷婷六月丁香视频 | av中文字幕免费在线观看 | 亚州av网站大全 | 在线观看视频你懂的 | 最近高清中文在线字幕在线观看 | 久久99精品久久久久久清纯直播 | 国产午夜精品一区二区三区 | 91免费在线视频 | 狠狠的干狠狠的操 | 亚洲欧美国产日韩在线观看 | 国产一区精品在线观看 | www.黄色在线 | 91精品久久久久 | 婷婷丁香激情综合 | 久草精品免费 | 日韩特黄一级欧美毛片特黄 | 激情网色| 国产特级毛片aaaaaaa高清 | 久久成人一区 | 欧美专区日韩专区 | 欧美成人理伦片 | 91精品国产一区二区在线观看 | 综合激情伊人 | 2022国产精品视频 | 久草资源在线观看 | 天天操天天操天天操 | 亚洲一区美女视频在线观看免费 | 中文字幕久久网 | 久久1电影院 | 国产成人精品久久 | 国产精品久久久久久久久久久免费 | 午夜精品麻豆 | 国产高清视频在线免费观看 | 国产亚洲精品成人av久久影院 | 久久草草影视免费网 | 欧美色综合久久 | 色亚洲网| av福利资源 | 久久久久久久电影 | 婷婷色五 | 日韩激情在线视频 | 久久在线视频在线 | 一区 二区电影免费在线观看 | 亚洲 成人 一区 | 手机成人免费视频 | 91在线免费视频观看 | 日韩电影中文字幕在线观看 | 日日夜夜天天操 | 久久激情综合 | 久久久这里有精品 | 亚洲视频 在线观看 | 日韩精品久久久免费观看夜色 | 亚洲精品免费在线播放 | 免费在线观看污网站 | 天天草av | 久久国产午夜精品理论片最新版本 | 玖玖视频精品 | 亚洲aaa毛片| 久久婷婷精品视频 | 久久精品精品电影网 | 国产二级视频 | 午夜精品视频福利 | 天堂av网站| 国产91精品高清一区二区三区 | 中文字幕在线免费播放 | 欧美日韩免费视频 | 日韩成人xxxx| 99精品欧美一区二区三区黑人哦 | 国产精品久久久久久久久久久久久久 | 91精品啪啪| 中文字幕色网站 | 免费视频在线观看网站 | 99re在线视频观看 | 99视频在线免费看 | 日韩有码在线观看视频 | 亚洲国产手机在线 | 国产精品永久在线 | 97热视频| 91视频91色| 国产色在线,com | 在线观看激情av | 精品久久久精品 | 日韩另类在线 | 国产精品毛片久久久久久久久久99999999 | 五月在线视频 | 成人免费在线观看电影 | 欧美一区二区三区在线看 | 日本高清中文字幕有码在线 | 欧美日韩国产网站 | 亚洲一二三在线 | 婷婷中文在线 | 在线免费观看视频一区二区三区 | 精品国产福利在线 | 国产精品久久久久久爽爽爽 | 中文字幕在线播放日韩 | 久久久久久久久久久久久国产精品 | 久久久久美女 | 欧美精品乱码99久久影院 | 国产精品 中文在线 | 五月天激情视频 | 操少妇视频 | 在线a人片免费观看视频 | 夜夜骑日日操 | 久久成电影 | 久久有精品 | 亚洲精品在线免费 | 免费看黄在线观看 | 午夜久操| 狠狠色丁香 | 91福利区一区二区三区 | 日韩丝袜在线观看 | 国产精品一区二区三区在线播放 | 一区二区不卡视频在线观看 | 毛片无卡免费无播放器 | 在线观看av网站 | 99久久国产免费看 | 探花视频在线观看免费版 | 日韩电影在线一区二区 | 欧美特一级 | 日韩美女免费线视频 | 国内精品久久久久久久久 | 国产黄大片在线观看 | 免费网站看v片在线a | 欧美一级电影在线观看 | 黄色福利网站 | 亚洲永久国产精品 | 西西www444| 免费国产在线精品 | 深爱开心激情网 | 9999精品免费视频 | 国产精品一区在线观看你懂的 | 色在线免费视频 | 91av原创 | 日韩女同一区二区三区在线观看 | 午夜成人免费电影 | 中文字幕在线观看视频网站 | 久久久久国 | 欧美精品一区二区蜜臀亚洲 | 狠狠躁日日躁狂躁夜夜躁av | av一区二区三区在线播放 | 天天干天天操av | 亚洲精品白浆高清久久久久久 | av在线进入 | 天堂av在线中文在线 | 久久夜色精品国产欧美乱极品 | 少妇bbw揉bbb欧美 | 亚洲精品视频偷拍 | 国产精品成人免费一区久久羞羞 | 黄色网址中文字幕 | 久久久久久久18 | 91在线播放国产 | 久久不射电影院 | 中文在线免费看视频 | 美女免费电影 | 黄色影院在线播放 | 国产一级做a爱片久久毛片a | 婷婷在线播放 | 精品国产精品久久 | 91久久国产综合精品女同国语 | 成年人看片 | 日韩精品视频网站 | 欧美激情视频免费看 | 国产精品女同一区二区三区久久夜 | 国产一区在线视频播放 | 一区二区三区四区五区在线视频 | 色综合久久久久久久 | 国产色拍拍拍拍在线精品 | 中文字幕网站视频在线 | 久久亚洲电影 | 美女天天操 | 成人免费在线看片 | 久久久久国产精品免费网站 | 丁香九月婷婷 | 久久免费视频这里只有精品 | 日韩色区 | 国产亚洲精品电影 | 国产精品国产三级在线专区 | 欧美狠狠操 | 天天干一干 | 国产一区二区在线视频观看 | 五月天中文在线 | 久久久久免费 | 国内精品久久久久久久久久久 | 日本中文字幕一二区观 | 国内精品久久久久久久久久清纯 | 久久久精品免费观看 | 亚洲午夜精品在线观看 | 99久久久国产精品免费99 | 区一区二区三在线观看 | 狠狠网站 | 在线一级片 | 亚洲美女视频在线观看 | 成人高清av在线 | 操操日| 久久久久人人 | 中文字幕在线观看亚洲 | 极品美女被弄高潮视频网站 | 日本九九视频 | aⅴ精品av导航 | 91高清在线看 | 国产在线播放一区二区 | 久久精彩免费视频 | 国产亚州精品视频 | 成人av网站在线 | 九九欧美视频 | 亚洲午夜精品福利 | 999一区二区三区 | av片在线观看 | 久久男人免费视频 | 欧美日韩国产精品一区二区亚洲 | bbbbb女女女女女bbbbb国产 | 国产精品久久久一区二区三区网站 | 亚洲aⅴ免费在线观看 | 五月天狠狠操 | 丁香视频 | 国产黄大片在线观看 | 国产啊v在线观看 | 欧美福利精品 | 婷婷综合导航 | 视频国产在线 | 91麻豆精品国产自产在线 | 国产精品久久久久一区二区三区共 | 最新动作电影 | 粉嫩av一区二区三区四区 | 午夜精品久久久久久久99婷婷 | 91精品免费在线视频 | 午夜精品一区二区三区四区 | 激情五月婷婷丁香 | 不卡的av在线播放 | 丁香五月缴情综合网 | 成人毛片一区二区三区 | 久久久性 | 久久精品这里都是精品 | 久久综合九色综合97婷婷女人 | 国产最新视频在线观看 | 久久激情综合网 | 美女视频黄,久久 | 欧美性生交大片免网 | 精品国产自在精品国产精野外直播 | 午夜国产福利在线观看 | 永久免费毛片在线观看 | 久久国产亚洲 | 久久久久久美女 | 精品免费视频123区 午夜久久成人 | 在线观看www视频 | 日韩欧美大片免费观看 | 激情综合网五月 | 视频一区视频二区在线观看 | 久久久久欧美精品 | 免费av小说 | 色婷婷精品大在线视频 | 黄色.com| 美腿丝袜一区二区三区 | 午夜精品一区二区三区在线 | 中文字幕资源在线观看 | 免费国产在线精品 | 91秒拍国产福利一区 | 黄www在线观看 | 亚洲91av| 一区二区三区国产精品 | 国产精品一区二区av麻豆 | 久久精品一区二区国产 | 中文字幕123区 | www.午夜| 激情综合五月天 | 色在线最新| 亚洲精品国产综合久久 | 在线日韩 | 国偷自产中文字幕亚洲手机在线 | 91在线观看视频 | 亚洲视频一区二区三区在线观看 | 色爽网站 | 亚洲禁18久人片 | 国产精品免费观看久久 | 精品美女久久久久 | 欧美国产高清 | 日韩久久久久久久久久久久 | 午夜色影院 | 99久热在线精品视频成人一区 | 国产传媒一区在线 | 国产精品一区二区免费在线观看 | 超碰在线最新 | 亚洲黄色免费网站 | 日韩乱色精品一区二区 | 国产一区二区在线免费观看 | 国产免费一区二区三区网站免费 | 国产日韩精品一区二区在线观看播放 | 国内精品视频在线播放 | av资源免费观看 | 精品美女久久久久久免费 | 依人成人综合网 | 激情五月婷婷综合网 | 99视频精品免费观看, | 不卡av在线 | 热久久免费视频精品 | 伊人色**天天综合婷婷 | 久久久久久久久久久免费av | 亚洲精品va | 97韩国电影 | 中文不卡视频 | av在线免费播放 | 久久免费国产电影 | 波多野结衣综合网 | 激情动态 | 五月天激情视频 | 日韩午夜视频在线观看 | 久久久久久久久久久黄色 | 亚洲成人家庭影院 | 亚洲日本韩国一区二区 | 99热最新精品 | 日本精品久久久久中文字幕 | 高清国产午夜精品久久久久久 | 日日夜夜人人精品 | 五月天堂网 | 国产免费成人 | 国产精品video爽爽爽爽 | 日韩激情av在线 | 久久夜色精品国产欧美乱 | 麻豆视频在线免费看 | 亚洲视频大全 | 在线观看国产日韩欧美 | 国产一区视频导航 | 亚洲五月综合 | 中文字幕亚洲高清 | 最新av网站在线观看 | 久久久久女人精品毛片 | 欧美片网站yy| 91少妇精拍在线播放 | 国产日本在线观看 | 99视频在线观看视频 | 日韩黄色免费在线观看 | 黄色www| 国产精品免费视频久久久 | 99久热在线精品视频成人一区 | 婷婷激情站| 久久综合影院 | av中文字幕网 | 国产精品一区二区在线观看 | 国产高清视频免费在线观看 | 人人澡人人澡人人 | 亚洲成人av免费 | 在线观看精品视频 | 深爱激情站 | 黄网站免费久久 | 日韩精品91偷拍在线观看 | 91大神精品视频 | 亚洲三级毛片 | 久久人人爽人人人人片 | a色视频 | 久久综合加勒比 | av在线中文 | 九九精品视频在线看 | 中文字幕在线网址 | 日韩高清无线码2023 | 美女久久久久久久 | 日韩综合视频在线观看 | 国产青春久久久国产毛片 | 99精品欧美一区二区 | 色婷婷国产精品一区在线观看 | 午夜精品电影 | 一区二区三区日韩视频在线观看 | av福利网址导航 | 免费大片黄在线 | www.亚洲黄 | 成人免费看片98欧美 | 黄色成人av在线 | 成人理论电影 | 久草视频99 | 91中文字幕在线观看 | 综合中文字幕 | av在线播放观看 | 国产伦理久久精品久久久久_ | 日本在线免费看 | 亚州精品在线视频 | 天堂v中文 | 国产高清视频在线免费观看 | 国产黄免费看 | 国产精品9999久久久久仙踪林 | wwwwww黄 | 亚洲视频在线观看免费 | av动态图片 | 人人澡人 | 国产在线观看av | 成人性生交大片免费观看网站 | 亚洲精品国产精品久久99热 | 国产97视频在线 | 午夜久久美女 | 日韩欧美精品在线视频 | 久草在线在线视频 | 免费看搞黄视频网站 | 日韩精品久久久久久久电影99爱 | 精品久久免费看 | 日本中文在线播放 | 91视频大全 | 国产一区在线视频观看 | 91精品在线播放 | 91九色成人蝌蚪首页 | 综合色亚洲 | 国产精品久久久久久a | 精品理论片 | 日韩精品电影在线播放 | 久久视奸| 国产v在线播放 | 国产精品免费麻豆入口 | 最近日韩中文字幕中文 | 香蕉视频在线免费看 | 欧美综合干| 九九热在线免费观看 | 日韩在线观看网址 | 久久一精品 | 美女久久久久久久久久久 | 超碰在线94| 欧美综合色| 日本精品视频一区二区 | 久久视奸| 波多野结衣亚洲一区二区 | 成人h在线 | 精品视频免费在线 | 亚洲综合色视频在线观看 | 久久视频在线视频 | 国产精品一二三 | 最新中文字幕在线观看视频 | 中文字幕在线视频精品 | 欧美成人精品欧美一级乱黄 | 日本中文在线观看 | 色之综合网 | 久久精品激情 | 久久经典国产 | 国产成人精品电影久久久 | 天天干天天操av | 五月婷久 | 亚洲精品中文字幕在线观看 | 国产精品美女久久久久aⅴ 干干夜夜 | 91精品久久久久久 | 黄色免费电影网站 | 久久久精品国产一区二区三区 | 高清国产在线一区 | 麻豆91在线看| 亚洲视频h | 在线国产99 | 国产精品成人自产拍在线观看 | 欧美久久久久久久久久久久久 | 久久综合九色欧美综合狠狠 | 绯色av一区 | 国产日韩欧美在线 | 国产一级免费播放 | 91片黄在线观 | 久久久在线观看 | 日韩黄色在线观看 | 欧美有色 | 九九热在线视频 | 91视频免费国产 | 亚洲精品小视频在线观看 | 91禁在线观看 | 国产aa免费视频 | 日韩精品一区二区三区在线视频 | 国产高清在线不卡 | 人人澡人人添人人爽一区二区 | 国产99在线播放 | 成人h动漫在线看 | 色爽网站 | 黄色成人av| 国产综合婷婷 | 嫩嫩影院理论片 | 狠狠干夜夜 | 91成人欧美 | 性色大片在线观看 | 人人爽爽人人 | 欧美一级免费 | free. 性欧美.com | 狠狠狠狠狠狠狠 | 日韩毛片精品 | 一区在线观看视频 | 99热这里是精品 | 国产精品成人aaaaa网站 | 美女网站视频久久 | 亚洲经典中文字幕 | 成人试看120秒| 一区二区三区国产精品 | 亚洲精品男人天堂 | 91成人网在线播放 | 黄色成人在线观看 | 九九影视理伦片 | 美女视频黄在线 | 99精品99 | 91.精品高清在线观看 | www色,com| 91成人在线免费观看 | 97超视频免费观看 | 手机在线小视频 | 99久久激情| 一级国产视频 | 天天做日日爱夜夜爽 | 午夜av在线电影 | 免费毛片aaaaaa | 精品国产乱码 | 国产精品一区在线观看 | 91av视频免费观看 | 久久久久久免费毛片精品 | 欧美一级性生活视频 | 手机av网站 | 日韩免费电影 | 伊人射 | 色先锋av资源中文字幕 | 特黄特色特刺激视频免费播放 | 五月天天天操 | 手机看片国产日韩 | av资源免费观看 | 黄色大片日本 | 免费视频 你懂的 | 国产一区精品在线观看 | 国产精品入口麻豆 | 欧美一级免费黄色片 | 91 中文字幕 | 中文字幕日本特黄aa毛片 | 国产免费不卡 | 在线观看日韩精品视频 | 婷婷国产视频 | 91c网站色版视频 | 欧美最猛性xxxxx免费 | 黄色一级在线观看 | 日日夜夜操av | 蜜臀aⅴ国产精品久久久国产 | 中文在线字幕免 | 一级成人免费视频 | 最近中文字幕国语免费av | 亚洲三级黄色 | 久久精品视频在线观看免费 | 成人h在线| 亚洲精品五月 | 亚洲第一av在线 | 在线 国产 日韩 | 亚洲国产精品久久久久 | 日韩精品在线一区 | 国产精品美女久久久久久 | 亚洲一区免费在线 | 日日噜噜噜噜夜夜爽亚洲精品 | 色噜噜日韩精品一区二区三区视频 | 爱爱av网站 | 国产黄色片免费 | 911国产 | 国产精品久久久久毛片大屁完整版 | 一级全黄毛片 | 免费观看一级视频 | 久久精品视频免费播放 | 日韩va在线观看 | 欧美激情精品久久久 | 欧美在线视频一区二区三区 | 黄色免费大片 | 久久一区二区三区四区 | 日韩精品欧美专区 | 日韩免费一区二区三区 | 国产美女在线精品免费观看 | 久久精品屋 | 天天精品视频 | 97热久久免费频精品99 | av片在线看| 香蕉视频亚洲 | 狠狠色狠狠色终合网 | 欧美日韩中文在线视频 | 狠狠狠狠狠狠干 | av导航福利| 亚洲 在线 | 日韩小视频网站 | 亚洲狠狠婷婷 | 97视频久久久 | 欧美性极品xxxx做受 | 久久人91精品久久久久久不卡 | 成年免费在线视频 | 日韩精品免费在线观看视频 | 三三级黄色片之日韩 | 亚洲精品国产免费 | 天天射天天干天天爽 | 日韩欧美久久 | 久久免费看片 | 久久99精品久久久久久秒播蜜臀 | 欧美日韩国产页 | 免费观看日韩 | 免费视频91 | 国产大片免费久久 | 天天色成人网 | 久久这里只有精品视频首页 | 国产精品嫩草影院99网站 | 丁香综合av | 91在线影视| 91天堂影院 | 97成人在线视频 | 国产精品久久久久影院日本 | 国产亚洲精品久久久久久移动网络 | 国产精品中文字幕在线观看 | 成人一级在线观看 | 日本久久精品 | 黄色一级大片免费看 | 久久久久久国产精品999 | 欧美日韩3p | 伊人久久电影网 | 中日韩免费视频 | 91麻豆精品国产 | 久久久999免费视频 日韩网站在线 | 亚洲日本韩国一区二区 | 中文字幕一区二区三区乱码在线 | 国产五月天婷婷 | 国产精品中文字幕在线观看 | 亚洲人毛片 | 午夜精品视频免费在线观看 | 在线免费观看成人 | 日韩黄在线观看 | 美女免费视频一区 | 91av在线不卡 | 娇妻呻吟一区二区三区 | 麻豆传媒一区二区 | 亚洲欧美精品一区 | 久久毛片网 | 婷婷射五月| 日韩激情一二三区 | 国内精品久久久久久久影视简单 | 激情网站网址 | 久久午夜影院 | 91在线视频在线 | 人人插人人射 | 欧美色精品天天在线观看视频 | 久久精品久久99精品久久 | 欧美激情综合网 | 在线观看免费色 | 国产精品区二区三区日本 | 免费av小说| 免费一级片在线观看 | 免费在线视频一区二区 | 911av视频| 婷婷六月丁 | 国产精品扒开做爽爽的视频 | av资源在线看 | 欧美日韩国产一区二区三区在线观看 | 丁香花在线观看免费完整版视频 | 91在线看片| 五月开心色 | av看片在线 | 国产高清免费观看 | 一色屋精品视频在线观看 | 国产视频日韩视频欧美视频 | 在线免费成人 | 欧美黑人xxxx猛性大交 | 美女网站视频免费都是黄 | 成人久久久久久久久 | 免费亚洲片 | 国产电影黄色av | 亚洲精品在线观看视频 | 日本性动态图 | 在线中文字母电影观看 | 亚洲人成免费网站 | 911久久| 国产一区二三区好的 | 免费在线播放视频 | 亚洲免费在线播放视频 | 97夜夜澡人人爽人人免费 | 毛片视频网址 | av免费在线观 | 欧美日韩中文字幕综合视频 | 日本精油按摩3 | 欧美日韩一级视频 | 91精品国产自产在线观看永久 | www.天天射.com | 日韩精品亚洲专区在线观看 | 最近最新mv字幕免费观看 | 99久久网站 | av导航福利| 国产精品毛片一区视频 | 美女视频永久黄网站免费观看国产 | 国产第一页福利影院 | 天天插狠狠插 | 中国一级片在线播放 | 国产一区欧美日韩 | 精品一区中文字幕 | 天天躁日日躁狠狠躁 | 国产一级在线看 | 日本福利视频在线 | 国产在线精品区 | 国产高清在线观看 | 免费精品国产va自在自线 | 久久人人97超碰com | 国产一区二区中文字幕 | 欧美精品在线一区二区 | 中文字幕在线观看免费高清电影 | 亚洲高清91| 国产一区二区三区视频在线 | 中文av网 | 久久99精品久久久久久清纯直播 | 免费日韩视频 | 国产精品国产三级国产不产一地 | 久久久精品午夜 | 色香网 | 亚洲一区二区精品3399 | 亚洲午夜av久久乱码 | 久久精品99北条麻妃 | 99情趣网视频 | 国产视频久久 | 成人免费中文字幕 | 国产精品免费一区二区三区在线观看 | 天天躁日日 | 婷婷丁香社区 | www.夜夜操 | 免费精品在线视频 | 久久久久久久久久免费视频 | 欧美激情视频一区二区三区 | 综合色久 | 人人爽人人爽人人片av | 国产亚洲精品久久久久久 | 一级片免费在线 | 国产精品久久久久久久久搜平片 | 国产一级片一区二区三区 | 欧美一区二区三区激情视频 | 久久综合狠狠综合 | 欧美久久综合 | 99久久精品费精品 | 国产亚洲免费观看 | 狠狠狠色丁香婷婷综合激情 | 波多野结衣亚洲一区二区 | 中文字幕在线观看一区二区 | 亚洲精品久久久久中文字幕二区 | 天天干天天操天天操 | 99精品视频免费全部在线 | 免费看一级黄色 | 精品国产免费久久 | 日韩国产精品一区 | 国产高清无线码2021 | 五月婷婷色综合 | 人人爽人人片 | 国产精品一区二区你懂的 | 在线小视频国产 | 国产理论片在线观看 | 成人精品一区二区三区中文字幕 | 免费在线黄 | 国产伦精品一区二区三区四区视频 | 国产日韩欧美网站 | 久久免费公开视频 | 亚洲一区网 | 国产乱对白刺激视频在线观看女王 | 黄色在线观看www | 伊人五月天综合 | 91原创在线观看 | 精品一区二区在线免费观看 | 天天做天天射 | 人人干狠狠操 | 久久视频在线观看免费 | 97精品欧美91久久久久久 | 免费成人在线观看视频 | 永久免费在线 | 又爽又黄又无遮挡网站动态图 | 精品xxx | 91九色蝌蚪视频网站 | 日韩欧美有码在线 | 欧美电影在线观看 | 免费观看黄色12片一级视频 | 天天激情 | 久久综合视频网 | 国产成人免费在线 | 丁香婷婷深情五月亚洲 | 亚洲国产网站 | 亚洲免费av片| 日韩理论片在线观看 | 国产精品一区二区麻豆 | 久热av| 美女久久 | 亚洲经典视频 | 欧美特一级片 | 国产精品久久久久一区 | 美国av片在线观看 | 免费观看久久久 | 久久久久久久久电影 | 日韩羞羞 | 欧美成人黄色片 | 五月婷婷国产 | 亚洲精品视频一 | 免费视频成人 | 久久婷婷一区二区三区 | 国产成人亚洲在线电影 | 欧美日韩中文在线观看 | 免费福利视频导航 | 国产婷婷精品av在线 | 最近中文字幕免费观看 | 亚洲黄色一级视频 | 天天操天天操天天操天天 | 97成人精品视频在线观看 | 久久www免费人成看片高清 | 精品一区二区在线播放 | 久久99国产精品自在自在app | 免费看黄的 | 国产对白av | 久久66热这里只有精品 | 91福利社在线观看 | 中文字幕a∨在线乱码免费看 | 8090yy亚洲精品久久 | 91av在线视频播放 | 在线观看国产永久免费视频 | 91精品综合在线观看 | 欧美污在线观看 | 99精品视频免费看 | 中文字幕在线专区 | 天天躁日日躁狠狠躁 | 成人性生交大片免费观看网站 | 国产精品成久久久久三级 | 97人人超 | 在线精品视频在线观看高清 | 国产99在线 | 成人网444ppp| 国产一级二级在线观看 | 青青草国产成人99久久 | 97超碰成人在线 | 国产精品麻豆视频 | 亚洲国产资源 | 很污的网站 | 国产精品免费一区二区三区在线观看 | 伊人久久婷婷 | 亚洲最新av网址 | 久热电影| 中文字幕在线免费97 | 亚洲在线免费视频 | 久草精品免费 | 亚洲色图av | 国产日产av | 中文在线免费一区三区 | 日三级在线 | 国产午夜精品久久久久久久久久 | 香蕉视频在线免费看 | 超碰国产在线观看 | 日韩色综合网 | 亚洲日韩精品欧美一区二区 | 色综合天天综合 | 婷婷5月色| 婷婷九月激情 | a成人在线| 亚洲成a人片在线观看中文 中文字幕在线视频第一页 狠狠色丁香婷婷综合 | 丁香5月婷婷| 91视频麻豆视频 | 久久久99精品免费观看app | 国产玖玖精品视频 | 91在线观看欧美日韩 | 国内少妇自拍视频一区 | av超碰在线 | 91免费在线 | 日韩av电影中文字幕 | 成人精品国产免费网站 | 亚洲精品久久久蜜臀下载官网 | 中文字幕在线视频一区 | 97超碰色偷偷 | 国产午夜三级一区二区三 | 最新日韩精品 | 一级片在线 |