青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

天行健 君子當自強而不息

【ZT】3D中的OBJ文件格式詳解

OBJ文件是Alias|Wavefront公司為它的一套基于工作站的3D建模和動畫軟件"Advanced Visualizer"開發的一種標準3D模型文件格式,很適合用于3D軟件模型之間的互導,也可以通過Maya讀寫。比如你在3dsMax或LightWave中建了一個模型,想把它調到Maya里面渲染或動畫,導出OBJ文件就是一種很好的選擇。目前幾乎所有知名的3D軟件都支持OBJ文件的讀寫,不過其中很多需要通過插件才能實現。

OBJ文件是一種文本文件,可以直接用寫字板打開進行查看和編輯修改。另外,有一種與此相關二進制文件格式(*.MOD),其作為專利未公開,因此這里不作討論。

1、OBJ文件的特點

OBJ3.0文件格式支持直線(Line)、多邊形(Polygon)、表面(Surface)和自由形態曲線(Free-form Curve)。直線和多角形通過它們的點來描述,曲線和表面則根據它們的控制點和依附于曲線類型的額外信息來定義,這些信息支持規則和不規則的曲線,包括那些基于貝塞爾曲線(Bezier)、B樣條(B-spline)、基數(Cardinal/Catmull-Rom)和泰勒方程(Taylor equations)的曲線。其他特點如下:

(1)OBJ文件是一種3D模型文件。不包含動畫、材質特性、貼圖路徑、動力學、粒子等信息。

(2)OBJ文件主要支持多邊形(Polygons)模型。雖然也支持曲線(Curves)、表面(Surfaces)、點組材質(Point Group Materials),但Maya導出的OBJ文件并不包括這些信息。

(3)OBJ文件支持三個點以上的面,這一點很有用。很多其它的模型文件格式只支持三個點的面,所以導入Maya的模型經常被三角化了,這對于我們對模型進行再加工甚為不利。

(4)OBJ文件支持法線和貼圖坐標。在其它軟件中調整好貼圖后,貼圖坐標信息可以存入OBJ文件中,這樣文件導入Maya后只需指定一下貼圖文件路徑就行了,不需要再調整貼圖坐標。
 

2、OBJ文件的基本結構

OBJ文件不需要任何種文件頭(File Header),盡管經常使用幾行文件信息的注釋作為文件的開頭。OBJ文件由一行行文本組成,注釋行以符號“#”為開頭,空格和空行可以隨意加到文件中以增加文件的可讀性。有字的行都由一兩個標記字母也就是關鍵字(Keyword)開頭,關鍵字可以說明這一行是什么樣的數據。多行可以邏輯地連接在一起表示一行,方法是在每一行最后添加一個連接符(\)。 注意連接符(\)后面不能出現空格或Tab格,否則將導致文件出錯。

下列關鍵字可以在OBJ文件使用。在這個列表中, 關鍵字根據數據類型排列,每個關鍵字有一段簡短描述。

頂點數據(Vertex data):
  v 幾何體頂點(Geometric vertices)
vt 貼圖坐標點(Texture vertices)
vn 頂點法線(Vertex normals)
vp 參數空格頂點 (Parameter space vertices)

自由形態曲線(Free-form curve)/表面屬性(surface attributes):
  deg 度(Degree)
bmat 基礎矩陣(Basis matrix)
step 步尺寸(Step size)
cstype 曲線或表面類型 (Curve or surface type)

元素(Elements):
  p 點(Point)
l 線(Line)
f 面(Face)
curv 曲線(Curve)
curv2 2D曲線(2D curve)
surf 表面(Surface)

自由形態曲線(Free-form curve)/表面主體陳述(surface body statements):
      parm 參數值(Parameter values )
trim 外部修剪循環(Outer trimming loop)
hole 內部整修循環(Inner trimming loop)
scrv 特殊曲線(Special curve)
sp 特殊的點(Special point)
end 結束陳述(End statement)

自由形態表面之間的連接(Connectivity between free-form surfaces):
     
con 連接 (Connect)

成組(Grouping):
      g 組名稱(Group name)
      s 光滑組(Smoothing group)
      mg 合并組(Merging group)
     o 對象名稱(Object name)

顯示(Display)/渲染屬性(render attributes):
  bevel 導角插值(Bevel interpolation)
c_interp 顏色插值(Color interpolation)
d_interp 溶解插值(Dissolve interpolation)
lod 細節層次(Level of detail)
usemtl 材質名稱(Material name)
mtllib 材質庫(Material library)
shadow_obj 投射陰影(Shadow casting)
trace_obj 光線跟蹤(Ray tracing)
ctech 曲線近似技術(Curve approximation technique)
stech 表面近似技術 (Surface approximation technique)

 

3、OBJ文件實例

的確挺難理解,下面通過實例來具體講解。讓我們來創建一個OBJ文件,內容為一個四邊形,不過這一回我們不用3D軟件,而是用寫字板來創建。打開寫字板,把下面的5行代碼寫入,可以適當加一點注釋。保存文件為文本格式,文件名為"myObj.obj"。

v -0.58 0.84 0
v 2.68 1.17 0
v 2.84 -2.03 0
v -1.92 -2.89 0
f 1 2 3 4

注意:代碼最后一定要按一下回車把光標切換到下一行,就是說加一個換行符(\n)。否則會看到如下錯誤信息:
// Error: line 1: OBJ file line 5: index out of range. //
// Error: line 1: Error reading file. //

在Maya中導入"myObj.obj"文件,看見了吧,導入了一個四邊形。這個四邊形的形狀是完全由前面的那5行代碼決定的。

我們來分析一下這些代碼。v -0.58 0.84 0

畫一個四邊形需要四個頂點,這是第一個頂點,"v"表示頂點(vertex),"-0.58"為這個頂點的X軸坐標值,"0.84"為Y軸坐標值,"0"為Z軸坐標值。它的索引號是1。索引號是畫面時要用到的。
v 2.68 1.17 0
v 2.84 -2.03 0
v -1.92 -2.89 0
這分別是第二、三、四個頂點,它們的索引號分別是2,3,4。

f 1 2 3 4
現在開始畫面,"f"表示面(face),1,2,3,4是前面那四個頂點的索引號。請注意畫這個面連接點的順序,是從第一個點出發,依次連接第二、三、四個點。

如果連接的順序不同所生成的面也會截然不同,例如"f 1 2 4 3"會產生一個交迭的面,如上圖。

面的連接點是按順時針排列或逆時針排列,將決定面的法線方向(面的反正)。例如:"f 1 2 3 4"面的法線向外,"f 4 3 2 1"面的法線向里。 面的連接點順序錯誤,是導致導入模型產生碎面的一個重要原因。
一個面不能出現兩個以上相同的頂點,這也是檢查OBJ文件出錯的一個要點。例如:"f 1 2 3 4 3",有兩個相同的頂點,索引號是3。一個面出現兩個相同頂點,可能造成程序的內存分配錯誤。


下面來研究一下Maya導出的OBJ文件。

在Maya中創建一個多邊形立方體,選中這個立方體,選擇菜單"File -> Export Selection..."導出格式為OBJ,文件名為"cube.obj",如果沒有此格式,請在Plug-in Manager中載入"objExport.mll"。 用寫字板打開"cube.obj",可以看到如下代碼:

# The units used in this file are centimeters.
g default
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 0.500000
v -0.500000 0.500000 0.500000
v 0.500000 0.500000 0.500000
v -0.500000 0.500000 -0.500000
v 0.500000 0.500000 -0.500000
v -0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 -0.500000
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 0.000000 1.000000
vt 1.000000 1.000000
vt 0.000000 2.000000
vt 1.000000 2.000000
vt 0.000000 3.000000
vt 1.000000 3.000000
vt 0.000000 4.000000
vt 1.000000 4.000000
vt 2.000000 0.000000
vt 2.000000 1.000000
vt -1.000000 0.000000
vt -1.000000 1.000000
vn 0.000000 0.000000 1.000000
vn 0.000000 0.000000 1.000000
vn 0.000000 0.000000 1.000000
vn 0.000000 0.000000 1.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 -1.000000 0.000000
vn 0.000000 -1.000000 0.000000
vn 0.000000 -1.000000 0.000000
vn 0.000000 -1.000000 0.000000
vn 1.000000 0.000000 0.000000
vn 1.000000 0.000000 0.000000
vn 1.000000 0.000000 0.000000
vn 1.000000 0.000000 0.000000
vn -1.000000 0.000000 0.000000
vn -1.000000 0.000000 0.000000
vn -1.000000 0.000000 0.000000
vn -1.000000 0.000000 0.000000
s off
g pCube1
usemtl initialShadingGroup
f 1/1/1 2/2/2 4/4/3 3/3/4
f 3/3/5 4/4/6 6/6/7 5/5/8
f 5/5/9 6/6/10 8/8/11 7/7/12
f 7/7/13 8/8/14 2/10/15 1/9/16
f 2/2/17 8/11/18 6/12/19 4/4/20
f 7/13/21 1/1/22 3/3/23 5/14/24
這個文件看起來稍復雜一些,用到了許多關鍵詞,你可以對照前面的列表查看一下每個關鍵詞的意思。我來解釋一下:
"vt 1.000000 0.000000"這句"vt"代表點的貼圖坐標。
"vn 0.000000 0.000000 -1.000000"這句"vn"代表點的法線。
"s off"表示關閉光滑組。
"usemtl initialShadingGroup"表示使用的材質。
"f 7/13/21"這時在面的數據中多了貼圖坐標uv點和法線的索引號,索引號分別用左斜線(/)隔開。
格式:"f 頂點索引/uv點索引/法線索引"。

"g pCube1"表示組,這里的成組與Maya中的成組不一樣,這里的成組是指把"g pCube1"后出現的面都結合到一起,組成一個整的多邊形幾何體。

把"cube.obj"文件修改一下就知道成組的意思了。把"s off"這句后面的代碼替換成以下代碼:
usemtl initialShadingGroup
g pCube_Face1
f 1/1/1 2/2/2 4/4/3 3/3/4
g pCube_Face2
f 3/3/5 4/4/6 6/6/7 5/5/8
g pCube_Face3
f 5/5/9 6/6/10 8/8/11 7/7/12
g pCube_Face4
f 7/7/13 8/8/14 2/10/15 1/9/16
g pCube_Face5
f 2/2/17 8/11/18 6/12/19 4/4/20
g pCube_Face6
f 7/13/21 1/1/22 3/3/23 5/14/24
導入Maya后可以看到,立方體的每個面是分離的,每個面的名稱分別是"pCube_Face(1~6)",可見組的名稱其實就是單獨幾何體的名稱。

可不可以用中文命名幾何體(組)呢?試試就知道了,把前面的代碼改成:
usemtl initialShadingGroup
g 立方體面1
f 1/1/1 2/2/2 4/4/3 3/3/4
g 立方體面2
f 3/3/5 4/4/6 6/6/7 5/5/8
g 立方體面3
f 5/5/9 6/6/10 8/8/11 7/7/12
g 立方體面4
f 7/7/13 8/8/14 2/10/15 1/9/16
g 立方體面5
f 2/2/17 8/11/18 6/12/19 4/4/20
g 立方體面6
f 7/13/21 1/1/22 3/3/23 5/14/24

試一下,會發現模型順利的導入了。雖然物體的名稱都變亂碼了,可這并不是很嚴重的事。
不過使用中文名并不總是這么順利,把"g 立方體面1"這行改為"g 選擇"再試試看,這回導入時模型根本無法出現,只會出現如下的錯誤信息:
// Error: line 1: Your OBJ file contains a line which is too long to be parsed. Please edit your obj file. //
// Error: line 1: Error reading file. //
由此可見,物體命名的不規范也是導致OBJ文件出錯的原因之一。
關于Maya的物體命名,英文名是很保險的,標點符號中只有下劃線(_)可用,數字不能用放到名稱的開頭,盡量不要用中、日、韓等雙字節文字。
OBJ文件不支持有孔的多邊形面。
舉個例子說明一下:
選擇Maya的創建多邊形工具(Polygons -> Create Polyon Tool),在視圖中畫一個四邊形,不要按回車,按Ctrl在四邊形中間點一下,可以繼續在四邊形中挖一個洞。把這個有孔的多邊形存成OBJ格式,在導入Maya時,會發現多邊形少了一塊。如果你把這也看成錯誤,現在至少你已經知道錯誤的原因了,就是OBJ文件不支持有孔的多邊形面。


4、OBJ文件的實際問題:

現在來討論一點比較實際的問題吧,就是一旦你遇到了一個出錯的OBJ文件,倒底該怎么辦?

當你打開OBJ文件后,往往會看到有幾萬行的代碼,你恐怕還沒本事情一眼看出錯誤所在行,除非程序的錯誤信息中已經告訴你錯誤行。如果你不知道錯誤在哪里,可以用排除法,弄清楚肯定正確的代碼范圍,通過縮減錯誤代碼范圍定位錯誤。例如,你先新建一個空的OBJ文件,把有錯的OBJ文件代碼粘貼一半過來,然后把這個只有一半代碼的新OBJ文件導入Maya。如果這時沒有錯誤信息,說明錯誤行是在另一半代碼中,可以從另一半代碼中再粘貼一部分代碼試試看;如果這時出現錯誤,說明錯誤行就在粘貼的代碼中,可以把粘貼過來的代碼刪去一部分再試試看。就這樣,逐步縮減范圍直到找到錯誤行為止。

這種方法雖然很麻煩,不過頗為有效。如果你不會編程,又遇到非常緊急的情況,這種方法還是值得一試的。


5、OBJ文件的更多細節:

簡單的OBJ格式寫法。
# Simple Wavefront file
v 0.0 0.0 0.0
v 0.0 1.0 0.0
v 1.0 0.0 0.0
f 1 2 3

面可以使用負值索引,有時用負值索引描述面更為簡便。

v -0.500000 0.000000 0.400000
v -0.500000 0.000000 -0.800000
v -0.500000 1.000000 -0.800000
v -0.500000 1.000000 0.400000
f -4 -3 -2 -1

"f -4 -3 -2 -1"這句索引值"-3"表示從"f"這行往上數第3個頂點,就是"v -0.500000 0.000000 -0.800000",其它的索引值以此類推。 因此與這一行等效的正值索引寫法為:"f 1 2 3 4"

OBJ文件不包含面的顏色定義信息,不過可以引用材質庫,材質庫信息儲存在一個后綴是".mtl"的獨立文件中。關鍵字"mtllib"即材質庫的意思。材質庫中包含材質的漫射(diffuse),環境(ambient),光澤(specular)的RGB(紅綠藍)的定義值,以及反射(specularity),折射(refraction),透明度(transparency)等其它特征。"usemtl"指定了材質之后,以后的面都是使用這一材質,直到遇到下一個"usemtl"來指定新的材質。

指定材質的方法:
Cube with Materials:
# This cube has a different material
# applied to each of its faces.
mtllib master.mtl
v 0.000000 2.000000 2.000000
v 0.000000 0.000000 2.000000
v 2.000000 0.000000 2.000000
v 2.000000 2.000000 2.000000
v 0.000000 2.000000 0.000000
v 0.000000 0.000000 0.000000
v 2.000000 0.000000 0.000000
v 2.000000 2.000000 0.000000
# 8 vertices
g front
usemtl red
f 1 2 3 4
g back
usemtl blue
f 8 7 6 5
g right
usemtl green
f 4 3 7 8
g top
usemtl gold
f 5 1 4 8
g left
usemtl orange
f 5 6 2 1
g bottom
usemtl purple
f 2 6 7 3
# 6 elements

貝塞爾片面(Bezier Patch):
Maya不能導出OBJ格式的貝塞爾片面,卻能夠導入它。導入的貝塞爾片面自動轉換為Nurbs表面。
# 3.0 Bezier patch
v -5.000000 -5.000000 0.000000
v -5.000000 -1.666667 0.000000
v -5.000000 1.666667 0.000000
v -5.000000 5.000000 0.000000
v -1.666667 -5.000000 0.000000
v -1.666667 -1.666667 0.000000
v -1.666667 1.666667 0.000000
v -1.666667 5.000000 0.000000
v 1.666667 -5.000000 0.000000
v 1.666667 -1.666667 0.000000
v 1.666667 1.666667 0.000000
v 1.666667 5.000000 0.000000
v 5.000000 -5.000000 0.000000
v 5.000000 -1.666667 0.000000
v 5.000000 1.666667 0.000000
v 5.000000 5.000000 0.000000
# 16 vertices
cstype bezier
deg 3 3
# Example of line continuation
surf 0.000000 1.000000 0.000000 1.000000 13 14 \
15 16 9 10 11 12 5 6 7 8 1 2 3 4
parm u 0.000000 1.000000
parm v 0.000000 1.000000
end  
# 1 element

基數曲線(Cardinal Curve):
Maya好像不支持OBJ格式的曲線,導入時不會出現錯誤信息,卻也不會出現曲線。
# 3.0 Cardinal curve
v 0.940000 1.340000 0.000000
v -0.670000 0.820000 0.000000
v -0.770000 -0.940000 0.000000
v 1.030000 -1.350000 0.000000
v 3.070000 -1.310000 0.000000
# 6 vertices
cstype cardinal
deg 3
curv 0.000000 3.000000 1 2 3 4 5 6
parm u 0.000000 1.000000 2.000000 3.000000 end
# 1 element

貼圖映射(Texture-Mapped):
# A 2 x 2 square mapped with a 1 x 1 square
# texture stretched to fit the square exactly.
mtllib master.mtl
v 0.000000 2.000000 0.000000
v 0.000000 0.000000 0.000000
v 2.000000 0.000000 0.000000
v 2.000000 2.000000 0.000000
vt 0.000000 1.000000 0.000000
vt 0.000000 0.000000 0.000000
vt 1.000000 0.000000 0.000000
vt 1.000000 1.000000 0.000000
# 4 vertices
usemtl wood
# The first number is the point,
# then the slash,
# and the second is the texture point
f 1/1 2/2 3/3 4/4
# 1 element


posted on 2008-06-13 17:12 lovedday 閱讀(38736) 評論(0)  編輯 收藏 引用 所屬分類: ■ 3D Graphics And Software Engine

公告

導航

統計

常用鏈接

隨筆分類(178)

3D游戲編程相關鏈接

搜索

最新評論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美黑人多人双交| 欧美一区二区三区日韩| 欧美激情久久久| 免费国产一区二区| 亚洲人成网站影音先锋播放| 亚洲高清中文字幕| 美女脱光内衣内裤视频久久网站| 另类欧美日韩国产在线| 久久露脸国产精品| 日韩视频一区二区| 亚洲一区二区精品| 狠狠做深爱婷婷久久综合一区| 欧美国产激情二区三区| 欧美日韩一区二区三区四区在线观看 | 亚洲国产日韩欧美| 最新亚洲激情| 国产免费成人在线视频| 美女成人午夜| 欧美丝袜一区二区三区| 久久国产综合精品| 免费在线视频一区| 午夜精品久久久久久久蜜桃app| 亚洲美女在线看| 99亚洲视频| 国产亚洲一区二区精品| 欧美激情一区二区三区成人| 欧美 日韩 国产精品免费观看| 能在线观看的日韩av| 性欧美8khd高清极品| 噜噜噜91成人网| 欧美诱惑福利视频| 欧美精品色综合| 久久综合九色欧美综合狠狠| 欧美日韩一区二区在线观看| 免费不卡亚洲欧美| 国产麻豆视频精品| 亚洲另类在线视频| 欧美不卡高清| 午夜免费电影一区在线观看| 免费成人黄色av| 久久成人免费日本黄色| 欧美精选午夜久久久乱码6080| 久久久久久香蕉网| 国产精品日韩高清| 中日韩视频在线观看| 亚洲老板91色精品久久| 久久久亚洲国产美女国产盗摄| 午夜精品久久久久久久99樱桃| 欧美激情一区二区三区蜜桃视频| 另类av一区二区| 国产亚洲aⅴaaaaaa毛片| 一区二区高清| 一区二区av在线| 欧美精品久久久久久久免费观看| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产精品一区在线观看| 亚洲天堂av在线免费| 一区二区三区波多野结衣在线观看| 欧美chengren| 欧美激情亚洲视频| 亚洲国产精品成人综合色在线婷婷| 久久国产主播| 久久综合国产精品台湾中文娱乐网| 国产农村妇女毛片精品久久莱园子| 一区二区三区免费在线观看| 午夜精品久久99蜜桃的功能介绍| 亚洲精选一区| 久久夜色撩人精品| 欧美大片免费久久精品三p | 伊人久久大香线| 久久久免费精品| 欧美成人一品| 一区二区三区**美女毛片| 欧美日韩免费观看一区三区| 亚洲人成网站777色婷婷| 亚洲最快最全在线视频| 欧美日韩国产不卡| 亚洲一区影院| 久久亚洲综合色| 亚洲激情偷拍| 欧美日精品一区视频| 亚洲午夜成aⅴ人片| 久久久久久久999精品视频| 亚洲成色最大综合在线| 欧美日本亚洲| 亚洲欧美一区二区激情| 久久综合九色| 亚洲视频欧美视频| 国际精品欧美精品| 欧美精品情趣视频| 亚洲综合99| 欧美激情视频网站| 亚洲尤物视频在线| 在线电影一区| 国产精品久久久久免费a∨| 久久国产一区| 一本色道久久综合亚洲精品高清| 久久电影一区| 亚洲美女在线一区| 国产日韩专区| 欧美日韩国产精品一区| 久久狠狠久久综合桃花| 亚洲精品一区二| 久久夜色精品国产欧美乱| 一本色道久久加勒比精品| 国产亚洲一区二区在线观看 | 免费欧美在线| 亚洲欧美激情诱惑| 亚洲精品国产欧美| 久久久www成人免费精品| 在线综合视频| 亚洲国产高清自拍| 国产欧美视频一区二区三区| 欧美激情一区三区| 久久久久久久综合色一本| 亚洲天堂激情| 亚洲精品一区久久久久久| 猫咪成人在线观看| 久久久久国产精品人| 亚洲欧美日韩视频二区| 亚洲精品少妇| 亚洲国产精品国自产拍av秋霞| 国产精品久久亚洲7777| 欧美区亚洲区| 欧美a级大片| 久久香蕉国产线看观看av| 亚洲欧洲av一区二区三区久久| 日韩小视频在线观看| 亚洲高清激情| 亚洲第一黄网| 蜜臀av一级做a爰片久久| 欧美一级在线播放| 亚洲欧美在线一区| 在线亚洲欧美视频| 99精品国产在热久久| 欧美激情一区二区三区高清视频| 狠狠色综合网站久久久久久久| 国产精品三区www17con| 欧美视频精品在线观看| 欧美日韩视频| 国产精品九色蝌蚪自拍| 欧美日韩精品一区二区| 欧美精品videossex性护士| 欧美国产日韩一区二区| 嫩草国产精品入口| 欧美激情片在线观看| 乱中年女人伦av一区二区| 久久野战av| 亚洲电影av在线| 亚洲人体一区| 在线视频亚洲欧美| 亚洲一区二区在线| 久久成人人人人精品欧| 欧美在线资源| 美女精品一区| 欧美日韩免费观看一区二区三区| 欧美日韩三级一区二区| 国产精品福利在线观看网址| 国产美女高潮久久白浆| 国内精品久久久| 日韩视频亚洲视频| 午夜亚洲福利| 欧美a级理论片| 亚洲另类在线一区| 午夜精品一区二区三区四区| 久久久久国产免费免费| 欧美夫妇交换俱乐部在线观看| 欧美日本一道本| 国产一区二区三区四区五区美女 | 欧美国产一区在线| 国产精品久久久久毛片大屁完整版 | 激情综合激情| 在线亚洲一区二区| 欧美亚洲自偷自偷| 欧美大片免费| 午夜精品福利视频| 噜噜噜在线观看免费视频日韩| 欧美日韩一区二区精品| 国产曰批免费观看久久久| 亚洲免费观看视频| 久久精品国产v日韩v亚洲| 亚洲国产精品一区二区第一页 | 亚洲一级黄色av| 久久美女性网| 一区二区三区国产精品| 麻豆精品在线播放| 国产欧美日韩激情| 一个人看的www久久| 另类专区欧美制服同性| 亚洲一区二区三区四区中文| 免费亚洲一区| 国产揄拍国内精品对白| 亚洲制服丝袜在线| 亚洲激情女人| 久久综合久色欧美综合狠狠| 国产精品日韩精品| 一本色道久久精品| 亚洲国产激情| 久热精品视频在线| 国内一区二区三区在线视频|