亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? d3dapp.cs

?? Particle System Test Application on C#
?? CS
?? 第 1 頁 / 共 4 頁
字號:
//-----------------------------------------------------------------------------
// File: D3DApp.cs
//
// Desc: Application class for the Direct3D samples framework library.
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
using System;
using Microsoft.DirectX;
using Microsoft.DirectX.Direct3D;
using Direct3D = Microsoft.DirectX.Direct3D;

/// <summary>
/// The base class for all the graphics (D3D) samples, it derives from windows forms
/// </summary>
public class GraphicsSample : System.Windows.Forms.Form
{
    #region Menu Information
    // The menu items that *all* samples will need
    protected System.Windows.Forms.MainMenu mnuMain;
    protected System.Windows.Forms.MenuItem mnuFile;
    private System.Windows.Forms.MenuItem mnuGo;
    private System.Windows.Forms.MenuItem mnuSingle;
    private System.Windows.Forms.MenuItem mnuBreak1;
    private System.Windows.Forms.MenuItem mnuChange;
    private System.Windows.Forms.MenuItem mnuBreak2;
    protected System.Windows.Forms.MenuItem mnuExit;
    #endregion

    // The window we will render too
    private System.Windows.Forms.Control ourRenderTarget;
    // Should we use the default windows
    protected bool isUsingMenus = true;

    // We need to keep track of our enumeration settings
    protected D3DEnumeration enumerationSettings = new D3DEnumeration();
    protected D3DSettings graphicsSettings = new D3DSettings();
    private bool isMaximized = false; // Are we maximized?
    private bool isHandlingSizeChanges = true; // Are we handling size changes?
    private bool isClosing = false; // Are we closing?
    private bool isChangingFormStyle = false; // Are we changing the forms style?
    private bool isWindowActive = true; // Are we waiting for got focus?

    private float lastTime = 0.0f; // The last time
    private int frames = 0; // Number of frames since our last update
    private int appPausedCount = 0; // How many times has the app been paused (and when can it resume)?

    // Internal variables for the state of the app
    protected bool windowed;
    protected bool active;
    protected bool ready;
    protected bool hasFocus;
    protected bool isMultiThreaded = false;

    // Internal variables used for timing
    protected bool frameMoving;
    protected bool singleStep;
    // Main objects used for creating and rendering the 3D scene
    protected PresentParameters presentParams = new PresentParameters(); // Parameters for CreateDevice/Reset
    protected Device device; // The rendering device
    protected RenderStates renderState;
    protected SamplerStates sampleState;
    protected TextureStates textureStates;
    private Caps graphicsCaps;           // Caps for the device
    protected Caps Caps { get { return graphicsCaps; } }
    private CreateFlags behavior;     // Indicate sw or hw vertex processing
    protected BehaviorFlags BehaviorFlags { get { return new BehaviorFlags(behavior); } }
    protected System.Windows.Forms.Control RenderTarget { get { return ourRenderTarget; } set { ourRenderTarget = value; } }

    // Variables for timing
    protected float appTime;             // Current time in seconds
    protected float elapsedTime;      // Time elapsed since last frame
    protected float framePerSecond;              // Instanteous frame rate
    protected string deviceStats;// String to hold D3D device stats
    protected string frameStats; // String to hold frame stats

    private bool deviceLost = false;

    // Overridable variables for the app
    private int minDepthBits;    // Minimum number of bits needed in depth buffer
    protected int MinDepthBits { get { return minDepthBits; } set { minDepthBits = value;  enumerationSettings.AppMinDepthBits = value;} }
    private int minStencilBits;  // Minimum number of bits needed in stencil buffer
    protected int MinStencilBits { get { return minStencilBits; } set { minStencilBits = value;  enumerationSettings.AppMinStencilBits = value;} }
    protected bool showCursorWhenFullscreen; // Whether to show cursor when fullscreen
    protected bool clipCursorWhenFullscreen; // Whether to limit cursor pos when fullscreen
    protected bool startFullscreen; // Whether to start up the app in fullscreen mode

    private System.Drawing.Size storedSize;
	private System.ComponentModel.IContainer components;
	private System.Windows.Forms.Timer updateTimer;
    private System.Drawing.Point storedLocation;

    // Overridable functions for the 3D scene created by the app
    protected virtual bool ConfirmDevice(Caps caps, VertexProcessingType vertexProcessingType, 
		Format adapterFormat, Format backBufferFormat) { return true; }
    protected virtual void OneTimeSceneInitialization() { /* Do Nothing */ }
    protected virtual void InitializeDeviceObjects() { /* Do Nothing */ }
    protected virtual void RestoreDeviceObjects(System.Object sender, System.EventArgs e) { /* Do Nothing */ }
    protected virtual void FrameMove() { /* Do Nothing */ }
    protected virtual void Render() { /* Do Nothing */ }
    protected virtual void InvalidateDeviceObjects(System.Object sender, System.EventArgs e) { /* Do Nothing */ }
    protected virtual void DeleteDeviceObjects(System.Object sender, System.EventArgs e) { /* Do Nothing */ }




    /// <summary>
    /// Constructor
    /// </summary>
    public GraphicsSample()
    {
        device = null;
        active = false;
        ready = false;
        hasFocus = false;
        behavior = 0;

        ourRenderTarget = this;
        frameMoving = true;
        singleStep = false;
        framePerSecond = 0.0f;
        deviceStats = null;
        frameStats  = null;

        this.Text = "D3D9 Sample";
        this.ClientSize = new System.Drawing.Size(400,300);
        this.KeyPreview = true;

        minDepthBits = 16;
        minStencilBits = 0;
        showCursorWhenFullscreen = false;
        startFullscreen = false;

        // When clipCursorWhenFullscreen is TRUE, the cursor is limited to
        // the device window when the app goes fullscreen.  This prevents users
        // from accidentally clicking outside the app window on a multimon system.
        // This flag is turned off by default for debug builds, since it makes 
        // multimon debugging difficult.
        #if (DEBUG)
            clipCursorWhenFullscreen = false;
        #else
            clipCursorWhenFullscreen = true;
        #endif
        InitializeComponent();
    }




    /// <summary>
    /// Picks the best graphics device, and initializes it
    /// </summary>
    /// <returns>true if a good device was found, false otherwise</returns>
    public bool CreateGraphicsSample()
    {
        enumerationSettings.ConfirmDeviceCallback = new D3DEnumeration.ConfirmDeviceCallbackType(this.ConfirmDevice);
        enumerationSettings.Enumerate();

        if (ourRenderTarget.Cursor == null)
        {
            // Set up a default cursor
            ourRenderTarget.Cursor = System.Windows.Forms.Cursors.Default;
        }
        // if our render target is the main window and we haven't said 
        // ignore the menus, add our menu
        if ((ourRenderTarget == this) && (isUsingMenus))
            this.Menu = mnuMain;

        try
        {
            ChooseInitialSettings();

            // Initialize the application timer
            DXUtil.Timer(DirectXTimer.Start);
            // Initialize the app's custom scene stuff
            OneTimeSceneInitialization();
            // Initialize the 3D environment for the app
            InitializeEnvironment();
        }
        catch (SampleException d3de)
        {
            HandleSampleException(d3de, ApplicationMessage.ApplicationMustExit);
            return false;
        }
        catch 
        {
            HandleSampleException(new SampleException(), ApplicationMessage.ApplicationMustExit);
            return false;
        }

        // The app is ready to go
        ready = true;

        return true;
    }




    /// <summary>
    /// Sets up graphicsSettings with best available windowed mode, subject to 
    /// the doesRequireHardware and doesRequireReference constraints.  
    /// </summary>
    /// <param name="doesRequireHardware">Does the device require hardware support</param>
    /// <param name="doesRequireReference">Does the device require the ref device</param>
    /// <returns>true if a mode is found, false otherwise</returns>
    public bool FindBestWindowedMode(bool doesRequireHardware, bool doesRequireReference)
    {
        // Get display mode of primary adapter (which is assumed to be where the window 
        // will appear)
        DisplayMode primaryDesktopDisplayMode = Manager.Adapters[0].CurrentDisplayMode;

        GraphicsAdapterInfo bestAdapterInfo = null;
        GraphicsDeviceInfo bestDeviceInfo = null;
        DeviceCombo bestDeviceCombo = null;

        foreach (GraphicsAdapterInfo adapterInfo in enumerationSettings.AdapterInfoList)
        {
            foreach (GraphicsDeviceInfo deviceInfo in adapterInfo.DeviceInfoList)
            {
                if (doesRequireHardware && deviceInfo.DevType != DeviceType.Hardware)
                    continue;
                if (doesRequireReference && deviceInfo.DevType != DeviceType.Reference)
                    continue;

                foreach (DeviceCombo deviceCombo in deviceInfo.DeviceComboList)
                {
                    bool adapterMatchesBackBuffer = (deviceCombo.BackBufferFormat == deviceCombo.AdapterFormat);
                    if (!deviceCombo.IsWindowed)
                        continue;
                    if (deviceCombo.AdapterFormat != primaryDesktopDisplayMode.Format)
                        continue;

                    // If we haven't found a compatible DeviceCombo yet, or if this set
                    // is better (because it's a HAL, and/or because formats match better),
                    // save it
                    if (bestDeviceCombo == null || 
                        bestDeviceCombo.DevType != DeviceType.Hardware && deviceInfo.DevType == DeviceType.Hardware ||
                        deviceCombo.DevType == DeviceType.Hardware && adapterMatchesBackBuffer)
                    {
                        bestAdapterInfo = adapterInfo;
                        bestDeviceInfo = deviceInfo;
                        bestDeviceCombo = deviceCombo;
                        if (deviceInfo.DevType == DeviceType.Hardware && adapterMatchesBackBuffer)
                        {
                            // This windowed device combo looks great -- take it
                            goto EndWindowedDeviceComboSearch;
                        }
                        // Otherwise keep looking for a better windowed device combo
                    }
                }
            }
        }

    EndWindowedDeviceComboSearch:
        if (bestDeviceCombo == null)
            return false;

        graphicsSettings.WindowedAdapterInfo = bestAdapterInfo;
        graphicsSettings.WindowedDeviceInfo = bestDeviceInfo;
        graphicsSettings.WindowedDeviceCombo = bestDeviceCombo;
        graphicsSettings.IsWindowed = true;
        graphicsSettings.WindowedDisplayMode = primaryDesktopDisplayMode;
        graphicsSettings.WindowedWidth = ourRenderTarget.ClientRectangle.Right - ourRenderTarget.ClientRectangle.Left;
        graphicsSettings.WindowedHeight = ourRenderTarget.ClientRectangle.Bottom - ourRenderTarget.ClientRectangle.Top;
        if (enumerationSettings.AppUsesDepthBuffer)
            graphicsSettings.WindowedDepthStencilBufferFormat = (DepthFormat)bestDeviceCombo.DepthStencilFormatList[0];
        graphicsSettings.WindowedMultisampleType = (MultiSampleType)bestDeviceCombo.MultiSampleTypeList[0];
        graphicsSettings.WindowedMultisampleQuality = 0;
        graphicsSettings.WindowedVertexProcessingType = (VertexProcessingType)bestDeviceCombo.VertexProcessingTypeList[0];
        graphicsSettings.WindowedPresentInterval = (PresentInterval)bestDeviceCombo.PresentIntervalList[0];

        return true;
    }




    /// <summary>
    /// Sets up graphicsSettings with best available fullscreen mode, subject to 
    /// the doesRequireHardware and doesRequireReference constraints.  
    /// </summary>
    /// <param name="doesRequireHardware">Does the device require hardware support</param>
    /// <param name="doesRequireReference">Does the device require the ref device</param>
    /// <returns>true if a mode is found, false otherwise</returns>
    public bool FindBestFullscreenMode(bool doesRequireHardware, bool doesRequireReference)
    {
        // For fullscreen, default to first HAL DeviceCombo that supports the current desktop 
        // display mode, or any display mode if HAL is not compatible with the desktop mode, or 
        // non-HAL if no HAL is available
        DisplayMode adapterDesktopDisplayMode = new DisplayMode();
        DisplayMode bestAdapterDesktopDisplayMode = new DisplayMode();
        DisplayMode bestDisplayMode = new DisplayMode();
        bestAdapterDesktopDisplayMode.Width = 0;
        bestAdapterDesktopDisplayMode.Height = 0;
        bestAdapterDesktopDisplayMode.Format = 0;
        bestAdapterDesktopDisplayMode.RefreshRate = 0;

        GraphicsAdapterInfo bestAdapterInfo = null;
        GraphicsDeviceInfo bestDeviceInfo = null;
        DeviceCombo bestDeviceCombo = null;

        foreach (GraphicsAdapterInfo adapterInfo in enumerationSettings.AdapterInfoList)
        {
            adapterDesktopDisplayMode = Manager.Adapters[adapterInfo.AdapterOrdinal].CurrentDisplayMode;
            foreach (GraphicsDeviceInfo deviceInfo in adapterInfo.DeviceInfoList)
            {
                if (doesRequireHardware && deviceInfo.DevType != DeviceType.Hardware)
                    continue;
                if (doesRequireReference && deviceInfo.DevType != DeviceType.Reference)
                    continue;

                foreach (DeviceCombo deviceCombo in deviceInfo.DeviceComboList)
                {
                    bool adapterMatchesBackBuffer = (deviceCombo.BackBufferFormat == deviceCombo.AdapterFormat);
                    bool adapterMatchesDesktop = (deviceCombo.AdapterFormat == adapterDesktopDisplayMode.Format);
                    if (deviceCombo.IsWindowed)
                        continue;

                    // If we haven't found a compatible set yet, or if this set
                    // is better (because it's a HAL, and/or because formats match better),
                    // save it
                    if (bestDeviceCombo == null ||
                        bestDeviceCombo.DevType != DeviceType.Hardware && deviceInfo.DevType == DeviceType.Hardware ||
                        bestDeviceCombo.DevType == DeviceType.Hardware && bestDeviceCombo.AdapterFormat != adapterDesktopDisplayMode.Format && adapterMatchesDesktop ||
                        bestDeviceCombo.DevType == DeviceType.Hardware && adapterMatchesDesktop && adapterMatchesBackBuffer)
                    {
                        bestAdapterDesktopDisplayMode = adapterDesktopDisplayMode;
                        bestAdapterInfo = adapterInfo;
                        bestDeviceInfo = deviceInfo;
                        bestDeviceCombo = deviceCombo;
                        if (deviceInfo.DevType == DeviceType.Hardware && adapterMatchesDesktop && adapterMatchesBackBuffer)
                        {
                            // This fullscreen device combo looks great -- take it
                            goto EndFullscreenDeviceComboSearch;
                        }
                        // Otherwise keep looking for a better fullscreen device combo
                    }
                }
            }
        }

EndFullscreenDeviceComboSearch:
        if (bestDeviceCombo == null)
            return false;

        // Need to find a display mode on the best adapter that uses pBestDeviceCombo->AdapterFormat
        // and is as close to bestAdapterDesktopDisplayMode's res as possible
        bestDisplayMode.Width = 0;
        bestDisplayMode.Height = 0;
        bestDisplayMode.Format = 0;
        bestDisplayMode.RefreshRate = 0;
        foreach (DisplayMode displayMode in bestAdapterInfo.DisplayModeList)
        {
            if (displayMode.Format != bestDeviceCombo.AdapterFormat)
                continue;
            if (displayMode.Width == bestAdapterDesktopDisplayMode.Width &&
                displayMode.Height == bestAdapterDesktopDisplayMode.Height && 
                displayMode.RefreshRate == bestAdapterDesktopDisplayMode.RefreshRate)
            {
                // found a perfect match, so stop
                bestDisplayMode = displayMode;
                break;
            }
            else if (displayMode.Width == bestAdapterDesktopDisplayMode.Width &&
                displayMode.Height == bestAdapterDesktopDisplayMode.Height && 
                displayMode.RefreshRate > bestDisplayMode.RefreshRate)
            {
                // refresh rate doesn't match, but width/height match, so keep this
                // and keep looking
                bestDisplayMode = displayMode;
            }
            else if (bestDisplayMode.Width == bestAdapterDesktopDisplayMode.Width)
            {
                // width matches, so keep this and keep looking
                bestDisplayMode = displayMode;
            }
            else if (bestDisplayMode.Width == 0)
            {
                // we don't have anything better yet, so keep this and keep looking
                bestDisplayMode = displayMode;
            }
        }

        graphicsSettings.FullscreenAdapterInfo = bestAdapterInfo;
        graphicsSettings.FullscreenDeviceInfo = bestDeviceInfo;
        graphicsSettings.FullscreenDeviceCombo = bestDeviceCombo;
        graphicsSettings.IsWindowed = false;
        graphicsSettings.FullscreenDisplayMode = bestDisplayMode;
        if (enumerationSettings.AppUsesDepthBuffer)
            graphicsSettings.FullscreenDepthStencilBufferFormat = (DepthFormat)bestDeviceCombo.DepthStencilFormatList[0];
        graphicsSettings.FullscreenMultisampleType = (MultiSampleType)bestDeviceCombo.MultiSampleTypeList[0];
        graphicsSettings.FullscreenMultisampleQuality = 0;
        graphicsSettings.FullscreenVertexProcessingType = (VertexProcessingType)bestDeviceCombo.VertexProcessingTypeList[0];
        graphicsSettings.FullscreenPresentInterval = PresentInterval.Default;

        return true;
    }


 

    /// <summary>
    /// Choose the initial settings for the application
    /// </summary>
    /// <returns>true if the settings were initialized</returns>
    public bool ChooseInitialSettings()
    {
        bool foundFullscreenMode = FindBestFullscreenMode(false, false);
        bool foundWindowedMode = FindBestWindowedMode(false, false);
        if (startFullscreen && foundFullscreenMode)
            graphicsSettings.IsWindowed = false;

        if (!foundFullscreenMode && !foundWindowedMode)
            throw new NoCompatibleDevicesException();

        return (foundFullscreenMode || foundWindowedMode);
    }




    /// <summary>
    /// Build presentation parameters from the current settings
    /// </summary>
    public void BuildPresentParamsFromSettings()
    {
        presentParams.Windowed = graphicsSettings.IsWindowed;
        presentParams.BackBufferCount = 1;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产在线精品免费| 欧美精品一区二区高清在线观看| 日本一区二区成人| 国产成人啪午夜精品网站男同| 精品国产伦理网| 国产成a人无v码亚洲福利| 国产亚洲欧洲一区高清在线观看| 国产精品77777| 国产精品超碰97尤物18| 91美女在线视频| 亚洲大片精品永久免费| 91精品黄色片免费大全| 韩日av一区二区| 国产精品嫩草影院com| 色综合色综合色综合色综合色综合 | 亚洲h精品动漫在线观看| 欧美日韩精品专区| 美腿丝袜亚洲综合| 国产色一区二区| 在线国产亚洲欧美| 日本va欧美va瓶| 中文字幕欧美激情| 欧美日韩一级片在线观看| 蜜臀av一区二区在线免费观看 | 国产午夜精品美女毛片视频| av在线不卡电影| 亚洲成人av一区二区三区| 欧美大片一区二区三区| 99视频一区二区| 蜜臀久久99精品久久久久久9| 中文字幕久久午夜不卡| 欧美老人xxxx18| 成人美女视频在线看| 亚欧色一区w666天堂| 欧美激情一区三区| 欧美美女一区二区在线观看| 国产91富婆露脸刺激对白| 亚洲永久精品国产| 欧美激情中文字幕| 制服丝袜亚洲精品中文字幕| 99这里只有精品| 精品制服美女久久| 亚洲综合一区二区| 国产日韩欧美精品电影三级在线| 欧美日韩国产片| 99久久99久久精品免费看蜜桃| 蜜臀久久久久久久| 亚洲黄色免费网站| 国产欧美精品一区| 91精品国产日韩91久久久久久| 99久久精品免费| 国产一区二区导航在线播放| 香蕉影视欧美成人| 亚洲美女偷拍久久| 中文字幕国产精品一区二区| 精品国产一区二区国模嫣然| 欧美日韩国产片| 在线亚洲高清视频| 99re热视频精品| 国产精品原创巨作av| 男女性色大片免费观看一区二区| 一区二区在线看| 亚洲欧洲三级电影| 国产日韩欧美一区二区三区乱码| 欧美一区二区三区爱爱| 欧美色男人天堂| 色成年激情久久综合| 99久久精品免费观看| 成人免费福利片| 高清在线成人网| 成人综合婷婷国产精品久久免费| 美女网站视频久久| 亚洲男人都懂的| 中文无字幕一区二区三区| 成人精品免费看| 欧美国产成人精品| 久久新电视剧免费观看| 日韩欧美一级在线播放| 欧美一区二区久久| 日韩一区中文字幕| 国产精品久久久久久久久免费丝袜| 久久久久亚洲综合| 久久久久久久久久电影| 国产亚洲欧美日韩日本| 国产午夜精品理论片a级大结局 | 欧美视频三区在线播放| 91国偷自产一区二区三区成为亚洲经典 | 国产综合色视频| 国产美女精品在线| 国产精品白丝jk白祙喷水网站| 国精品**一区二区三区在线蜜桃| 国产精一品亚洲二区在线视频| 狠狠色狠狠色综合系列| 国产成人综合自拍| 91网址在线看| 8x8x8国产精品| 欧美成人国产一区二区| 久久精品一区二区三区四区| 国产精品三级视频| 亚洲美女视频在线| 天天综合色天天综合色h| 日韩高清在线观看| 国内精品视频666| 99riav久久精品riav| 欧美日韩一卡二卡三卡| 精品精品国产高清a毛片牛牛| 精品成a人在线观看| 国产精品久久99| 日日夜夜精品视频免费| 欧美三级中文字幕在线观看| 欧美一区二区网站| 国产日韩欧美精品电影三级在线| 亚洲免费av高清| 麻豆久久久久久久| 波多野结衣在线aⅴ中文字幕不卡| 在线视频欧美精品| 欧美精品一区二区三区蜜桃视频| 亚洲欧洲日韩在线| 免费看欧美女人艹b| 国产成人h网站| 欧美日韩成人综合天天影院 | 国产a视频精品免费观看| 91福利视频网站| www亚洲一区| 一二三四区精品视频| 黑人巨大精品欧美一区| 欧美在线免费播放| 精品国产三级电影在线观看| 亚洲精品中文字幕乱码三区| 久久草av在线| 欧美主播一区二区三区| 国产午夜亚洲精品理论片色戒 | 亚洲成人自拍一区| 国产精品一二一区| 欧美裸体一区二区三区| 亚洲同性同志一二三专区| 久久不见久久见中文字幕免费| 91小视频免费观看| 精品少妇一区二区三区日产乱码| 亚洲欧美偷拍三级| 国产精品亚洲一区二区三区妖精| 欧美亚洲丝袜传媒另类| 国产精品三级av| 久久国产精品第一页| 欧美日本一道本| 成人免费在线观看入口| 国产乱码精品一区二区三区五月婷| 欧美日韩在线一区二区| 亚洲日本一区二区三区| 国产精品正在播放| 精品国产乱码91久久久久久网站| 午夜一区二区三区视频| 色一情一伦一子一伦一区| 欧美国产一区视频在线观看| 久久精品国产99久久6| 欧美日韩高清在线| 亚洲在线成人精品| 91网站最新网址| 国产精品国产自产拍在线| 国产精品99久久久久久宅男| 精品欧美乱码久久久久久| 蜜桃久久久久久久| 欧美一区二区三区在线视频 | 欧美一级二级三级蜜桃| 图片区日韩欧美亚洲| 在线观看国产日韩| 成人小视频免费在线观看| 精品国产区一区| 久久国产精品99精品国产| 日韩精品一区二区三区在线| 麻豆91在线看| 精品国产一区二区三区不卡| 国内精品久久久久影院薰衣草| 久久综合狠狠综合久久综合88| 国产乱子伦一区二区三区国色天香 | 亚洲美女屁股眼交3| 91免费观看视频| 亚洲免费观看在线观看| 欧美日韩精品免费| 日韩精品乱码av一区二区| 欧美一级黄色大片| 精品夜夜嗨av一区二区三区| 久久久精品国产免费观看同学| 国产91精品免费| 亚洲欧洲另类国产综合| 色婷婷综合久久久| 亚洲bt欧美bt精品| 日韩一区二区在线看片| 激情六月婷婷久久| 中文字幕乱码亚洲精品一区| 色哦色哦哦色天天综合| 亚洲第一激情av| 精品乱人伦小说| 成+人+亚洲+综合天堂| 亚洲资源中文字幕| 日韩欧美国产午夜精品| 国产69精品久久99不卡| 一区二区日韩av| 精品国内二区三区| 91年精品国产|