欧美中文字幕一区二区三区亚洲_在线成人直播_国产精品玖玖玖在线资源_久久99最新地址

游戲產業研究網

用Unity 怎么制作3D第一人稱射擊游戲。

第一部分:簡介

這個教程中,我們詳細了解下如何制作一個簡單的第一人稱射擊游戲(FPS)。其中將介紹一些基本的3D游戲編程的概念和一些關于怎樣如游戲程序員般思考的技巧。

前提

這個教程假定你已經熟悉軟件Unity基本操作,掌握了基本的腳本概念。

創建新工程

下載FPS_Tutorial.zip壓縮文件,解壓,在Unity中打開工程文件。

從Unity安裝目錄導入Standard Assets資源包。

導入工程后,你會在Unity工程面板中的“Standard Assets”文件夾下看見這些資源內容。當我們導入新資源時,最好安裝按照資源功能對其分組,例如:火箭、爆炸、音頻等。

設置游戲環境

導入資源后,你會注意到在工程面板中有許多文件夾。

工程面板中,從文件夾“Object/mainLevelMesh”中選擇“mainLevelMesh”。

在參數面板,FBXImporter選項中,你會發現“Generate Colliders”選項,勾選此選項。如果不做這一步,游戲中玩家會穿越地面直接掉下深淵(實際是開啟“碰撞”,產生交互)

把“mainLevelMesh”拖放到場景中。

場景中不需要添加燈光,這關全部場景已經全部應用了燈光貼圖。整個場景對所有燈光進行了燈光貼圖渲染,使用了“預烘焙陰影”。燈光貼圖對顯示效果有很大幫助,特別是復雜燈光環境。

下面可以在場景中添加一個角色了。

添加主要角色

下面在場景中增加一個可以操控的角色物體。Unity針對第一人稱射擊游戲預置了許多內置的控制器,在工程面板Standard Assets->;Prefabs下。

添加第一人稱控制器,點擊工程面板Standard Assets旁邊的小三角,彈出資源列表。找到Prefabs文件夾,點擊小三角形,彈出資源列表。把“First person controller”拖到場景里。

這時場景中會出現一個代表玩家的圓柱體,三個大箭頭代表物體在3D空間中的位置(如果沒有看見箭頭,選擇物體,按“W”鍵),白色面代表物體當前視角。現在FPS控制器處于默認視角位置,通過移動它可以改變游戲視野。把角色移動到游戲環境關卡地面上面的位置。

Main Camera現在已經沒有用處了,可以刪掉了。

點擊“Play”鍵,現在應該可以通過使用鼠標和鍵盤在本關卡地形中四處移動了(光標或者“W,A,S,D”)

現在我們創建了一個非常簡單的FSP,下面我們給角色添加武器。

增加武器

下面我們將給游戲角色一個類似榴彈的物體,可以在游戲中發射。要實現這個功能,需要創建一些腳本語言來在Unity中告知這個武器如何動作。

那么我們具體要實現什么呢?我們要使游戲角色能在攝像機的任意位置開火。但是,我們還是首先來思考一下游戲角色和武器。游戲角色游戲中是第一人稱的視角,所以攝像機的位置與眼睛平行。如果玩家使用武器射擊,武器應該是在角色的手部位置開火而不是眼睛的位置。這樣我們就要增加一個“game object”(游戲物體)來代表榴彈發射器,同時把它放置在游戲角色手持武器時武器所處的位置。這樣就保證了開火的位置沒有問題。

創建武器發射器

首先,創建一個“game object”代表榴彈發射器。游戲物體是3D世界中的任一物體(角色、關卡、聲音),零件就是游戲物體的屬性。因此我們還需要對游戲物體添加零件:

從主菜單欄選擇GameObject>Great Empty,并在層級面板中(Hierarchy)命名為“Launcher”。注意,空物體在場景中是看不見的,只是用它來作放置飛彈發射器。

現在在場景中把視野推近到FPS控制器,便于我們放置武器發射器。

層級面板中選擇FPS控制器,確保鼠標處于場景視圖中,按“F”鍵。使窗口以當前選擇的物體為中心。

層級面板中選擇發射器,主菜單欄選擇Game Object>Move to view。注意發射器如何移動到FPS控制器附近的。然后使用手柄,把發射器移動到大概角色手部的位置。

注意:可以通過設置這個物體的位置來設定游戲角色是左撇子還是右撇子,不需要寫代碼。

使Unity窗口模式是“2by3”模式(window>Layouts>2by3),點擊播放鍵(play)。確保層級面板中點選了發射器,四處移動角色,同時觀察場景窗口。你將發現發射器并沒有隨著角色一起運動(現在再次點擊播放鍵停止運行游戲)

下面來解決這個問題,層級面板中,把發射器拖放到FPS控制器下面的主攝像機上。彈出的對話框點擊“是”。再次運行游戲,觀察場景窗口,發射器已經和角色運動一致了。這樣我們就把發射器與攝像機關聯起來了。

創建飛彈

下面我們來創建在玩家點擊開火鍵時能夠發射出來的飛彈。

我們先用一個簡單物體-球體-代替飛彈。Unity主菜單欄點擊Assets>Creat>;Prefab創建一個預制(Prefab)物體,命名為“Missile”

創建一個球體(GameObject>Create Object>Sphere)

層級面板中,拖放球體到飛彈預制物體上(Missile),這時預制物體圖標會變化。你可以從層級面板中刪除球體。

技巧:游戲運行中產生的任何游戲物體都應該是預制物體(Prefab)。

編寫飛彈發射器腳本

FPS控制器是一個包含了幾個游戲物體和部件的預制物體。FPS控制器本身是一個只能沿Y軸旋轉的圓柱體,因此,如果我們直接把發射器腳本賦予FPS控制器的話,是實現不了上下開火的。所以我們把腳本賦予控制器中的能夠四周轉動的主攝像機。

下面我們來編寫第一個描述發射器行為的JavaScript代碼。

點擊Assets>Greate>JavaScript,創建一個空的JavaScript文檔。一個名為“NewBehaviourScript”資源將會出現在工程面板中,把它更名為“MissileLauncher”

技巧:通過Unity>;Preferences點擊External Script Editor,可以自定義外部腳本編輯器。

工程面板中創建一個“WeaponScripts”文件夾,放置我們所有的武器腳本。把MissileLauncher腳本和飛彈預制物體(Missile Prefab)拖到這個文件中。

我們來看看飛彈發射器的完整JavaScript腳本。

進一步思考一下,我們到底想實現什么效果?我們要檢測玩家是否按了開火鍵,然后產生一枚飛彈,然后把它沿著玩家朝向的方向按照一定的速度發射出去。我們仔細的解剖一下腳本:

var projectile: Rigibody;

var speed=20;

function Update( )

{

這是腳本的開頭部分,定義了一些屬性,開啟了“Update”的功能

if(Input.GetButtonDown(“Fire1”))

首先我們要檢測玩家是否按了開火鍵,“開火1”映射的是鼠標左鍵和當前配置的鍵盤上的按鍵(可以通過主菜單欄的Editor>;Project Settings>Input設定)

{

var instantiatedProjectile: Rigidbody=Instantiate(

projectile, transform.position,transform.rotation);

我們用變量來定義產生的物體。變量的類型是Rigibody(剛體),因為飛彈是具有物理屬性的。

Unity中產生新物體使用的函數是Instantiate,它有三個參數,分別是:產生的物體、產生物體的3D空間位置、物體的旋轉。它還有另一個語法結構,參照API手冊,這里我們只使用這種結構。

第一個參數,projectile,代表我們想創建的物體。那么到底發射什么物體?具體產生的物體是可以手動設定的。實現方法:把Projectile定義為函數的外部變量,這樣就可以在參數面板中顯示出來。發射的物體也可以通過代碼來創建,但如果你想使一個變量可調的話,還是用上面的方法。

第二個參數,transform.position,使產生的物體與發射器的空間位置一致。為什么就是發射器呢?因為如果要使飛彈產生的位置沒有問題,腳本就要關聯給發射器。(transform讀取的transform數據就是被賦予腳本的游戲物體transform數據)

第三個參數transform.rotation,與第二個類似,只是它的值與發射器的旋轉值是一樣的。

代碼的下一部分使飛彈產生運動。為了實現運動,我們要賦予飛彈一個速度,但是在哪個方向上(X,Y,Z)產生速度呢?在場景中,點擊FPS控制器,出現運動箭頭(如果沒有出現,按“W”鍵),其中一個箭頭是紅色、一個是綠色、一個是藍色。紅色代表X軸,綠色代表Y軸,藍色代表Z軸。因為藍色指向的方向,與玩家面朝的方向一致,所以我們要在Z軸上給飛彈一個速度。

(Velocity)速度是instantiatedProjectile的一個屬性。我們怎么知道的呢?因為instantiatedProjectile是剛體的一種,如果我們看看API手冊,我們就會知道速度是剛體的屬性中的一種。同時也看看剛體的其它屬性。要設置速度,我們就必須在各個軸向上設定數值。但還有個小問題。3D空間中的物體一般使用兩種坐標模型:本地坐標系和世界坐標系。在本地坐標系中,物體的軸向只與物體本身有關。在世界坐標系中,軸向是絕對的,例如:向上,對所有物體來講向上的方向都是一樣的。

Rigidbody.Vellocity剛體物體速度必須使用世界坐標系。因此,定義速度時,需要把本地坐標系中的Z軸(朝前的方向)向轉換成世界坐標系中的相應方向。可以用函數transform.TransformDirection,它有三個向量作為自變量。變量speed也應該定義成外部變量,便于后面在編輯器中直接調節數值。

最后,我們要關閉飛彈與游戲角色之間的碰撞。如果不這樣做的話,飛彈產生的時候就可能與角色發生碰撞。可以在API手冊IgnoreCollision下查詢詳細信息。

MissileLauncher.js全部完整代碼如下:

把腳本MissileLauncher賦予FPS控制器中的發射器。在層級面板中點擊發射器,檢查一下參數面板下面是否顯示了MissileLauncher script。

先前創建的飛彈的預制物體還沒有與腳本中的變量projectile創建關聯,我們需要在編輯器中創建一下。變量projectile只能與剛體關聯,因此,首先我們要賦予飛彈一個Rigidbody。

工程面板中點擊飛彈,然后從主菜單欄選擇Components>;Physics>Rigidbody。這樣將會給我們想開火發射的飛彈一個剛體屬性。我們必須確保想在游戲中發射的物體類型與腳本中外部變量要求的物體類型是同一類型的物體。

創建飛彈與腳本中變量projectile的鏈接。首先在層級面板中點擊發射器,然后把飛彈的預制物體從工程面板中拖拽放置在發射器參數面板中MissileLauncher script部分上。

運行游戲的話,你會發現點擊開火鍵可以發出一個受重力影響的小球了。

飛彈爆炸

下面,當飛彈與其他物體發生碰撞時,增加一個爆炸效果。要實現這個效果,我們要編寫一段新腳本賦予飛彈。

創建一個新腳本,命名為Projectile。拖放到工程面板的WeaponScripts文件夾下。

那么我們想要腳本Projectile實現什么樣的效果呢?我們要檢測飛彈是否發生碰撞,然后在碰撞點產生一個爆炸效果。代碼如下:

函數OnCollisionEnter內的程序代碼的作用是計算被賦予腳本的物體是否與其他物體發生碰撞。

在函數OnCollisionEnter中我們主要是要實現在3D空間中飛彈發生碰撞的點產生一個新爆炸。那么在何處了碰撞的呢?函數OnCollisionEnter就有個記錄這個信息的功能。碰撞發生的點的信息儲存在變量ContactPoint中。

這里我們使用函數Instantiate來創建一個爆炸。我們已經知道函數instatiate有三個參數:(1)產生的物體(2)物體的3D空間位置

(3)物體的旋轉。

第一個參數,后面我們將會賦給一個帶粒子系統的游戲物體。同時我們還想通過編輯器來實現這個功能,所以我們把變量設置為外部變量。

第二個參數,爆炸產生的點的位置,就是碰撞發生的位置。

第三個參數,爆炸旋轉的設置,需要解釋一下。我們需要爆炸體的Y軸方向與飛彈和其他物體發生碰撞的那個表面的法線方向一致。這就是說如果是墻面那么爆炸就面向外,如果是地板就朝上。那么實際上我們就是要使爆炸體在本地坐標系的Y軸與飛彈與之碰撞的物體的表面法線方向(世界坐標系)一致。

最后,我們要讓飛彈碰撞后就從游戲中消失,通過函數Destroy()實現,它的參數是gameObject(gameObject代表被賦予這個腳本的物體)。

Projectile.js全部代碼如下:

把腳本賦予飛彈預制物體(Missile prefab)。

下面我們要創建飛彈發生碰撞時所產生爆炸的爆炸效果物體。

首先,創建一個新的預制物體(命名為Explosion)用來存放爆炸效果資源。

標準資源包中(standard asset)有個不錯的爆炸預制物體,粒子系統和燈光都設置好了。把這個爆炸預制物體(在Standard Assets/Particles/explosion中)拖放到層級面板。

調節這個爆炸效果的各個參數直到你覺得滿意,然后把它從層級面板中拖放到工程面板中的爆炸預制物體(Explosion Prefab)中。

現在把爆炸配置給飛彈:

點選飛彈預制物體(Missile Prefab),在參數面板Explosion變量欄,拖放工程面板中的爆炸到上面。

定義爆炸的行為

下面我們要再創建一個腳本來定義爆炸自身的特性。

創建一個新的腳本-Explosion,放在Weapons文件夾中,雙擊腳本進行編輯。

腳本中另一個常用函數稱為Start()。當它配置給的物體是在游戲中產生的時候,函數Start()中的代碼只被執行一次。我們要實現的效果就是在一定時間后,在游戲中刪除爆炸。我們通過函數Destroy()的第二個參數實現,它的作用是定義執行刪除前的時間長度。

變量explosionTime設置成外部變量,方便調節。

新建腳本插入以上代碼時,要刪除函數Update()。

把腳本Explosion賦予給爆炸預制物體。

音效

目前的游戲世界太安靜了,讓我們給爆炸效果增加點音效。

首先,給爆炸預制(Prefab)添加一段音頻。

給爆炸添加音效前,我們首先要添加一個音源部件(Audio Source),在主菜單點擊Component—Audio—Audio Source。你會發現音源部件有一個Audio Clip的屬性。

把“RocketLauncherImpact”音效添加給爆炸預制體的AudioClip外部變量。Unity支持多種音頻格式。

運行游戲,發射飛彈的時候就有聲音了!

添加圖形界面

下面我們來添加GUI,有點像頭部顯示設備(HUD)。我們要做的GUI非常簡單,就一個準星。

添加一個準星:

工程欄中創建一個GUI的文件夾。

創建一個新腳本,命名為“準星”(Crosshair),拖到GUI文件夾。

Crosshair中寫入下面的腳本:

首先我們設定了兩個變量。第一個變量是定義我們將要用可選的方式來選擇圖形紋理。第二個變量定義了一個方形區間,它是圖形紋理在屏幕上的位置范圍。

在start( ) 中函數用來設定圖形紋理在屏幕上的位置。函數中,有四個參數,用來定義方形區域的大小和位置。第一個參數定義了方形區域的左邊框,第二個是底邊框,第三和第四個參數定義了寬和高。

OnGUI( )函數中,使用GUI類程序來讓圖形顯示在屏幕上。DrawTexture( )函數的參數position和crosshairTexture將使準星顯示在屏幕的中央位置。

保存腳本。

創建一個新的空物體,命名為“GUI”。

把腳本“Crosshair”賦予給GUI物體。

點選GUI物體,把在文件夾Texturelaim下的欲使用的圖形拖放到參數面板變量Crosshair Texture中。

運行游戲,屏幕中就會有準星顯示了。

物理特效:

現在,我們想要游戲中的物體效果越真實越好,這是通過添加物理特效實現的。在這一節中,我們將在環境中添加一些物體,他們能被飛彈擊中后有相應的反應。首先有幾個新概念要解釋下。

校正(Update)

先前,我們在函數Update()中寫入代碼,這樣可以在每一幀都執行其中的代碼。其中有個例子是檢測玩家點擊開火鍵。幀速并不是一個固定值,它是根據場景復雜度等因素來定的。各幀之間的時間差會導致不穩定的物體反應。因此,如果想在場景中添加有物理反應的物體(剛體等),代碼就應該寫在函數FixedUpdate()中。Unity中deltaTime的值用來測定渲染兩個連續幀的所用時間。

一般而言,函數Update與FixedUpdate之間的區別如下:

Update()-其中的代碼通常用于角色行為、游戲邏輯等。這個函數中的deltaTime值并不是固定的。

FixedUpdate()-其中的代碼通常用于剛體物體(物理屬性的行為)。函數中deltaTime的值通常是固定的。

FixedUpdate函數被調用的頻率是主菜單中Edit-Project Settings-Time的FixedTimestep屬性確定的,當然也是可以更改的。第二個屬性Time Scale是讀取每秒的幀速和相應的倒數值。

技巧:定義FixedTimestep值時,要注意把握好一個平衡:值越小,物理效果越真實越好,但影響游戲運行速度。應該同時確保游戲運行速度和物理效果的真實性。

最后說一下yield,它相當于暫停當前正在執行的函數。

回到游戲,我們想實現的效果:

使玩家可以發射飛彈(已經實現了)。

如果飛彈與其它剛體物體發生碰撞,檢測其范圍類是否有其它被賦予剛體屬性的物體。

對爆炸沖擊力范圍內的每個剛體物體,均給予一個upwards方向上的力,使它們對飛彈產生反應。

讓我們看看修改后的爆炸腳本(Explosion Javascript)

首先檢測下飛彈落點周圍是否有帶碰撞器的物體。函數Physics.OverlapSphere()有兩個參數:3D位置和半徑值,然后返回一組檢測到的在半徑內的碰撞器的數組。

一旦得到這些數組后,就會對每個對應碰撞器的剛體物體一個在特定方向上的力。

然后我們在飛彈的炸點處,向上的方向增加一個力(ExplosionPower)。但是,爆炸效果是隨著距離而遞減的,作用力大小不能在整個半徑內都一樣。圓周位置的剛體物體受到的作用力應該比炸點中心處小。函數把這種效果也考慮在內的。通過調節外部變量explosionPower和explosionRadius的值,可以較容易的得到想要的效果。

那你何必就在原DEMO上修改.自己設計武器的話,你會建模么?有JAVASCRIPT或者C#基礎么?如果沒有的畫,就先找教程自學,等學到一定呈度,你再找幾個視頻看看,就基本可以拿下.如果急于求成可以直接用虛幻3那個的自帶DEMO可以幫你速成,教程參考陶任賢的基礎教程視頻,適合初學者 .

你好,建議從UDK開始學起,相關的教程在這里。

欧美中文字幕一区二区三区亚洲_在线成人直播_国产精品玖玖玖在线资源_久久99最新地址
久久se精品一区二区| 成人v精品蜜桃久久一区| 国产成人小视频| 欧美主播一区二区三区| 国产亚洲综合在线| 亚洲成av人**亚洲成av**| 国产精品69毛片高清亚洲| 欧美日韩一区二区三区视频| 久久亚洲影视婷婷| 亚洲成av人片| 欧美性一区二区| 国产精品国产三级国产有无不卡 | 亚洲欧美日韩中文播放| 精品一区在线看| 911精品产国品一二三产区 | 国产欧美精品在线观看| 免费一区二区视频| 欧美人妇做爰xxxⅹ性高电影| 亚洲乱码国产乱码精品精的特点| 国产精品一二三四五| 欧美一区二区三区在线看| 一区二区不卡在线播放| 99精品黄色片免费大全| 国产精品嫩草影院com| 国内精品不卡在线| 精品福利在线导航| 免费久久精品视频| 51精品国自产在线| 日本视频免费一区| 欧美日韩大陆一区二区| 亚洲国产成人91porn| 在线免费精品视频| 亚洲综合999| 欧美日韩国产免费| 日韩国产欧美在线播放| 欧美一级免费大片| 日本欧美肥老太交大片| 欧美一区二区福利视频| 麻豆91在线看| 久久夜色精品国产欧美乱极品| 九九在线精品视频| 国产色91在线| 色老汉av一区二区三区| 一区二区三区不卡视频在线观看| 欧洲人成人精品| 天天综合网 天天综合色| 91精品久久久久久久99蜜桃| 日韩av在线发布| 欧美电影精品一区二区| 国产激情一区二区三区| 中文一区在线播放| 在线精品视频免费播放| 午夜不卡av免费| 日韩精品中文字幕在线不卡尤物| 国内精品国产三级国产a久久| 日本一区二区三区dvd视频在线| 色综合天天做天天爱| 香蕉成人啪国产精品视频综合网| 精品国产一区二区三区久久影院 | 一区二区三区国产| 欧美日韩国产综合一区二区三区| 热久久久久久久| 久久日韩精品一区二区五区| av激情亚洲男人天堂| 亚洲网友自拍偷拍| 久久久久久久久99精品| 在线精品视频免费观看| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲丝袜自拍清纯另类| 制服丝袜一区二区三区| 成人国产电影网| 婷婷六月综合网| 亚洲国产精品成人综合 | 青青国产91久久久久久| 中文一区在线播放| 欧美精品vⅰdeose4hd| 国产91精品免费| 天天影视网天天综合色在线播放| 国产亚洲欧美在线| 欧美日韩在线综合| 国产高清视频一区| 日本欧美一区二区三区| 1024成人网| 精品久久人人做人人爽| 欧美色偷偷大香| av不卡一区二区三区| 国产在线播放一区| 日韩高清电影一区| 一区二区激情小说| 国产精品五月天| 精品国产91九色蝌蚪| 欧美日韩久久久久久| 色综合久久88色综合天天免费| 久久99国产精品久久| 亚洲国产精品久久久久秋霞影院| 国产欧美日产一区| 久久久av毛片精品| 日韩欧美国产三级电影视频| 欧美日韩国产美| 欧美午夜电影网| 日本丰满少妇一区二区三区| av高清不卡在线| www.欧美精品一二区| 粉嫩久久99精品久久久久久夜| 九九精品视频在线看| 奇米888四色在线精品| 亚洲成人资源在线| 亚洲福利视频一区二区| 亚洲精选免费视频| 亚洲欧美色综合| 亚洲免费在线电影| 玉足女爽爽91| 亚洲色欲色欲www| 国产精品久久久久国产精品日日| 国产欧美一区二区三区在线看蜜臀| 亚洲精品一区在线观看| 日韩美女视频在线| 久久日一线二线三线suv| 久久久久久久久久久久久女国产乱| 精品精品国产高清a毛片牛牛| 精品国产不卡一区二区三区| 欧美精品一区二区三| 久久综合九色综合欧美亚洲| 久久视频一区二区| 国产精品天天看| 亚洲免费伊人电影| 亚洲福利一二三区| 久久99久久久欧美国产| 国产尤物一区二区在线| 福利电影一区二区三区| 成人av影视在线观看| 色综合天天综合在线视频| 在线视频中文字幕一区二区| 欧美日本在线观看| 精品久久久久99| 国产精品亲子伦对白| 一区二区三区视频在线看| 亚洲午夜久久久久久久久电影网| 视频在线观看91| 国产精品性做久久久久久| 成人av小说网| 7777精品伊人久久久大香线蕉 | 亚洲欧美区自拍先锋| 亚洲国产成人va在线观看天堂| 日本欧美肥老太交大片| 粉嫩久久99精品久久久久久夜| 91九色02白丝porn| 日韩欧美在线影院| 亚洲欧洲性图库| 日韩极品在线观看| av成人动漫在线观看| 欧美精品久久99久久在免费线| 国产欧美日韩在线看| 亚洲一区二区在线播放相泽| 国产一区在线精品| 欧美日韩久久一区二区| 欧美经典三级视频一区二区三区| 亚洲图片有声小说| 国产91精品欧美| 91精品国产色综合久久不卡电影 | 成人性生交大片| 欧美日韩亚洲综合一区| 亚洲国产精品ⅴa在线观看| 日韩精品1区2区3区| 91网站在线播放| 精品999在线播放| 亚洲超碰精品一区二区| av亚洲精华国产精华| 精品久久久久久无| 国产美女久久久久| 在线日韩一区二区| 中文字幕精品—区二区四季| 奇米888四色在线精品| 欧美丝袜丝交足nylons图片| 久久精品一区二区三区不卡牛牛| 亚洲成人av一区二区| 成人av网站在线观看免费| 欧美v日韩v国产v| 亚洲电影视频在线| 色婷婷精品大视频在线蜜桃视频 | 国产成人av福利| 欧美电视剧在线观看完整版| 亚洲国产一区二区三区青草影视| 国产成人av电影在线播放| 亚洲精品一区二区三区影院| 亚洲va韩国va欧美va精品 | 91亚洲精品一区二区乱码| 久久无码av三级| 久久国产欧美日韩精品| 91麻豆精品91久久久久同性| 亚洲成av人在线观看| 欧美在线你懂得| 夜夜操天天操亚洲| 欧洲国产伦久久久久久久| 亚洲天堂精品在线观看| av一区二区不卡| 亚洲精品中文字幕乱码三区 | 日韩欧美国产一区在线观看| 日韩和欧美一区二区三区| 欧美绝品在线观看成人午夜影视|