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

天行健 君子當(dāng)自強(qiáng)而不息

網(wǎng)格模型高級(jí)技術(shù)(2)

我們?cè)赾ube_1.x的基礎(chǔ)上添加材質(zhì)、法線和紋理,構(gòu)成cube_2.x:

xof 0302txt 0064
Header {
1;
0;
1;
}
Material RedMaterial {                    //第一塊材料
1.000000;0.000000;0.000000;1.000000;; // R = 1.0, G = 0.0, B = 0.0
0.000000;
0.000000;0.000000;0.000000;;
0.000000;0.000000;0.000000;;
	TextureFilename 
{
"Tex1.jpg"; //紋理文件名
}
}
Material GreenMaterial {                  //第二塊材料
0.000000;1.000000;0.000000;1.000000;; // R = 0.0, G = 1.0, B = 0.0
0.000000;
0.000000;0.000000;0.000000;;
0.000000;0.000000;0.000000;;
	TextureFilename 
{
"Tex2.jpg"; //紋理文件名
}
}
Mesh Cube {   //網(wǎng)格
8; //8個(gè)頂點(diǎn),以下為8個(gè)頂點(diǎn)的坐標(biāo)
1.000000;1.000000;-1.000000;,
-1.000000;1.000000;-1.000000;,
-1.000000;1.000000;1.000000;,
1.000000;1.000000;1.000000;,
1.000000;-1.000000;-1.000000;,
-1.000000;-1.000000;-1.000000;,
-1.000000;-1.000000;1.000000;,
1.000000;-1.000000;1.000000;;
	12;            // 12個(gè)面, 以下為每個(gè)面三個(gè)頂點(diǎn)的索引
3;0,1,2;,
3;0,2,3;,
3;0,4,5;,
3;0,5,1;,
3;1,5,6;,
3;1,6,2;,
3;2,6,7;,
3;2,7,3;,
3;3,7,4;,
3;3,4,0;,
3;4,7,6;,
3;4,6,5;;
	//網(wǎng)格材質(zhì)列表
MeshMaterialList {
2; //使用材質(zhì)的數(shù)量:2塊材質(zhì)
12; //為12個(gè)面指定材質(zhì)
0, //為前6個(gè)面使用第一塊材質(zhì)
0,
0,
0,
0,
0,
1, //為后面的6個(gè)面使用第二塊材質(zhì)
1,
1,
1,
1,
1;;
		{RedMaterial}       //第一塊材質(zhì),引用前面定義的RedMaterial材質(zhì)
{GreenMaterial} //第二塊材質(zhì),引用前面定義的GreenMaterial材質(zhì)
}
	//頂點(diǎn)法線
MeshNormals {
8; //定義8個(gè)法線向量
0.333333;0.666667;-0.666667;,
-0.816497;0.408248;-0.408248;,
-0.333333;0.666667;0.666667;,
0.816497;0.408248;0.408248;,
0.666667;-0.666667;-0.333333;,
-0.408248;-0.408248;-0.816497;,
-0.666667;-0.666667;0.333333;,
0.408248;-0.408248;0.816497;;
		12;                   //為12個(gè)面的每個(gè)頂點(diǎn)指定法線
3;0,1,2;,
3;0,2,3;,
3;0,4,5;,
3;0,5,1;,
3;1,5,6;,
3;1,6,2;,
3;2,6,7;,
3;2,7,3;,
3;3,7,4;,
3;3,4,0;,
3;4,7,6;,
3;4,6,5;;
}
	//紋理坐標(biāo)
MeshTextureCoords {
8; //定義8對(duì)紋理坐標(biāo)
0.000000;1.000000;
1.000000;1.000000;
0.000000;1.000000;
1.000000;1.000000;
0.000000;0.000000;
1.000000;0.000000;
0.000000;0.000000;
1.000000;0.000000;;
}
}
 

效果圖如下:


 

可以看到在Mesh模板中嵌套著一個(gè)子模板MeshMaterialList,它是Mesh模板的一部分,用來將每個(gè)面與材質(zhì)相關(guān)聯(lián),其定義如下:

Used in a mesh object to specify which material applies to which faces. The nMaterials member specifies how many materials are present, and materials specify which material to apply.

template MeshMaterialList
{
< F6F23F42-7686-11CF-8F52-0040333594A3 >
DWORD nMaterials;
DWORD nFaceIndexes;
array DWORD faceIndexes[nFaceIndexes];
[Material <3D82AB4D-62DA-11CF-AB39-0020AF71E433>]
}

Where:

  • nMaterials - A DWORD. The number of materials.
  • nFaceIndexes - A DWORD. The number of indices.
  • faceIndexes[nFaceIndexes] - An arrray of DWORDs containing the face indices.

MeshMaterialList是一個(gè)受限的模板,它只能包含Material模板,其定義如下:

Defines a basic material color that can be applied to either a complete mesh or a mesh's individual faces. The power is the specular exponent of the material.

Note     The ambient color requires an alpha component.

TextureFilename is an optional data object. If this object is not present, the face is untextured.

template Material
{
< 3D82AB4D-62DA-11CF-AB39-0020AF71E433 >
ColorRGBA faceColor;
FLOAT power;
ColorRGB specularColor;
ColorRGB emissiveColor;
[...]
}

Where:

  • faceColor - Face color. A ColorRGBA template.
  • power - Material specular color exponent.
  • specularColor - Material specular color. A ColorRGB template.
  • emissiveColor - Material emissive color. A ColorRGB template.

 

Defines a color object with an alpha component. This is used for the face color in the material template definition.

template ColorRGBA
{
< 35FF44E0-6C7C-11cf-8F52-0040333594A3 >
float red;
float green;
float blue;
float alpha;
}

Defines the basic RGB color object.

template ColorRGB
{
< D3E16E81-7835-11cf-8F52-0040333594A3 >
float red;
float green;
float blue;
}

在cube_2.x中,首先定義了兩個(gè)材質(zhì)RedMaterial和GreenMaterial:

Material RedMaterial {                    //第一塊材料
1.000000;0.000000;0.000000;1.000000;; // R = 1.0, G = 0.0, B = 0.0
0.000000;
0.000000;0.000000;0.000000;;
0.000000;0.000000;0.000000;;
	TextureFilename 
{
"Tex1.jpg"; //紋理文件名
}
}
Material GreenMaterial {                  //第二塊材料
0.000000;1.000000;0.000000;1.000000;; // R = 0.0, G = 1.0, B = 0.0
0.000000;
0.000000;0.000000;0.000000;;
0.000000;0.000000;0.000000;;
	TextureFilename 
{
"Tex2.jpg"; //紋理文件名
}
}

在模板MeshMaterialList中則給出了各個(gè)面與材質(zhì)的關(guān)聯(lián)信息:

//網(wǎng)格材質(zhì)列表
MeshMaterialList {
2; //使用材質(zhì)的數(shù)量:2塊材質(zhì)
12; //為12個(gè)面指定材質(zhì)
0, //為前6個(gè)面使用第一塊材質(zhì)
0,
0,
0,
0,
0,
1, //為后面的6個(gè)面使用第二塊材質(zhì)
1,
1,
1,
1,
1;;
	{RedMaterial}       //第一塊材質(zhì),引用前面定義的RedMaterial材質(zhì)
{GreenMaterial} //第二塊材質(zhì),引用前面定義的GreenMaterial材質(zhì)
}

其中,{RedMaterial}和{GreenMaterial}是對(duì)上面定義的材質(zhì)模板對(duì)象的引用。

在光照模型運(yùn)算時(shí)需要用到法向量,法向量分為面法向量和頂點(diǎn)法向量。在基于逐頂點(diǎn)計(jì)算的光照模型中,需要使用頂點(diǎn)法向量。通常頂點(diǎn)法向量的計(jì)算過程是:先將共享該頂點(diǎn)的幾個(gè)面的面法向量相加并除以共享該頂點(diǎn)的面的個(gè)數(shù),接著歸一化這個(gè)結(jié)果。模板MeshNormals用來指定法向量:

Defines normals for a mesh. The first array of vectors is the normal vectors themselves, and the second array is an array of indexes specifying which normals should be applied to a given face. The value of the nFaceNormals member should be equal to the number of faces in a mesh.

template MeshNormals
{
< F6F23F43-7686-11cf-8F52-0040333594A3 >
DWORD nNormals;
array Vector normals[nNormals];
DWORD nFaceNormals;
array MeshFace faceNormals[nFaceNormals];
}

Where:

  • nNormals - Number of normals.
  • array Vector normals[nNormals] - Array of normals.
  • nFaceNormals - Number of face normals.
  • array MeshFace faceNormals[nFaceNormals] - Array of mesh face normals.

在文件cube_2.x中,法向量的定義以及為面指定法向量的內(nèi)容如下:

//頂點(diǎn)法線
MeshNormals {
8; //定義8個(gè)法線向量
0.333333;0.666667;-0.666667;,
-0.816497;0.408248;-0.408248;,
-0.333333;0.666667;0.666667;,
0.816497;0.408248;0.408248;,
0.666667;-0.666667;-0.333333;,
-0.408248;-0.408248;-0.816497;,
-0.666667;-0.666667;0.333333;,
0.408248;-0.408248;0.816497;;
	12;                   //為12個(gè)面的每個(gè)頂點(diǎn)指定法線
3;0,1,2;,
3;0,2,3;,
3;0,4,5;,
3;0,5,1;,
3;1,5,6;,
3;1,6,2;,
3;2,6,7;,
3;2,7,3;,
3;3,7,4;,
3;3,4,0;,
3;4,7,6;,
3;4,6,5;;
}

模板TextureFilename用于引用紋理,它通常作為Material模板對(duì)象的子對(duì)象出現(xiàn),其定義如下:

Enables you to specify the file name of a texture to apply to a mesh or a face. This template should appear within a material object.

template TextureFilename 
{
< A42790E1-7810-11cf-8F52-0040333594A3 >
string filename;
}

在使用TextureFilename模板時(shí),只需要使用字符串filename指定一個(gè)紋理文件名即可,但要將這幅紋理映射到網(wǎng)格模型中,還需要指定紋理坐標(biāo):

Defines a mesh's texture coordinates.

template MeshTextureCoords
{
< F6F23F40-7686-11cf-8F52-0040333594A3 >
DWORD nTextureCoords;
array Coords2d textureCoords[nTextureCoords] ;
}

Where:

  • nTextureCoords - Number of texture coordinates.
  • array Coords2d textureCoords[nTextureCoords] - Array of 2D texture coordinates.

Defines a two dimensional vector used to define a mesh's (u, v) texture coordinates.

template Coords2d
{
< F6F23F44-7686-11cf-8F52-0040333594A3 >
float u;
float v;
}
  • u - u coordinate value.
  • v - v coordinate value.

在cube_2.x中,定義紋理坐標(biāo)的代碼如下:

//紋理坐標(biāo)
MeshTextureCoords {
8; //定義8對(duì)紋理坐標(biāo)
0.000000;1.000000;
1.000000;1.000000;
0.000000;1.000000;
1.000000;1.000000;
0.000000;0.000000;
1.000000;0.000000;
0.000000;0.000000;
1.000000;0.000000;;
}

posted on 2008-05-27 14:49 lovedday 閱讀(1768) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


公告

導(dǎo)航

統(tǒng)計(jì)

常用鏈接

隨筆分類(178)

3D游戲編程相關(guān)鏈接

搜索

最新評(píng)論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美在线一区二区| 欧美精品免费看| 久久精品国产视频| 亚洲一级高清| 夜夜精品视频| 一区二区三区日韩精品| 亚洲免费观看| 亚洲一区二区在线免费观看| 亚洲伊人久久综合| 亚洲欧美日本国产有色| 午夜视频一区| 国产精品v日韩精品v欧美精品网站| 欧美激情一区二区三区不卡| 欧美日本一区| 亚洲一区二区三区四区五区午夜| 欧美日韩一区不卡| 国产精品成人观看视频免费| 国产欧美在线| 伊人色综合久久天天| 伊人久久综合97精品| 日韩一级在线| 新狼窝色av性久久久久久| 久久视频国产精品免费视频在线| 噜噜噜噜噜久久久久久91| 亚洲国产裸拍裸体视频在线观看乱了| 欧美mv日韩mv国产网站| 亚洲精品一区二区三| 亚洲欧美日韩人成在线播放| 欧美福利视频一区| 国产精品免费一区二区三区观看| 好吊妞这里只有精品| 99视频在线观看一区三区| 久久蜜桃av一区精品变态类天堂| 亚洲国产一区二区三区青草影视| 亚洲一区二区在线免费观看| 老色鬼精品视频在线观看播放| 欧美日韩亚洲激情| 黄色欧美成人| 亚洲视频网站在线观看| 美女任你摸久久| 99热这里只有精品8| 久久精品伊人| 欧美性大战久久久久久久| 亚洲激情视频在线| 欧美中文字幕第一页| 亚洲精品视频啊美女在线直播| 欧美一进一出视频| 国产精品扒开腿爽爽爽视频 | 99国产一区| 欧美日韩免费看| 亚洲国产精品久久久| 久久精品亚洲精品国产欧美kt∨| 亚洲卡通欧美制服中文| 你懂的一区二区| 好吊妞**欧美| 久久精品免费电影| 在线一区二区三区四区| 亚洲国产欧美不卡在线观看| 欧美成人黄色小视频| 国产精品一区二区久久久| 日韩亚洲国产欧美| 久久综合伊人77777| 亚洲影院色在线观看免费| 欧美日韩高清在线| 亚洲伦理中文字幕| 欧美刺激性大交免费视频| 久久久久国产精品麻豆ai换脸| 一区二区精品在线| 欧美激情精品久久久六区热门| 久久综合伊人77777蜜臀| 国内精品伊人久久久久av一坑| 先锋影音久久久| 一区二区三区不卡视频在线观看| 欧美人妖另类| 亚洲一区二区三| 亚洲性线免费观看视频成熟| 欧美va亚洲va日韩∨a综合色| 久久精品中文| 狠狠狠色丁香婷婷综合久久五月| 久久伊人一区二区| 久久精品国产亚洲一区二区三区| 国产一区二区中文| 久久综合久久久久88| 欧美在线观看视频在线| 国产伊人精品| 久久一区二区三区av| 久久香蕉国产线看观看av| 亚洲三级影院| 亚洲麻豆国产自偷在线| 国产精品入口麻豆原神| 欧美一区二区三区在线看| 久久精品国产77777蜜臀| 亚洲国产一区在线观看| 91久久综合| 欧美性大战xxxxx久久久| 久久精品国产久精国产一老狼| 久久久精品tv| 亚洲看片一区| 亚洲综合日韩在线| 国产性猛交xxxx免费看久久| 蜜桃久久av| 欧美日韩国产小视频| 午夜精品999| 男女激情视频一区| 亚洲综合二区| 裸体一区二区| 一区二区三区日韩精品视频| 午夜在线不卡| 9久re热视频在线精品| 久久成人免费| 中文av一区特黄| 久久精品免视看| 亚洲欧美亚洲| 欧美sm极限捆绑bd| 久久精品一区四区| 欧美精品在线视频观看| 久久蜜臀精品av| 欧美视频在线免费看| 免费一级欧美在线大片| 国产精品免费看| 亚洲国产精品尤物yw在线观看| 国产日韩在线看片| 一区二区日韩伦理片| 亚洲黄一区二区三区| 一本色道久久综合狠狠躁的推荐| 欧美在线亚洲在线| 亚洲欧美另类国产| 欧美屁股在线| 欧美激情一区二区三区在线视频观看| 国产精品一级久久久| 亚洲最新中文字幕| 欧美三级精品| 欧美14一18处毛片| 欧美一区二区三区四区在线观看| 麻豆国产va免费精品高清在线| 午夜视频在线观看一区二区三区| 欧美高清hd18日本| 蜜月aⅴ免费一区二区三区| 国产精品爽爽爽| 亚洲精品国久久99热| 亚洲国产日韩一级| 性欧美办公室18xxxxhd| 亚洲一区在线观看视频| 欧美激情精品久久久久久大尺度 | 夜夜嗨av色一区二区不卡| 国产主播一区二区三区| 欧美1区视频| 国产精品丝袜白浆摸在线| 亚洲最新视频在线播放| 亚洲精品四区| 欧美成人精品一区二区三区| 亚洲电影第1页| 136国产福利精品导航网址应用 | 久久久国产精品一区二区中文| 国产精品欧美久久| 亚洲少妇中出一区| 亚洲欧美日韩国产精品| 国产欧美一区二区三区另类精品 | 在线一区二区三区做爰视频网站 | 亚洲淫性视频| 国产精品丝袜xxxxxxx| 欧美一区影院| 免费欧美日韩| 99精品视频免费观看视频| 国产精品久久久久影院色老大| 亚洲一区二区免费| 久久国产直播| 亚洲福利小视频| 欧美成人综合| 一个色综合导航| 久久精品91| 亚洲激情av在线| 欧美日本不卡视频| 午夜视频精品| 欧美va亚洲va国产综合| 亚洲美女视频| 国产欧美另类| 久久精品91久久香蕉加勒比| 欧美成人精品激情在线观看| 亚洲一区二区3| 夜夜嗨av一区二区三区| 欧美 日韩 国产精品免费观看| 欧美激情成人在线| 欧美日韩四区| 久久精品在线| 亚欧成人精品| 夜夜爽www精品| 国语对白精品一区二区| 亚洲私人影院在线观看| 久久这里只有| 久久精品一本久久99精品| 国产主播一区二区三区| 亚洲午夜久久久久久久久电影网| 欧美影院午夜播放| 亚洲精选久久| 日韩亚洲在线观看| 黄色亚洲精品| 一区二区三区四区五区在线| 国产亚洲一区二区三区| 日韩一本二本av|