示例obj模型檔案:
#blender v2.60 (sub 0) obj file: 『』
#www.blender.org
mtllib cube.mtl
o cube
v 1.000000 -1.000000 -1.000000
v 1.000000 -1.000000 1.000000
v -1.000000 -1.000000 1.000000
v -1.000000 -1.000000 -1.000000
v 1.000000 1.000000 -1.000000
v 1.000000 1.000000 1.000001
v -1.000000 1.000000 1.000000
v -1.000000 1.000000 -1.000000
usemtl material
f 1 2 3 4
f 5 8 7 6
f 2 6 7 3
f 3 7 8 4
f 5 1 4 8
usemtl material.001
f 1 5 6 2
obj檔案格式:
obj格式的檔案由若干個部分組成,包括頂點座標部分、表面定義部分、材質定義部分等。每個部分定義了多個頂點、法線、表面等等。
(1)以井號(#)開頭的行表示注釋,上面1行和2行就是軟體根據自身版本建立出來的注釋。
(2)第3行引用了乙個外部材質檔案。obj格式將模型的材質資訊儲存在外部的mtl格式的檔案中。
mtllib < 外部材質檔名 >這裡,外部材質檔案是cube.mtl。
(3)第4行按照如下格式指定了模型的名稱:
o < 模型名稱 > 示例程式中沒有用到這條資訊
(4)第5行到第12行按照如下格式定義了頂點的座標,其中w是可選的,如果沒有就預設為1.0 。
v x y z [w]本例中的模型時乙個標準的立方體,共有8個頂點。
(5)第13行到第20行先指定了某個材質,然後列舉了使用這個材質的表面。第13行指定了材質名稱,該材質被定義在第3行引用的mtl檔案中。
usemtl < 材質名 >
(6)接下來的第14行到第18行定義了使用這個材質的表面。每個表面是由頂點、紋理座標和法線的索引序列定義的。
f v1 v2 v3 v4 ···
其中v1、v2、v3、v4是之前定義的頂點的索引值。注意,這裡頂點的索引值從1開始,而不是從0開始。本例為了簡單,沒有包含法線,如果包含了法線向量,就需要遵照如下格式:
f v1//vn1 v2//vn2 v3//vn3 ···
其中,vn1、vn2等式法線向量的索引值,也是從1開始。
(7)第19行到第20行定義了使用了另乙個材質的表面,即橘黃色的表面。
FBX格式和obj格式的區別
目前主流常用的通用模型格式fbx格式和obj都是眾多可以用在眾多軟體平台的。既然兩個都是通用模型格式,那麼fbx格式和obj格式的區別到底是什麼呢?很多三維設計師朋友都聽說過這兩個格式,但卻不知道該如何選擇,接下來就為大家解讀對比一下吧。1 fbx格式和obj格式都是三維通用模型格式,可以用在目前幾...
OBJ檔案格式的詳細介紹
格式 v x y z 意義 每個頂點的座標 格式 vt u v w 意義 繪製模型的三角麵片時,每個頂點取畫素點時對應的紋理上的座標。紋理的座標指的是,紋理如果被放在螢幕上顯示時,以螢幕左下角為原點的座標。注意 w一般用於形容三維紋理,大部分是用不到的,基本都為0。格式 vn x y z 意義 繪製...
關於3D模型中的obj檔案
obj檔案不需要任何種檔案頭,檔案由一行行文字組成,注釋行以符號 為開頭,空格和空行可以隨意加到檔案中。有字的行都由一兩個標記字母也就是關鍵字 keyword 開頭,關鍵字可以說明這一行是什麼樣的資料。多行可以邏輯地連線在一起表示一行,方法是在每一行最後新增乙個連線符 注意連線符 後面不能出現空格或...