Added korean location
This commit is contained in:
1 parent
d5ef126264
commit
96e748715b
80 files changed
+18949
-80
No files matched your search
@@ -1,11 +1,12 @@
|
||||
{
|
||||
"id": "uni_exterior",
|
||||
"gameObjects": "resources/config/gameobjects_uni_exterior_x.json",
|
||||
"gameObjects": "resources/w/shelter/game_objects.json",
|
||||
"interactiveObjects": "resources/w/shelter/interactive_objects.json",
|
||||
"npcs": "resources/config/npcs_battle_zone.json",
|
||||
"dialogues": "resources/dialogue/battle_zone_dialogues.json",
|
||||
"navigation": [
|
||||
"resources/navigation/uni_exterior3_trees_car.txt"
|
||||
"resources/navigation/dorm0_large.json"
|
||||
],
|
||||
"script": "resources/start_battle_zone.lua",
|
||||
"playerPosition": [5, 0, -18.4]
|
||||
"playerPosition": [-6, 0, 12.8]
|
||||
}
|
||||
@@ -93,22 +93,16 @@
|
||||
"hp": 200.0,
|
||||
"pathWaypoints": [],
|
||||
"position": [
|
||||
5.0,
|
||||
0.0,
|
||||
-18.399999618530273
|
||||
-6, 0, 12.8
|
||||
],
|
||||
"requestedWalkTarget": [
|
||||
5.0,
|
||||
0.0,
|
||||
-18.399999618530273
|
||||
-6, 0, 12.8
|
||||
],
|
||||
"showWeapon": true,
|
||||
"targetFacingAngle": 0.0,
|
||||
"visibleRange": 6.0,
|
||||
"walkTarget": [
|
||||
5.0,
|
||||
0.0,
|
||||
-18.399999618530273
|
||||
-6, 0, 12.8
|
||||
]
|
||||
},
|
||||
"scriptGlobals": null,
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
attribute vec3 vPosition;
|
||||
attribute vec2 vTexCoord;
|
||||
#ifdef INSTANCED
|
||||
attribute vec4 iModel0;
|
||||
attribute vec4 iModel1;
|
||||
attribute vec4 iModel2;
|
||||
attribute vec4 iModel3;
|
||||
#endif
|
||||
varying vec2 texCoord;
|
||||
varying float fogDistance;
|
||||
|
||||
@@ -9,8 +15,12 @@ uniform vec3 uPlayerEyePos;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 eyePos = ModelViewMatrix * vec4(vPosition.xyz, 1.0);
|
||||
vec4 worldPos = vec4(vPosition, 1.0);
|
||||
#ifdef INSTANCED
|
||||
worldPos = mat4(iModel0, iModel1, iModel2, iModel3) * worldPos;
|
||||
#endif
|
||||
vec4 eyePos = ModelViewMatrix * worldPos;
|
||||
fogDistance = length(eyePos.xyz - uPlayerEyePos);
|
||||
gl_Position = ProjectionModelViewMatrix * vec4(vPosition.xyz, 1.0);
|
||||
gl_Position = ProjectionModelViewMatrix * worldPos;
|
||||
texCoord = vTexCoord;
|
||||
}
|
||||
@@ -1,5 +1,11 @@
|
||||
attribute vec3 vPosition;
|
||||
attribute vec2 vTexCoord;
|
||||
#ifdef INSTANCED
|
||||
attribute vec4 iModel0;
|
||||
attribute vec4 iModel1;
|
||||
attribute vec4 iModel2;
|
||||
attribute vec4 iModel3;
|
||||
#endif
|
||||
varying vec2 texCoord;
|
||||
varying float fogDistance;
|
||||
|
||||
@@ -9,8 +15,12 @@ uniform vec3 uPlayerEyePos;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 eyePos = ModelViewMatrix * vec4(vPosition.xyz, 1.0);
|
||||
vec4 worldPos = vec4(vPosition, 1.0);
|
||||
#ifdef INSTANCED
|
||||
worldPos = mat4(iModel0, iModel1, iModel2, iModel3) * worldPos;
|
||||
#endif
|
||||
vec4 eyePos = ModelViewMatrix * worldPos;
|
||||
fogDistance = length(eyePos.xyz - uPlayerEyePos);
|
||||
gl_Position = ProjectionModelViewMatrix * vec4(vPosition.xyz, 1.0);
|
||||
gl_Position = ProjectionModelViewMatrix * worldPos;
|
||||
texCoord = vTexCoord;
|
||||
}
|
||||
@@ -2,6 +2,12 @@
|
||||
attribute vec3 vPosition;
|
||||
attribute vec2 vTexCoord;
|
||||
attribute vec3 vNormal;
|
||||
#ifdef INSTANCED
|
||||
attribute vec4 iModel0;
|
||||
attribute vec4 iModel1;
|
||||
attribute vec4 iModel2;
|
||||
attribute vec4 iModel3;
|
||||
#endif
|
||||
|
||||
varying vec2 texCoord;
|
||||
varying vec4 fragPosLightSpace;
|
||||
@@ -15,10 +21,17 @@ uniform vec3 uPlayerEyePos;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 eyePos = ModelViewMatrix * vec4(vPosition, 1.0);
|
||||
vec4 worldPos = vec4(vPosition, 1.0);
|
||||
vec3 normal = vNormal;
|
||||
#ifdef INSTANCED
|
||||
mat4 instanceModel = mat4(iModel0, iModel1, iModel2, iModel3);
|
||||
worldPos = instanceModel * worldPos;
|
||||
normal = normalize(mat3(instanceModel) * normal);
|
||||
#endif
|
||||
vec4 eyePos = ModelViewMatrix * worldPos;
|
||||
fogDistance = length(eyePos.xyz - uPlayerEyePos);
|
||||
gl_Position = ProjectionModelViewMatrix * vec4(vPosition, 1.0);
|
||||
gl_Position = ProjectionModelViewMatrix * worldPos;
|
||||
texCoord = vTexCoord;
|
||||
fragPosLightSpace = uLightFromCamera * eyePos;
|
||||
fragNormal = mat3(ModelViewMatrix) * vNormal;
|
||||
fragNormal = mat3(ModelViewMatrix) * normal;
|
||||
}
|
||||
@@ -1,6 +1,12 @@
|
||||
attribute vec3 vPosition;
|
||||
attribute vec2 vTexCoord;
|
||||
attribute vec3 vNormal;
|
||||
#ifdef INSTANCED
|
||||
attribute vec4 iModel0;
|
||||
attribute vec4 iModel1;
|
||||
attribute vec4 iModel2;
|
||||
attribute vec4 iModel3;
|
||||
#endif
|
||||
|
||||
varying vec2 texCoord;
|
||||
varying vec4 fragPosLightSpace;
|
||||
@@ -14,10 +20,17 @@ uniform vec3 uPlayerEyePos;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 eyePos = ModelViewMatrix * vec4(vPosition, 1.0);
|
||||
vec4 worldPos = vec4(vPosition, 1.0);
|
||||
vec3 normal = vNormal;
|
||||
#ifdef INSTANCED
|
||||
mat4 instanceModel = mat4(iModel0, iModel1, iModel2, iModel3);
|
||||
worldPos = instanceModel * worldPos;
|
||||
normal = normalize(mat3(instanceModel) * normal);
|
||||
#endif
|
||||
vec4 eyePos = ModelViewMatrix * worldPos;
|
||||
fogDistance = length(eyePos.xyz - uPlayerEyePos);
|
||||
gl_Position = ProjectionModelViewMatrix * vec4(vPosition, 1.0);
|
||||
gl_Position = ProjectionModelViewMatrix * worldPos;
|
||||
texCoord = vTexCoord;
|
||||
fragPosLightSpace = uLightFromCamera * eyePos;
|
||||
fragNormal = mat3(ModelViewMatrix) * vNormal;
|
||||
fragNormal = mat3(ModelViewMatrix) * normal;
|
||||
}
|
||||
@@ -2,6 +2,12 @@
|
||||
attribute vec3 vPosition;
|
||||
attribute vec2 vTexCoord;
|
||||
attribute vec3 vNormal;
|
||||
#ifdef INSTANCED
|
||||
attribute vec4 iModel0;
|
||||
attribute vec4 iModel1;
|
||||
attribute vec4 iModel2;
|
||||
attribute vec4 iModel3;
|
||||
#endif
|
||||
|
||||
varying vec2 texCoord;
|
||||
varying float fogDistance;
|
||||
@@ -15,11 +21,18 @@ uniform vec3 uPlayerEyePos;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 eyePos = ModelViewMatrix * vec4(vPosition.xyz, 1.0);
|
||||
vec4 worldPos = vec4(vPosition, 1.0);
|
||||
vec3 normal = vNormal;
|
||||
#ifdef INSTANCED
|
||||
mat4 instanceModel = mat4(iModel0, iModel1, iModel2, iModel3);
|
||||
worldPos = instanceModel * worldPos;
|
||||
normal = normalize(mat3(instanceModel) * normal);
|
||||
#endif
|
||||
vec4 eyePos = ModelViewMatrix * worldPos;
|
||||
fogDistance = length(eyePos.xyz - uPlayerEyePos);
|
||||
gl_Position = ProjectionModelViewMatrix * vec4(vPosition.xyz, 1.0);
|
||||
gl_Position = ProjectionModelViewMatrix * worldPos;
|
||||
texCoord = vTexCoord;
|
||||
fragViewPos = eyePos.xyz;
|
||||
fragNormal = mat3(ModelViewMatrix) * vNormal;
|
||||
fragWorldXZ = vPosition.xz;
|
||||
fragNormal = mat3(ModelViewMatrix) * normal;
|
||||
fragWorldXZ = worldPos.xz;
|
||||
}
|
||||
@@ -2,6 +2,12 @@
|
||||
attribute vec3 vPosition;
|
||||
attribute vec2 vTexCoord;
|
||||
attribute vec3 vNormal;
|
||||
#ifdef INSTANCED
|
||||
attribute vec4 iModel0;
|
||||
attribute vec4 iModel1;
|
||||
attribute vec4 iModel2;
|
||||
attribute vec4 iModel3;
|
||||
#endif
|
||||
|
||||
varying vec2 texCoord;
|
||||
varying vec4 fragPosLightSpace;
|
||||
@@ -17,12 +23,19 @@ uniform vec3 uPlayerEyePos;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 eyePos = ModelViewMatrix * vec4(vPosition, 1.0);
|
||||
vec4 worldPos = vec4(vPosition, 1.0);
|
||||
vec3 normal = vNormal;
|
||||
#ifdef INSTANCED
|
||||
mat4 instanceModel = mat4(iModel0, iModel1, iModel2, iModel3);
|
||||
worldPos = instanceModel * worldPos;
|
||||
normal = normalize(mat3(instanceModel) * normal);
|
||||
#endif
|
||||
vec4 eyePos = ModelViewMatrix * worldPos;
|
||||
fogDistance = length(eyePos.xyz - uPlayerEyePos);
|
||||
gl_Position = ProjectionModelViewMatrix * vec4(vPosition, 1.0);
|
||||
gl_Position = ProjectionModelViewMatrix * worldPos;
|
||||
texCoord = vTexCoord;
|
||||
fragViewPos = eyePos.xyz;
|
||||
fragNormal = mat3(ModelViewMatrix) * vNormal;
|
||||
fragNormal = mat3(ModelViewMatrix) * normal;
|
||||
fragPosLightSpace = uLightFromCamera * eyePos;
|
||||
fragWorldXZ = vPosition.xz;
|
||||
fragWorldXZ = worldPos.xz;
|
||||
}
|
||||
@@ -2,6 +2,12 @@ precision highp float;
|
||||
attribute vec3 vPosition;
|
||||
attribute vec2 vTexCoord;
|
||||
attribute vec3 vNormal;
|
||||
#ifdef INSTANCED
|
||||
attribute vec4 iModel0;
|
||||
attribute vec4 iModel1;
|
||||
attribute vec4 iModel2;
|
||||
attribute vec4 iModel3;
|
||||
#endif
|
||||
|
||||
varying vec2 texCoord;
|
||||
varying vec4 fragPosLightSpace;
|
||||
@@ -17,12 +23,19 @@ uniform vec3 uPlayerEyePos;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 eyePos = ModelViewMatrix * vec4(vPosition, 1.0);
|
||||
vec4 worldPos = vec4(vPosition, 1.0);
|
||||
vec3 normal = vNormal;
|
||||
#ifdef INSTANCED
|
||||
mat4 instanceModel = mat4(iModel0, iModel1, iModel2, iModel3);
|
||||
worldPos = instanceModel * worldPos;
|
||||
normal = normalize(mat3(instanceModel) * normal);
|
||||
#endif
|
||||
vec4 eyePos = ModelViewMatrix * worldPos;
|
||||
fogDistance = length(eyePos.xyz - uPlayerEyePos);
|
||||
gl_Position = ProjectionModelViewMatrix * vec4(vPosition, 1.0);
|
||||
gl_Position = ProjectionModelViewMatrix * worldPos;
|
||||
texCoord = vTexCoord;
|
||||
fragViewPos = eyePos.xyz;
|
||||
fragNormal = mat3(ModelViewMatrix) * vNormal;
|
||||
fragNormal = mat3(ModelViewMatrix) * normal;
|
||||
fragPosLightSpace = uLightFromCamera * eyePos;
|
||||
fragWorldXZ = vPosition.xz;
|
||||
fragWorldXZ = worldPos.xz;
|
||||
}
|
||||
@@ -1,6 +1,12 @@
|
||||
attribute vec3 vPosition;
|
||||
attribute vec2 vTexCoord;
|
||||
attribute vec3 vNormal;
|
||||
#ifdef INSTANCED
|
||||
attribute vec4 iModel0;
|
||||
attribute vec4 iModel1;
|
||||
attribute vec4 iModel2;
|
||||
attribute vec4 iModel3;
|
||||
#endif
|
||||
|
||||
varying vec2 texCoord;
|
||||
varying float fogDistance;
|
||||
@@ -14,11 +20,18 @@ uniform vec3 uPlayerEyePos;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 eyePos = ModelViewMatrix * vec4(vPosition.xyz, 1.0);
|
||||
vec4 worldPos = vec4(vPosition, 1.0);
|
||||
vec3 normal = vNormal;
|
||||
#ifdef INSTANCED
|
||||
mat4 instanceModel = mat4(iModel0, iModel1, iModel2, iModel3);
|
||||
worldPos = instanceModel * worldPos;
|
||||
normal = normalize(mat3(instanceModel) * normal);
|
||||
#endif
|
||||
vec4 eyePos = ModelViewMatrix * worldPos;
|
||||
fogDistance = length(eyePos.xyz - uPlayerEyePos);
|
||||
gl_Position = ProjectionModelViewMatrix * vec4(vPosition.xyz, 1.0);
|
||||
gl_Position = ProjectionModelViewMatrix * worldPos;
|
||||
texCoord = vTexCoord;
|
||||
fragViewPos = eyePos.xyz;
|
||||
fragNormal = mat3(ModelViewMatrix) * vNormal;
|
||||
fragWorldXZ = vPosition.xz;
|
||||
fragNormal = mat3(ModelViewMatrix) * normal;
|
||||
fragWorldXZ = worldPos.xz;
|
||||
}
|
||||
@@ -1,9 +1,19 @@
|
||||
attribute vec3 vPosition;
|
||||
attribute vec2 vTexCoord;
|
||||
#ifdef INSTANCED
|
||||
attribute vec4 iModel0;
|
||||
attribute vec4 iModel1;
|
||||
attribute vec4 iModel2;
|
||||
attribute vec4 iModel3;
|
||||
#endif
|
||||
|
||||
uniform mat4 ProjectionModelViewMatrix;
|
||||
|
||||
void main()
|
||||
{
|
||||
gl_Position = ProjectionModelViewMatrix * vec4(vPosition, 1.0);
|
||||
vec4 worldPos = vec4(vPosition, 1.0);
|
||||
#ifdef INSTANCED
|
||||
worldPos = mat4(iModel0, iModel1, iModel2, iModel3) * worldPos;
|
||||
#endif
|
||||
gl_Position = ProjectionModelViewMatrix * worldPos;
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,108 @@
|
||||
{
|
||||
"objects": [
|
||||
{
|
||||
"name": "intBin_Cans",
|
||||
"texturePath": "resources/w/shelter/models/intBin_Cans_atlas.png",
|
||||
"meshPath": "resources/w/shelter/models/intBin_Cans.txt.bin",
|
||||
"rotationX": 0.0,
|
||||
"rotationY": -180.0,
|
||||
"rotationZ": 0.0,
|
||||
"positionX": 0.6,
|
||||
"positionY": 0.0,
|
||||
"positionZ": 3.85,
|
||||
"scale": 1.0,
|
||||
"interactionRadius": 0.0
|
||||
},
|
||||
{
|
||||
"name": "intBin_Plastic",
|
||||
"texturePath": "resources/w/shelter/models/intBin_Plastic_atlas.png",
|
||||
"meshPath": "resources/w/shelter/models/intBin_Plastic.txt.bin",
|
||||
"rotationX": 0.0,
|
||||
"rotationY": -180.0,
|
||||
"rotationZ": 0.0,
|
||||
"positionX": 1.4,
|
||||
"positionY": 0.0,
|
||||
"positionZ": 3.85,
|
||||
"scale": 1.0,
|
||||
"interactionRadius": 0.0
|
||||
},
|
||||
{
|
||||
"name": "intBin_Waste_A",
|
||||
"texturePath": "resources/w/shelter/models/intBin_Waste_A_atlas.png",
|
||||
"meshPath": "resources/w/shelter/models/intBin_Waste_A.txt.bin",
|
||||
"rotationX": 0.0,
|
||||
"rotationY": -180.0,
|
||||
"rotationZ": 0.0,
|
||||
"positionX": 2.2,
|
||||
"positionY": 0.0,
|
||||
"positionZ": 3.85,
|
||||
"scale": 1.0,
|
||||
"interactionRadius": 0.0
|
||||
},
|
||||
{
|
||||
"name": "intBin_Waste_B",
|
||||
"texturePath": "resources/w/shelter/models/intBin_Waste_B_atlas.png",
|
||||
"meshPath": "resources/w/shelter/models/intBin_Waste_B.txt.bin",
|
||||
"rotationX": 0.0,
|
||||
"rotationY": -180.0,
|
||||
"rotationZ": 0.0,
|
||||
"positionX": 3.0,
|
||||
"positionY": 0.0,
|
||||
"positionZ": 3.85,
|
||||
"scale": 1.0,
|
||||
"interactionRadius": 0.0
|
||||
},
|
||||
{
|
||||
"name": "intRoof",
|
||||
"texturePath": "resources/w/shelter/models/intRoof_atlas.png",
|
||||
"meshPath": "resources/w/shelter/models/intRoof.txt",
|
||||
"rotationX": 0.0,
|
||||
"rotationY": 0.0,
|
||||
"rotationZ": 0.0,
|
||||
"positionX": 0.0,
|
||||
"positionY": 0.0,
|
||||
"positionZ": 0.0,
|
||||
"scale": 1.0,
|
||||
"interactionRadius": 0.0
|
||||
},
|
||||
{
|
||||
"name": "intVending.00",
|
||||
"texturePath": "resources/w/shelter/models/vending_atlas.png",
|
||||
"meshPath": "resources/w/shelter/models/intVending.txt",
|
||||
"rotationX": 0.0,
|
||||
"rotationY": -90.0,
|
||||
"rotationZ": 0.0,
|
||||
"positionX": -1.0,
|
||||
"positionY": 0.0,
|
||||
"positionZ": -3.9,
|
||||
"scale": 1.0,
|
||||
"interactionRadius": 0.0
|
||||
},
|
||||
{
|
||||
"name": "intVending.01",
|
||||
"texturePath": "resources/w/shelter/models/vending_atlas.png",
|
||||
"meshPath": "resources/w/shelter/models/intVending.txt",
|
||||
"rotationX": 0.0,
|
||||
"rotationY": -90.0,
|
||||
"rotationZ": 0.0,
|
||||
"positionX": 0.0,
|
||||
"positionY": 0.0,
|
||||
"positionZ": -3.9,
|
||||
"scale": 1.0,
|
||||
"interactionRadius": 0.0
|
||||
},
|
||||
{
|
||||
"name": "intVending.02",
|
||||
"texturePath": "resources/w/shelter/models/vending_atlas.png",
|
||||
"meshPath": "resources/w/shelter/models/intVending.txt",
|
||||
"rotationX": 0.0,
|
||||
"rotationY": -90.0,
|
||||
"rotationZ": 0.0,
|
||||
"positionX": 1.0,
|
||||
"positionY": 0.0,
|
||||
"positionZ": -3.9,
|
||||
"scale": 1.0,
|
||||
"interactionRadius": 0.0
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
===Vertices (Split by UV/Normal): 20
|
||||
V 0: Pos(0.8, -0.225, 0.42) Norm(0.0, 0.0, 1.0) UV(-0.5, 1.777778)
|
||||
V 1: Pos(-0.8, 0.225, 0.42) Norm(0.0, 0.0, 1.0) UV(0.5, -1.777778)
|
||||
V 2: Pos(-0.8, -0.225, 0.42) Norm(0.0, 0.0, 1.0) UV(-0.5, -1.777778)
|
||||
V 3: Pos(0.8, -0.225, 0.0) Norm(0.0, -1.0, 0.0) UV(0.0, 1.777778)
|
||||
V 4: Pos(-0.8, -0.225, 0.42) Norm(0.0, -1.0, 0.0) UV(0.933333, -1.777778)
|
||||
V 5: Pos(-0.8, -0.225, 0.0) Norm(0.0, -1.0, 0.0) UV(0.0, -1.777778)
|
||||
V 6: Pos(0.8, 0.225, 0.0) Norm(1.0, 0.0, 0.0) UV(0.0, 0.5)
|
||||
V 7: Pos(0.8, -0.225, 0.42) Norm(1.0, 0.0, 0.0) UV(0.933333, -0.5)
|
||||
V 8: Pos(0.8, -0.225, 0.0) Norm(1.0, 0.0, 0.0) UV(0.0, -0.5)
|
||||
V 9: Pos(-0.8, 0.225, 0.0) Norm(0.0, 1.0, 0.0) UV(0.0, -1.777778)
|
||||
V 10: Pos(0.8, 0.225, 0.42) Norm(0.0, 1.0, 0.0) UV(0.933333, 1.777778)
|
||||
V 11: Pos(0.8, 0.225, 0.0) Norm(0.0, 1.0, 0.0) UV(0.0, 1.777778)
|
||||
V 12: Pos(-0.8, -0.225, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, -0.5)
|
||||
V 13: Pos(-0.8, 0.225, 0.42) Norm(-1.0, 0.0, 0.0) UV(0.933333, 0.5)
|
||||
V 14: Pos(-0.8, 0.225, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, 0.5)
|
||||
V 15: Pos(0.8, 0.225, 0.42) Norm(0.0, 0.0, 1.0) UV(0.5, 1.777778)
|
||||
V 16: Pos(0.8, -0.225, 0.42) Norm(0.0, -1.0, 0.0) UV(0.933333, 1.777778)
|
||||
V 17: Pos(0.8, 0.225, 0.42) Norm(1.0, 0.0, 0.0) UV(0.933333, 0.5)
|
||||
V 18: Pos(-0.8, 0.225, 0.42) Norm(0.0, 1.0, 0.0) UV(0.933333, -1.777778)
|
||||
V 19: Pos(-0.8, -0.225, 0.42) Norm(-1.0, 0.0, 0.0) UV(0.933333, -0.5)
|
||||
|
||||
===Triangles (Indices): 10
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 0 15 1
|
||||
Tri: 3 16 4
|
||||
Tri: 6 17 7
|
||||
Tri: 9 18 10
|
||||
Tri: 12 19 13
|
||||
@@ -0,0 +1,33 @@
|
||||
===Vertices (Split by UV/Normal): 20
|
||||
V 0: Pos(0.9, -0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(0.642857, -0.464286)
|
||||
V 1: Pos(-0.9, 0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(-0.642857, 0.464286)
|
||||
V 2: Pos(-0.9, -0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(-0.642857, -0.464286)
|
||||
V 3: Pos(0.9, -0.65, 0.0) Norm(0.0, -1.0, 0.0) UV(0.642857, 0.0)
|
||||
V 4: Pos(-0.9, -0.65, 0.425) Norm(0.0, -1.0, 0.0) UV(-0.642857, 0.303571)
|
||||
V 5: Pos(-0.9, -0.65, 0.0) Norm(0.0, -1.0, 0.0) UV(-0.642857, 0.0)
|
||||
V 6: Pos(0.9, 0.65, 0.0) Norm(1.0, 0.0, 0.0) UV(0.464286, 0.0)
|
||||
V 7: Pos(0.9, -0.65, 0.425) Norm(1.0, 0.0, 0.0) UV(-0.464286, 0.303571)
|
||||
V 8: Pos(0.9, -0.65, 0.0) Norm(1.0, 0.0, 0.0) UV(-0.464286, 0.0)
|
||||
V 9: Pos(-0.9, 0.65, 0.0) Norm(0.0, 1.0, 0.0) UV(-0.642857, 0.0)
|
||||
V 10: Pos(0.9, 0.65, 0.425) Norm(0.0, 1.0, 0.0) UV(0.642857, 0.303571)
|
||||
V 11: Pos(0.9, 0.65, 0.0) Norm(0.0, 1.0, 0.0) UV(0.642857, 0.0)
|
||||
V 12: Pos(-0.9, -0.65, 0.0) Norm(-1.0, 0.0, 0.0) UV(-0.464286, 0.0)
|
||||
V 13: Pos(-0.9, 0.65, 0.425) Norm(-1.0, 0.0, 0.0) UV(0.464286, 0.303571)
|
||||
V 14: Pos(-0.9, 0.65, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.464286, 0.0)
|
||||
V 15: Pos(0.9, 0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(0.642857, 0.464286)
|
||||
V 16: Pos(0.9, -0.65, 0.425) Norm(0.0, -1.0, 0.0) UV(0.642857, 0.303571)
|
||||
V 17: Pos(0.9, 0.65, 0.425) Norm(1.0, 0.0, 0.0) UV(0.464286, 0.303571)
|
||||
V 18: Pos(-0.9, 0.65, 0.425) Norm(0.0, 1.0, 0.0) UV(-0.642857, 0.303571)
|
||||
V 19: Pos(-0.9, -0.65, 0.425) Norm(-1.0, 0.0, 0.0) UV(-0.464286, 0.303571)
|
||||
|
||||
===Triangles (Indices): 10
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 0 15 1
|
||||
Tri: 3 16 4
|
||||
Tri: 6 17 7
|
||||
Tri: 9 18 10
|
||||
Tri: 12 19 13
|
||||
@@ -0,0 +1,33 @@
|
||||
===Vertices (Split by UV/Normal): 20
|
||||
V 0: Pos(1.0, -0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(0.714286, -0.464286)
|
||||
V 1: Pos(-1.0, 0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(-0.714286, 0.464286)
|
||||
V 2: Pos(-1.0, -0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(-0.714286, -0.464286)
|
||||
V 3: Pos(1.0, -0.65, 0.0) Norm(0.0, -1.0, 0.0) UV(0.714286, 0.0)
|
||||
V 4: Pos(-1.0, -0.65, 0.425) Norm(0.0, -1.0, 0.0) UV(-0.714286, 0.303571)
|
||||
V 5: Pos(-1.0, -0.65, 0.0) Norm(0.0, -1.0, 0.0) UV(-0.714286, 0.0)
|
||||
V 6: Pos(1.0, 0.65, 0.0) Norm(1.0, 0.0, 0.0) UV(0.464286, 0.0)
|
||||
V 7: Pos(1.0, -0.65, 0.425) Norm(1.0, 0.0, 0.0) UV(-0.464286, 0.303571)
|
||||
V 8: Pos(1.0, -0.65, 0.0) Norm(1.0, 0.0, 0.0) UV(-0.464286, 0.0)
|
||||
V 9: Pos(-1.0, 0.65, 0.0) Norm(0.0, 1.0, 0.0) UV(-0.714286, 0.0)
|
||||
V 10: Pos(1.0, 0.65, 0.425) Norm(0.0, 1.0, 0.0) UV(0.714286, 0.303571)
|
||||
V 11: Pos(1.0, 0.65, 0.0) Norm(0.0, 1.0, 0.0) UV(0.714286, 0.0)
|
||||
V 12: Pos(-1.0, -0.65, 0.0) Norm(-1.0, 0.0, 0.0) UV(-0.464286, 0.0)
|
||||
V 13: Pos(-1.0, 0.65, 0.425) Norm(-1.0, 0.0, 0.0) UV(0.464286, 0.303571)
|
||||
V 14: Pos(-1.0, 0.65, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.464286, 0.0)
|
||||
V 15: Pos(1.0, 0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(0.714286, 0.464286)
|
||||
V 16: Pos(1.0, -0.65, 0.425) Norm(0.0, -1.0, 0.0) UV(0.714286, 0.303571)
|
||||
V 17: Pos(1.0, 0.65, 0.425) Norm(1.0, 0.0, 0.0) UV(0.464286, 0.303571)
|
||||
V 18: Pos(-1.0, 0.65, 0.425) Norm(0.0, 1.0, 0.0) UV(-0.714286, 0.303571)
|
||||
V 19: Pos(-1.0, -0.65, 0.425) Norm(-1.0, 0.0, 0.0) UV(-0.464286, 0.303571)
|
||||
|
||||
===Triangles (Indices): 10
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 0 15 1
|
||||
Tri: 3 16 4
|
||||
Tri: 6 17 7
|
||||
Tri: 9 18 10
|
||||
Tri: 12 19 13
|
||||
@@ -0,0 +1,33 @@
|
||||
===Vertices (Split by UV/Normal): 20
|
||||
V 0: Pos(1.1, -0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(0.785714, -0.464286)
|
||||
V 1: Pos(-1.1, 0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(-0.785714, 0.464286)
|
||||
V 2: Pos(-1.1, -0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(-0.785714, -0.464286)
|
||||
V 3: Pos(1.1, -0.65, 0.0) Norm(0.0, -1.0, 0.0) UV(0.785714, 0.0)
|
||||
V 4: Pos(-1.1, -0.65, 0.425) Norm(0.0, -1.0, 0.0) UV(-0.785714, 0.303571)
|
||||
V 5: Pos(-1.1, -0.65, 0.0) Norm(0.0, -1.0, 0.0) UV(-0.785714, 0.0)
|
||||
V 6: Pos(1.1, 0.65, 0.0) Norm(1.0, 0.0, 0.0) UV(0.464286, 0.0)
|
||||
V 7: Pos(1.1, -0.65, 0.425) Norm(1.0, 0.0, 0.0) UV(-0.464286, 0.303571)
|
||||
V 8: Pos(1.1, -0.65, 0.0) Norm(1.0, 0.0, 0.0) UV(-0.464286, 0.0)
|
||||
V 9: Pos(-1.1, 0.65, 0.0) Norm(0.0, 1.0, 0.0) UV(-0.785714, 0.0)
|
||||
V 10: Pos(1.1, 0.65, 0.425) Norm(0.0, 1.0, 0.0) UV(0.785714, 0.303571)
|
||||
V 11: Pos(1.1, 0.65, 0.0) Norm(0.0, 1.0, 0.0) UV(0.785714, 0.0)
|
||||
V 12: Pos(-1.1, -0.65, 0.0) Norm(-1.0, 0.0, 0.0) UV(-0.464286, 0.0)
|
||||
V 13: Pos(-1.1, 0.65, 0.425) Norm(-1.0, 0.0, 0.0) UV(0.464286, 0.303571)
|
||||
V 14: Pos(-1.1, 0.65, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.464286, 0.0)
|
||||
V 15: Pos(1.1, 0.65, 0.425) Norm(0.0, 0.0, 1.0) UV(0.785714, 0.464286)
|
||||
V 16: Pos(1.1, -0.65, 0.425) Norm(0.0, -1.0, 0.0) UV(0.785714, 0.303571)
|
||||
V 17: Pos(1.1, 0.65, 0.425) Norm(1.0, 0.0, 0.0) UV(0.464286, 0.303571)
|
||||
V 18: Pos(-1.1, 0.65, 0.425) Norm(0.0, 1.0, 0.0) UV(-0.785714, 0.303571)
|
||||
V 19: Pos(-1.1, -0.65, 0.425) Norm(-1.0, 0.0, 0.0) UV(-0.464286, 0.303571)
|
||||
|
||||
===Triangles (Indices): 10
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 0 15 1
|
||||
Tri: 3 16 4
|
||||
Tri: 6 17 7
|
||||
Tri: 9 18 10
|
||||
Tri: 12 19 13
|
||||
@@ -0,0 +1,59 @@
|
||||
===Vertices (Split by UV/Normal): 38
|
||||
V 0: Pos(-0.273827, 0.117924, -0.041259) Norm(0.406167, 0.85222, 0.329773) UV(0.983398, 0.003906)
|
||||
V 1: Pos(0.089112, -0.373135, 0.780749) Norm(0.406167, 0.85222, 0.329773) UV(0.746094, 0.541016)
|
||||
V 2: Pos(0.232577, -0.129362, -0.025925) Norm(0.406167, 0.85222, 0.329773) UV(0.746094, 0.003906)
|
||||
V 3: Pos(0.271487, 0.12939, -0.023922) Norm(0.427718, -0.876634, -0.220388) UV(0.365234, 0.003906)
|
||||
V 4: Pos(-0.215197, -0.301759, 0.746518) Norm(0.427718, -0.876634, -0.220388) UV(0.001953, 0.753906)
|
||||
V 5: Pos(-0.269386, -0.129645, -0.043262) Norm(0.427718, -0.876634, -0.220388) UV(0.001953, 0.003906)
|
||||
V 6: Pos(0.084147, 0.273081, -0.044571) Norm(0.919987, -0.278934, -0.275353) UV(0.365234, 0.003906)
|
||||
V 7: Pos(0.13565, -0.341112, 0.749688) Norm(0.919987, -0.278934, -0.275353) UV(0.001953, 0.753906)
|
||||
V 8: Pos(-0.084866, -0.306037, -0.022613) Norm(0.919987, -0.278934, -0.275353) UV(0.001953, 0.003906)
|
||||
V 9: Pos(-0.076432, 0.270303, -0.021445) Norm(-0.963595, -0.190035, -0.188071) UV(0.001953, 0.003906)
|
||||
V 10: Pos(-0.093031, -0.334699, 0.674922) Norm(-0.963595, -0.190035, -0.188071) UV(0.365234, 0.753906)
|
||||
V 11: Pos(-0.205527, 0.21168, 0.699217) Norm(-0.963595, -0.190035, -0.188071) UV(0.001953, 0.753906)
|
||||
V 12: Pos(-0.215428, 0.242878, -0.003775) Norm(0.745883, 0.638147, 0.19086) UV(0.742188, 0.003906)
|
||||
V 13: Pos(0.12593, -0.392042, 0.785073) Norm(0.745883, 0.638147, 0.19086) UV(0.369141, 0.753906)
|
||||
V 14: Pos(0.19619, -0.220397, -0.063409) Norm(0.745883, 0.638147, 0.19086) UV(0.369141, 0.003906)
|
||||
V 15: Pos(0.247094, 0.014366, -0.049208) Norm(-0.006139, -0.963923, -0.26611) UV(0.742188, 0.003906)
|
||||
V 16: Pos(-0.245197, -0.183174, 0.677691) Norm(-0.006139, -0.963923, -0.26611) UV(0.369141, 0.753906)
|
||||
V 17: Pos(-0.2877, 0.00915, -0.017976) Norm(-0.006139, -0.963923, -0.26611) UV(0.369141, 0.003906)
|
||||
V 18: Pos(0.300358, 0.14707, -0.004204) Norm(-0.533914, 0.789405, 0.302945) UV(0.001953, 0.003906)
|
||||
V 19: Pos(-0.16047, -0.453601, 0.748836) Norm(-0.533914, 0.789405, 0.302945) UV(0.365234, 0.753906)
|
||||
V 20: Pos(0.376465, -0.113002, 0.807612) Norm(-0.533914, 0.789405, 0.302945) UV(0.001953, 0.753906)
|
||||
V 21: Pos(-0.047381, -0.201038, -0.038127) Norm(-0.962285, 0.163946, -0.217092) UV(0.365234, 0.003906)
|
||||
V 22: Pos(-0.111266, 0.35189, 0.662616) Norm(-0.962285, 0.163946, -0.217092) UV(0.001953, 0.753906)
|
||||
V 23: Pos(0.042398, 0.337932, -0.029057) Norm(-0.962285, 0.163946, -0.217092) UV(0.001953, 0.003906)
|
||||
V 24: Pos(-0.116464, 0.256365, -0.006503) Norm(0.878422, 0.424762, -0.218978) UV(0.365234, 0.003906)
|
||||
V 25: Pos(0.283017, -0.251336, 0.611186) Norm(0.878422, 0.424762, -0.218978) UV(0.001953, 0.753906)
|
||||
V 26: Pos(0.117711, -0.255846, -0.060681) Norm(0.878422, 0.424762, -0.218978) UV(0.001953, 0.003906)
|
||||
V 27: Pos(-0.273827, 0.117924, -0.041259) Norm(0.406167, 0.852219, 0.329773) UV(0.983398, 0.003906)
|
||||
V 28: Pos(-0.417292, -0.12585, 0.765415) Norm(0.406167, 0.852219, 0.329773) UV(0.983398, 0.541016)
|
||||
V 29: Pos(0.089112, -0.373135, 0.780749) Norm(0.406167, 0.852219, 0.329773) UV(0.746094, 0.541016)
|
||||
V 30: Pos(0.325676, -0.042723, 0.765857) Norm(0.427718, -0.876634, -0.220388) UV(0.365234, 0.753906)
|
||||
V 31: Pos(0.304663, 0.238007, 0.72773) Norm(0.919987, -0.278934, -0.275353) UV(0.365234, 0.753906)
|
||||
V 32: Pos(0.036063, -0.276076, -0.045739) Norm(-0.963595, -0.190035, -0.188071) UV(0.365234, 0.003906)
|
||||
V 33: Pos(-0.285689, 0.071232, 0.844708) Norm(0.745883, 0.638147, 0.19086) UV(0.742188, 0.753906)
|
||||
V 34: Pos(0.289597, -0.177957, 0.646459) Norm(-0.006139, -0.963923, -0.26611) UV(0.742188, 0.753906)
|
||||
V 35: Pos(-0.236577, -0.19353, -0.06298) Norm(-0.533914, 0.789405, 0.302945) UV(0.365234, 0.003906)
|
||||
V 36: Pos(-0.201045, -0.18708, 0.653547) Norm(-0.962285, 0.163946, -0.217092) UV(0.365234, 0.753906)
|
||||
V 37: Pos(0.048842, 0.260875, 0.665364) Norm(0.878422, 0.424762, -0.218978) UV(0.365234, 0.753906)
|
||||
|
||||
===Triangles (Indices): 18
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 27 28 29
|
||||
Tri: 3 30 4
|
||||
Tri: 6 31 7
|
||||
Tri: 9 32 10
|
||||
Tri: 12 33 13
|
||||
Tri: 15 34 16
|
||||
Tri: 18 35 19
|
||||
Tri: 21 36 22
|
||||
Tri: 24 37 25
|
||||
Binary file not shown.
@@ -0,0 +1,57 @@
|
||||
===Vertices (Split by UV/Normal): 36
|
||||
V 0: Pos(0.133265, -0.192101, -0.0013) Norm(-0.694625, -0.662526, 0.280277) UV(0.730469, 0.000977)
|
||||
V 1: Pos(-0.13907, 0.307041, 0.503644) Norm(-0.694625, -0.662526, 0.280277) UV(0.003906, 0.188477)
|
||||
V 2: Pos(-0.21585, 0.153872, -0.04871) Norm(-0.694625, -0.662526, 0.280277) UV(0.003906, 0.000977)
|
||||
V 3: Pos(-0.256127, -0.073006, -0.006069) Norm(0.151786, -0.9719, 0.17992) UV(0.003906, 0.569336)
|
||||
V 4: Pos(0.293837, 0.115855, 0.55016) Norm(0.151786, -0.9719, 0.17992) UV(0.738281, 0.75293)
|
||||
V 5: Pos(-0.229425, 0.041146, 0.588033) Norm(0.151786, -0.9719, 0.17992) UV(0.003906, 0.75293)
|
||||
V 6: Pos(-0.191629, -0.167851, -0.025647) Norm(-0.592413, 0.793335, -0.140234) UV(0.738281, 0.569336)
|
||||
V 7: Pos(0.159993, 0.18866, 0.5058) Norm(-0.592413, 0.793335, -0.140234) UV(0.003906, 0.75293)
|
||||
V 8: Pos(0.206042, 0.129332, -0.024363) Norm(-0.592413, 0.793335, -0.140234) UV(0.003906, 0.569336)
|
||||
V 9: Pos(-0.106539, -0.239584, -0.004719) Norm(0.94814, -0.274932, 0.159511) UV(0.003906, 0.19043)
|
||||
V 10: Pos(-0.031599, 0.325037, 0.523012) Norm(0.94814, -0.274932, 0.159511) UV(0.75, 0.37793)
|
||||
V 11: Pos(-0.181998, -0.170094, 0.563585) Norm(0.94814, -0.274932, 0.159511) UV(0.003906, 0.37793)
|
||||
V 12: Pos(-0.094517, 0.149949, -0.027188) Norm(0.80139, 0.583703, -0.13063) UV(0.738281, 0.569336)
|
||||
V 13: Pos(0.181239, -0.116976, 0.471807) Norm(0.80139, 0.583703, -0.13063) UV(0.003906, 0.75293)
|
||||
V 14: Pos(0.131929, -0.159971, -0.022823) Norm(0.80139, 0.583703, -0.13063) UV(0.003906, 0.569336)
|
||||
V 15: Pos(-0.191437, 0.116118, -0.017885) Norm(0.498884, 0.83417, -0.235109) UV(0.599609, 0.379883)
|
||||
V 16: Pos(0.270816, 0.004641, 0.567461) Norm(0.498884, 0.83417, -0.235109) UV(0.003906, 0.567383)
|
||||
V 17: Pos(0.178465, -0.109119, -0.032125) Norm(0.498884, 0.83417, -0.235109) UV(0.003906, 0.379883)
|
||||
V 18: Pos(-0.14981, -0.064021, -0.021972) Norm(-0.38218, 0.846186, 0.371359) UV(0.599609, 0.379883)
|
||||
V 19: Pos(0.204279, -0.105789, 0.437609) Norm(-0.38218, 0.846186, 0.371359) UV(0.003906, 0.567383)
|
||||
V 20: Pos(0.117476, 0.059362, -0.028038) Norm(-0.38218, 0.846186, 0.371359) UV(0.003906, 0.379883)
|
||||
V 21: Pos(0.124339, 0.267927, -0.041489) Norm(0.816073, -0.486746, -0.311615) UV(0.75, 0.19043)
|
||||
V 22: Pos(0.056945, -0.26634, 0.616546) Norm(0.816073, -0.486746, -0.311615) UV(0.003906, 0.37793)
|
||||
V 23: Pos(-0.140919, -0.197908, -0.008521) Norm(0.816073, -0.486746, -0.311615) UV(0.003906, 0.19043)
|
||||
V 24: Pos(-0.061648, 0.23025, -0.028801) Norm(-0.921451, -0.369546, -0.119851) UV(0.003906, 0.19043)
|
||||
V 25: Pos(0.052085, -0.250515, 0.579165) Norm(-0.921451, -0.369546, -0.119851) UV(0.75, 0.37793)
|
||||
V 26: Pos(-0.132376, 0.211893, 0.571573) Norm(-0.921451, -0.369546, -0.119851) UV(0.003906, 0.37793)
|
||||
V 27: Pos(0.210045, -0.038932, 0.551054) Norm(-0.694625, -0.662526, 0.280277) UV(0.730469, 0.188477)
|
||||
V 28: Pos(0.267135, 0.001703, -0.043941) Norm(0.151786, -0.9719, 0.17992) UV(0.738281, 0.569336)
|
||||
V 29: Pos(-0.237678, -0.108523, 0.504516) Norm(-0.592413, 0.793335, -0.140234) UV(0.738281, 0.75293)
|
||||
V 30: Pos(0.04386, 0.255547, -0.045292) Norm(0.94814, -0.274932, 0.159511) UV(0.75, 0.19043)
|
||||
V 31: Pos(-0.045207, 0.192944, 0.467443) Norm(0.80139, 0.583703, -0.13063) UV(0.738281, 0.75293)
|
||||
V 32: Pos(-0.099086, 0.229879, 0.581701) Norm(0.498884, 0.83417, -0.235109) UV(0.599609, 0.567383)
|
||||
V 33: Pos(-0.063007, -0.229171, 0.443675) Norm(-0.38218, 0.846186, 0.371359) UV(0.599609, 0.567383)
|
||||
V 34: Pos(0.322203, 0.199495, 0.583579) Norm(0.816073, -0.486746, -0.311615) UV(0.75, 0.37793)
|
||||
V 35: Pos(0.122812, -0.232158, -0.021209) Norm(-0.921451, -0.369546, -0.119851) UV(0.75, 0.19043)
|
||||
|
||||
===Triangles (Indices): 18
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 0 27 1
|
||||
Tri: 3 28 4
|
||||
Tri: 6 29 7
|
||||
Tri: 9 30 10
|
||||
Tri: 12 31 13
|
||||
Tri: 15 32 16
|
||||
Tri: 18 33 19
|
||||
Tri: 21 34 22
|
||||
Tri: 24 35 25
|
||||
Binary file not shown.
@@ -0,0 +1,61 @@
|
||||
===Vertices (Split by UV/Normal): 40
|
||||
V 0: Pos(-0.292955, -0.338813, -0.04835) Norm(-0.732031, 0.638136, -0.238565) UV(0.738281, 0.379883)
|
||||
V 1: Pos(0.085147, 0.491646, 1.012847) Norm(-0.732031, 0.638136, -0.238565) UV(0.003906, 0.563477)
|
||||
V 2: Pos(0.283903, 0.324209, -0.044909) Norm(-0.732031, 0.638136, -0.238565) UV(0.003906, 0.379883)
|
||||
V 3: Pos(0.035732, 0.235767, -0.061544) Norm(0.960162, -0.012499, -0.279163) UV(0.599609, 0.000977)
|
||||
V 4: Pos(0.292007, -0.301712, 0.843961) Norm(0.960162, -0.012499, -0.279163) UV(0.003906, 0.188477)
|
||||
V 5: Pos(0.036819, -0.347008, -0.031715) Norm(0.960162, -0.012499, -0.279163) UV(0.003906, 0.000977)
|
||||
V 6: Pos(-0.212795, 0.188657, -0.055539) Norm(-0.684476, -0.690867, -0.232799) UV(0.003906, 0.19043)
|
||||
V 7: Pos(-0.083911, -0.319072, 1.072278) Norm(-0.684476, -0.690867, -0.232799) UV(0.419922, 0.37793)
|
||||
V 8: Pos(-0.430032, 0.029853, 1.054459) Norm(-0.684476, -0.690867, -0.232799) UV(0.003906, 0.37793)
|
||||
V 9: Pos(-0.339503, -0.008897, -0.065504) Norm(0.234614, 0.933666, -0.270599) UV(0.599609, 0.000977)
|
||||
V 10: Pos(0.269234, 0.115374, 0.89106) Norm(0.234614, 0.933666, -0.270599) UV(0.003906, 0.188477)
|
||||
V 11: Pos(0.264795, -0.149806, -0.027755) Norm(0.234614, 0.933666, -0.270599) UV(0.003906, 0.000977)
|
||||
V 12: Pos(-0.135238, -0.099286, -0.057379) Norm(-0.623123, 0.769021, -0.142562) UV(0.419922, 0.19043)
|
||||
V 13: Pos(0.092676, 0.269747, 0.937106) Norm(-0.623123, 0.769021, -0.142562) UV(0.003906, 0.37793)
|
||||
V 14: Pos(0.217268, 0.190328, -0.03588) Norm(-0.623123, 0.769021, -0.142562) UV(0.003906, 0.19043)
|
||||
V 15: Pos(0.211654, 0.474267, -0.022922) Norm(0.926513, -0.352338, -0.132025) UV(0.738281, 0.379883)
|
||||
V 16: Pos(-0.037064, -0.578193, 1.040368) Norm(0.926513, -0.352338, -0.132025) UV(0.003906, 0.563477)
|
||||
V 17: Pos(-0.156653, -0.476473, -0.070336) Norm(0.926513, -0.352338, -0.132025) UV(0.003906, 0.379883)
|
||||
V 18: Pos(-0.122412, 0.493975, -0.016249) Norm(0.983724, 0.100766, 0.148774) UV(0.738281, 0.379883)
|
||||
V 19: Pos(-0.184249, -0.529219, 1.085646) Norm(0.983724, 0.100766, 0.148774) UV(0.003906, 0.563477)
|
||||
V 20: Pos(-0.01812, -0.434469, -0.07701) Norm(0.983724, 0.100766, 0.148774) UV(0.003906, 0.379883)
|
||||
V 21: Pos(0.320231, -0.225643, -0.012691) Norm(-0.475633, -0.833093, -0.282364) UV(0.599609, 0.000977)
|
||||
V 22: Pos(-0.541321, -0.082362, 1.015826) Norm(-0.475633, -0.833093, -0.282364) UV(0.003906, 0.188477)
|
||||
V 23: Pos(-0.281624, 0.140977, -0.080568) Norm(-0.475633, -0.833093, -0.282364) UV(0.003906, 0.000977)
|
||||
V 24: Pos(-0.409436, -0.029761, -0.026775) Norm(-0.198202, 0.972619, -0.121364) UV(0.478516, 0.56543)
|
||||
V 25: Pos(0.430501, 0.263898, 0.954906) Norm(-0.198202, 0.972619, -0.121364) UV(0.003906, 0.699707)
|
||||
V 26: Pos(0.40697, 0.131653, -0.066483) Norm(-0.198202, 0.972619, -0.121364) UV(0.003906, 0.56543)
|
||||
V 27: Pos(-0.491711, -0.171377, 1.009405) Norm(-0.732031, 0.638136, -0.238565) UV(0.738281, 0.563477)
|
||||
V 28: Pos(0.290921, 0.281063, 0.814133) Norm(0.960162, -0.012499, -0.279163) UV(0.599609, 0.188477)
|
||||
V 29: Pos(-0.212795, 0.188657, -0.055539) Norm(-0.684477, -0.690867, -0.232799) UV(0.003906, 0.19043)
|
||||
V 30: Pos(0.133326, -0.160268, -0.03772) Norm(-0.684477, -0.690867, -0.232799) UV(0.419922, 0.19043)
|
||||
V 31: Pos(-0.083911, -0.319072, 1.072278) Norm(-0.684477, -0.690867, -0.232799) UV(0.419922, 0.37793)
|
||||
V 32: Pos(-0.335064, 0.256283, 0.853312) Norm(0.234614, 0.933666, -0.270599) UV(0.599609, 0.188477)
|
||||
V 33: Pos(-0.25983, -0.019868, 0.915607) Norm(-0.623123, 0.769021, -0.142562) UV(0.419922, 0.37793)
|
||||
V 34: Pos(0.331244, 0.372548, 1.087782) Norm(0.926513, -0.352338, -0.132025) UV(0.738281, 0.563477)
|
||||
V 35: Pos(-0.288542, 0.399225, 1.146407) Norm(0.983724, 0.100766, 0.148774) UV(0.738281, 0.563477)
|
||||
V 36: Pos(0.060535, -0.448982, 1.083703) Norm(-0.475633, -0.833093, -0.282364) UV(0.599609, 0.188477)
|
||||
V 37: Pos(-0.409436, -0.029761, -0.026775) Norm(-0.198202, 0.972618, -0.121364) UV(0.478516, 0.56543)
|
||||
V 38: Pos(-0.385905, 0.102484, 0.994614) Norm(-0.198202, 0.972618, -0.121364) UV(0.478516, 0.699707)
|
||||
V 39: Pos(0.430501, 0.263898, 0.954906) Norm(-0.198202, 0.972618, -0.121364) UV(0.003906, 0.699707)
|
||||
|
||||
===Triangles (Indices): 18
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 0 27 1
|
||||
Tri: 3 28 4
|
||||
Tri: 29 30 31
|
||||
Tri: 9 32 10
|
||||
Tri: 12 33 13
|
||||
Tri: 15 34 16
|
||||
Tri: 18 35 19
|
||||
Tri: 21 36 22
|
||||
Tri: 37 38 39
|
||||
Binary file not shown.
@@ -0,0 +1,57 @@
|
||||
===Vertices (Split by UV/Normal): 36
|
||||
V 0: Pos(-0.187384, 0.224667, -0.016321) Norm(-0.728664, -0.642917, 0.236023) UV(0.003906, 0.000977)
|
||||
V 1: Pos(0.25306, -0.085312, 0.499073) Norm(-0.728664, -0.642917, 0.236023) UV(0.730469, 0.188477)
|
||||
V 2: Pos(-0.081565, 0.298769, 0.512219) Norm(-0.728664, -0.642917, 0.236023) UV(0.003906, 0.188477)
|
||||
V 3: Pos(-0.217149, 0.025089, -0.007047) Norm(0.139576, 0.927931, -0.345633) UV(0.478516, 0.56543)
|
||||
V 4: Pos(0.371139, 0.134414, 0.524029) Norm(0.139576, 0.927931, -0.345633) UV(0.003906, 0.699707)
|
||||
V 5: Pos(0.302301, -0.06485, -0.038741) Norm(0.139576, 0.927931, -0.345633) UV(0.003906, 0.56543)
|
||||
V 6: Pos(-0.145425, -0.088444, -0.016731) Norm(0.551714, -0.775446, 0.307074) UV(0.003906, 0.379883)
|
||||
V 7: Pos(0.103839, 0.257524, 0.409087) Norm(0.551714, -0.775446, 0.307074) UV(0.738281, 0.563477)
|
||||
V 8: Pos(-0.214871, 0.03565, 0.421413) Norm(0.551714, -0.775446, 0.307074) UV(0.003906, 0.563477)
|
||||
V 9: Pos(0.011233, 0.155862, -0.01215) Norm(0.905965, -0.244038, -0.345938) UV(0.478516, 0.56543)
|
||||
V 10: Pos(0.065129, -0.245427, 0.412083) Norm(0.905965, -0.244038, -0.345938) UV(0.003906, 0.699707)
|
||||
V 11: Pos(-0.08527, -0.171931, -0.033638) Norm(0.905965, -0.244038, -0.345938) UV(0.003906, 0.56543)
|
||||
V 12: Pos(0.174263, -0.191998, -0.04718) Norm(-0.689648, -0.678694, 0.252508) UV(0.75, 0.19043)
|
||||
V 13: Pos(-0.049463, 0.24368, 0.512803) Norm(-0.689648, -0.678694, 0.252508) UV(0.003906, 0.37793)
|
||||
V 14: Pos(-0.18047, 0.186531, 0.001392) Norm(-0.689648, -0.678694, 0.252508) UV(0.003906, 0.19043)
|
||||
V 15: Pos(0.258449, -0.054672, -0.024131) Norm(-0.149538, -0.952501, -0.265292) UV(0.738281, 0.379883)
|
||||
V 16: Pos(-0.275248, -0.130355, 0.548434) Norm(-0.149538, -0.952501, -0.265292) UV(0.003906, 0.563477)
|
||||
V 17: Pos(-0.25381, 0.025062, -0.021657) Norm(-0.149538, -0.952501, -0.265292) UV(0.003906, 0.379883)
|
||||
V 18: Pos(-0.17845, -0.048121, -0.01971) Norm(-0.22137, 0.913185, -0.342183) UV(0.75, 0.19043)
|
||||
V 19: Pos(0.195669, 0.209498, 0.425768) Norm(-0.22137, 0.913185, -0.342183) UV(0.003906, 0.37793)
|
||||
V 20: Pos(0.226831, 0.047739, -0.026077) Norm(-0.22137, 0.913185, -0.342183) UV(0.003906, 0.19043)
|
||||
V 21: Pos(-0.077075, -0.18721, -0.02324) Norm(0.862163, -0.455545, -0.221707) UV(0.003906, 0.56543)
|
||||
V 22: Pos(0.205583, 0.079241, 0.528464) Norm(0.862163, -0.455545, -0.221707) UV(0.478516, 0.699707)
|
||||
V 23: Pos(0.033186, -0.246699, 0.527772) Norm(0.862163, -0.455545, -0.221707) UV(0.003906, 0.699707)
|
||||
V 24: Pos(0.063748, -0.306486, -0.032498) Norm(-0.965932, -0.093567, 0.241288) UV(0.730469, 0.000977)
|
||||
V 25: Pos(0.159653, 0.256417, 0.569718) Norm(-0.965932, -0.093567, 0.241288) UV(0.003906, 0.188477)
|
||||
V 26: Pos(0.013368, 0.263139, -0.01329) Norm(-0.965932, -0.093567, 0.241288) UV(0.003906, 0.000977)
|
||||
V 27: Pos(0.147241, -0.159413, -0.029467) Norm(-0.728664, -0.642917, 0.236023) UV(0.730469, 0.000977)
|
||||
V 28: Pos(-0.148312, 0.224354, 0.555723) Norm(0.139576, 0.927931, -0.345633) UV(0.478516, 0.699707)
|
||||
V 29: Pos(0.173285, 0.13343, -0.029057) Norm(0.551714, -0.775446, 0.307074) UV(0.738281, 0.379883)
|
||||
V 30: Pos(0.161631, 0.082366, 0.433571) Norm(0.905965, -0.244038, -0.345938) UV(0.478516, 0.699707)
|
||||
V 31: Pos(0.305271, -0.13485, 0.464232) Norm(-0.689648, -0.678694, 0.252508) UV(0.75, 0.37793)
|
||||
V 32: Pos(0.237011, -0.210089, 0.54596) Norm(-0.149538, -0.952501, -0.265292) UV(0.738281, 0.563477)
|
||||
V 33: Pos(-0.209612, 0.113637, 0.432135) Norm(-0.22137, 0.913185, -0.342183) UV(0.75, 0.37793)
|
||||
V 34: Pos(0.095321, 0.13873, -0.022548) Norm(0.862163, -0.455545, -0.221707) UV(0.478516, 0.56543)
|
||||
V 35: Pos(0.210033, -0.313208, 0.55051) Norm(-0.965932, -0.093567, 0.241288) UV(0.730469, 0.188477)
|
||||
|
||||
===Triangles (Indices): 18
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 0 27 1
|
||||
Tri: 3 28 4
|
||||
Tri: 6 29 7
|
||||
Tri: 9 30 10
|
||||
Tri: 12 31 13
|
||||
Tri: 15 32 16
|
||||
Tri: 18 33 19
|
||||
Tri: 21 34 22
|
||||
Tri: 24 35 25
|
||||
Binary file not shown.
@@ -0,0 +1,59 @@
|
||||
===Vertices (Split by UV/Normal): 38
|
||||
V 0: Pos(-0.194076, 0.123011, -0.046649) Norm(0.669016, 0.727036, -0.154393) UV(0.209961, 0.003906)
|
||||
V 1: Pos(0.15808, -0.018483, 0.813016) Norm(0.669016, 0.727036, -0.154393) UV(0.001953, 0.753906)
|
||||
V 2: Pos(0.093677, -0.138541, -0.031409) Norm(0.669016, 0.727036, -0.154393) UV(0.001953, 0.003906)
|
||||
V 3: Pos(-0.18968, -0.022063, -0.047687) Norm(-0.33455, 0.899291, -0.281696) UV(0.209961, 0.003906)
|
||||
V 4: Pos(0.051268, 0.378755, 0.945735) Norm(-0.33455, 0.899291, -0.281696) UV(0.001953, 0.753906)
|
||||
V 5: Pos(0.193123, 0.12577, -0.030371) Norm(-0.33455, 0.899291, -0.281696) UV(0.001953, 0.003906)
|
||||
V 6: Pos(-0.370549, -0.360478, -0.041809) Norm(-0.647232, 0.707403, -0.284027) UV(0.586914, 0.003906)
|
||||
V 7: Pos(0.091065, 0.453011, 0.932369) Norm(-0.647232, 0.707403, -0.284027) UV(0.213867, 0.753906)
|
||||
V 8: Pos(0.289575, 0.245729, -0.036249) Norm(-0.647232, 0.707403, -0.284027) UV(0.213867, 0.003906)
|
||||
V 9: Pos(0.05025, -0.29813, -0.063938) Norm(-0.953061, -0.229138, 0.197917) UV(0.888672, 0.003906)
|
||||
V 10: Pos(0.090846, 0.26625, 0.78496) Norm(-0.953061, -0.229138, 0.197917) UV(0.59082, 0.753906)
|
||||
V 11: Pos(-0.08197, 0.294849, -0.01412) Norm(-0.953061, -0.229138, 0.197917) UV(0.59082, 0.003906)
|
||||
V 12: Pos(0.143008, -0.209035, -0.035602) Norm(-0.662004, -0.726789, -0.18311) UV(0.209961, 0.003906)
|
||||
V 13: Pos(-0.365585, -0.000767, 0.976489) Norm(-0.662004, -0.726789, -0.18311) UV(0.001953, 0.753906)
|
||||
V 14: Pos(-0.22714, 0.129845, -0.042456) Norm(-0.662004, -0.726789, -0.18311) UV(0.001953, 0.003906)
|
||||
V 15: Pos(0.221702, -0.039002, -0.0578) Norm(-0.316479, -0.910379, 0.266555) UV(0.209961, 0.003906)
|
||||
V 16: Pos(-0.00618, 0.344801, 0.982457) Norm(-0.316479, -0.910379, 0.266555) UV(0.001953, 0.753906)
|
||||
V 17: Pos(-0.185325, 0.113486, -0.020258) Norm(-0.316479, -0.910379, 0.266555) UV(0.001953, 0.003906)
|
||||
V 18: Pos(-0.2121, -0.159534, -0.060435) Norm(-0.637761, 0.730999, 0.242695) UV(0.209961, 0.003906)
|
||||
V 19: Pos(0.203941, -0.106425, 0.872885) Norm(-0.637761, 0.730999, 0.242695) UV(0.001953, 0.753906)
|
||||
V 20: Pos(0.126795, 0.121921, -0.017623) Norm(-0.637761, 0.730999, 0.242695) UV(0.001953, 0.003906)
|
||||
V 21: Pos(0.133756, 0.088742, -0.053448) Norm(0.875994, -0.456881, 0.154581) UV(0.209961, 0.003906)
|
||||
V 22: Pos(-0.093702, -0.07497, 0.751663) Norm(0.875994, -0.456881, 0.154581) UV(0.001953, 0.753906)
|
||||
V 23: Pos(-0.018984, -0.194356, -0.02461) Norm(0.875994, -0.456881, 0.154581) UV(0.001953, 0.003906)
|
||||
V 24: Pos(0.077842, -0.199044, -0.042973) Norm(-0.927352, -0.296153, -0.228719) UV(0.888672, 0.003906)
|
||||
V 25: Pos(-0.287629, 0.234914, 0.876944) Norm(-0.927352, -0.296153, -0.228719) UV(0.59082, 0.753906)
|
||||
V 26: Pos(-0.087795, 0.313526, -0.035085) Norm(-0.927352, -0.296153, -0.228719) UV(0.59082, 0.003906)
|
||||
V 27: Pos(-0.129673, 0.243069, 0.797776) Norm(0.669016, 0.727036, -0.154393) UV(0.209961, 0.753906)
|
||||
V 28: Pos(-0.331536, 0.230922, 0.928418) Norm(-0.33455, 0.899291, -0.281696) UV(0.209961, 0.753906)
|
||||
V 29: Pos(-0.569059, -0.153196, 0.926809) Norm(-0.647232, 0.707403, -0.284027) UV(0.586914, 0.753906)
|
||||
V 30: Pos(0.05025, -0.29813, -0.063938) Norm(-0.953061, -0.229138, 0.197916) UV(0.888672, 0.003906)
|
||||
V 31: Pos(0.223066, -0.326728, 0.735142) Norm(-0.953061, -0.229138, 0.197916) UV(0.888672, 0.753906)
|
||||
V 32: Pos(0.090846, 0.26625, 0.78496) Norm(-0.953061, -0.229138, 0.197916) UV(0.59082, 0.753906)
|
||||
V 33: Pos(0.004562, -0.339647, 0.983343) Norm(-0.662004, -0.726789, -0.18311) UV(0.209961, 0.753906)
|
||||
V 34: Pos(0.400846, 0.192312, 0.944916) Norm(-0.316479, -0.910379, 0.266555) UV(0.209961, 0.753906)
|
||||
V 35: Pos(-0.134953, -0.38788, 0.830073) Norm(-0.637761, 0.730999, 0.242695) UV(0.209961, 0.753906)
|
||||
V 36: Pos(0.059039, 0.208128, 0.722826) Norm(0.875994, -0.456881, 0.154581) UV(0.209961, 0.753906)
|
||||
V 37: Pos(-0.121992, -0.277657, 0.869055) Norm(-0.927352, -0.296153, -0.228719) UV(0.888672, 0.753906)
|
||||
|
||||
===Triangles (Indices): 18
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 0 27 1
|
||||
Tri: 3 28 4
|
||||
Tri: 6 29 7
|
||||
Tri: 30 31 32
|
||||
Tri: 12 33 13
|
||||
Tri: 15 34 16
|
||||
Tri: 18 35 19
|
||||
Tri: 21 36 22
|
||||
Tri: 24 37 25
|
||||
Binary file not shown.
@@ -0,0 +1,59 @@
|
||||
===Vertices (Split by UV/Normal): 38
|
||||
V 0: Pos(-0.287772, 0.212075, -0.06502) Norm(-0.422692, -0.845709, -0.325741) UV(0.003906, 0.000977)
|
||||
V 1: Pos(0.202895, -0.365009, 0.796538) Norm(-0.422692, -0.845709, -0.325741) UV(0.75, 0.188477)
|
||||
V 2: Pos(-0.476607, -0.000881, 0.732911) Norm(-0.422692, -0.845709, -0.325741) UV(0.003906, 0.188477)
|
||||
V 3: Pos(-0.260455, -0.017642, -0.050798) Norm(-0.258856, 0.927135, 0.270952) UV(0.599609, 0.19043)
|
||||
V 4: Pos(0.278523, -0.07725, 0.668084) Norm(-0.258856, 0.927135, 0.270952) UV(0.003906, 0.37793)
|
||||
V 5: Pos(0.272212, 0.120796, -0.015614) Norm(-0.258856, 0.927135, 0.270952) UV(0.003906, 0.19043)
|
||||
V 6: Pos(0.160515, 0.270502, -0.013662) Norm(0.788054, -0.581485, -0.202104) UV(0.738281, 0.379883)
|
||||
V 7: Pos(-0.15246, -0.424885, 0.766704) Norm(0.788054, -0.581485, -0.202104) UV(0.003906, 0.563477)
|
||||
V 8: Pos(-0.260105, -0.285956, -0.052749) Norm(0.788054, -0.581485, -0.202104) UV(0.003906, 0.379883)
|
||||
V 9: Pos(0.031654, -0.383817, -0.010768) Norm(-0.934758, -0.052196, -0.351431) UV(0.738281, 0.379883)
|
||||
V 10: Pos(-0.308207, 0.450217, 0.769342) Norm(-0.934758, -0.052196, -0.351431) UV(0.003906, 0.563477)
|
||||
V 11: Pos(0.003938, 0.414687, -0.055644) Norm(-0.934758, -0.052196, -0.351431) UV(0.003906, 0.379883)
|
||||
V 12: Pos(0.133462, -0.218948, -0.042286) Norm(-0.721926, -0.644237, 0.252551) UV(0.599609, 0.19043)
|
||||
V 13: Pos(-0.096995, 0.358122, 0.771001) Norm(-0.721926, -0.644237, 0.252551) UV(0.003906, 0.37793)
|
||||
V 14: Pos(-0.268696, 0.238826, -0.024125) Norm(-0.721926, -0.644237, 0.252551) UV(0.003906, 0.19043)
|
||||
V 15: Pos(-0.292382, 0.000112, -0.017284) Norm(0.072486, 0.972431, 0.22164) UV(0.75, 0.000977)
|
||||
V 16: Pos(0.319726, -0.217756, 0.738407) Norm(0.072486, 0.972431, 0.22164) UV(0.003906, 0.188477)
|
||||
V 17: Pos(0.287782, -0.035877, -0.049128) Norm(0.072486, 0.972431, 0.22164) UV(0.003906, 0.000977)
|
||||
V 18: Pos(-0.171318, -0.131958, -0.025979) Norm(-0.632722, 0.678948, 0.372414) UV(0.599609, 0.19043)
|
||||
V 19: Pos(0.425246, -0.000126, 0.747226) Norm(-0.632722, 0.678948, 0.372414) UV(0.003906, 0.37793)
|
||||
V 20: Pos(0.190416, 0.213075, -0.040433) Norm(-0.632722, 0.678948, 0.372414) UV(0.003906, 0.19043)
|
||||
V 21: Pos(-0.059444, -0.362402, -0.03028) Norm(-0.914595, 0.15541, -0.373315) UV(0.75, 0.000977)
|
||||
V 22: Pos(-0.237298, 0.350833, 0.702366) Norm(-0.914595, 0.15541, -0.373315) UV(0.003906, 0.188477)
|
||||
V 23: Pos(0.054416, 0.293616, -0.036131) Norm(-0.914595, 0.15541, -0.373315) UV(0.003906, 0.000977)
|
||||
V 24: Pos(0.123917, -0.249907, -0.029496) Norm(-0.85265, -0.486589, -0.190314) UV(0.478516, 0.56543)
|
||||
V 25: Pos(-0.287666, 0.198497, 0.668024) Norm(-0.85265, -0.486589, -0.190314) UV(0.003906, 0.699707)
|
||||
V 26: Pos(-0.16437, 0.258162, -0.036916) Norm(-0.85265, -0.486589, -0.190314) UV(0.003906, 0.56543)
|
||||
V 27: Pos(-0.287772, 0.212075, -0.06502) Norm(-0.422692, -0.84571, -0.325741) UV(0.003906, 0.000977)
|
||||
V 28: Pos(0.39173, -0.152052, -0.001392) Norm(-0.422692, -0.84571, -0.325741) UV(0.75, 0.000977)
|
||||
V 29: Pos(0.202895, -0.365009, 0.796538) Norm(-0.422692, -0.84571, -0.325741) UV(0.75, 0.188477)
|
||||
V 30: Pos(-0.254143, -0.215688, 0.6329) Norm(-0.258856, 0.927135, 0.270952) UV(0.599609, 0.37793)
|
||||
V 31: Pos(0.26816, 0.131573, 0.805791) Norm(0.788054, -0.581485, -0.202104) UV(0.738281, 0.563477)
|
||||
V 32: Pos(-0.280492, -0.348287, 0.814218) Norm(-0.934758, -0.052196, -0.351431) UV(0.738281, 0.563477)
|
||||
V 33: Pos(0.305163, -0.099652, 0.75284) Norm(-0.721926, -0.644237, 0.252551) UV(0.599609, 0.37793)
|
||||
V 34: Pos(-0.260438, -0.181767, 0.770251) Norm(0.072486, 0.972431, 0.22164) UV(0.75, 0.188477)
|
||||
V 35: Pos(0.063513, -0.345159, 0.76168) Norm(-0.632722, 0.678948, 0.372414) UV(0.599609, 0.37793)
|
||||
V 36: Pos(-0.351158, -0.305186, 0.708216) Norm(-0.914595, 0.15541, -0.373315) UV(0.75, 0.188477)
|
||||
V 37: Pos(0.000622, -0.309572, 0.675444) Norm(-0.85265, -0.486589, -0.190314) UV(0.478516, 0.699707)
|
||||
|
||||
===Triangles (Indices): 18
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 27 28 29
|
||||
Tri: 3 30 4
|
||||
Tri: 6 31 7
|
||||
Tri: 9 32 10
|
||||
Tri: 12 33 13
|
||||
Tri: 15 34 16
|
||||
Tri: 18 35 19
|
||||
Tri: 21 36 22
|
||||
Tri: 24 37 25
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,81 @@
|
||||
===Vertices (Split by UV/Normal): 52
|
||||
V 0: Pos(-4.5, -4.5, 0.2) Norm(0.0, 0.0, 1.0) UV(-4.5, 0.98)
|
||||
V 1: Pos(-4.68, 4.5, 0.2) Norm(0.0, 0.0, 1.0) UV(4.5, 0.52)
|
||||
V 2: Pos(-4.68, -4.5, 0.2) Norm(0.0, 0.0, 1.0) UV(-4.5, 0.52)
|
||||
V 3: Pos(-4.5, -4.5, -0.02) Norm(0.0, -1.0, 0.0) UV(-4.5, 0.02)
|
||||
V 4: Pos(-4.68, -4.5, 0.2) Norm(0.0, -1.0, 0.0) UV(-4.5, 0.48)
|
||||
V 5: Pos(-4.68, -4.5, -0.02) Norm(0.0, -1.0, 0.0) UV(-4.5, 0.02)
|
||||
V 6: Pos(-4.5, 4.5, -0.02) Norm(1.0, 0.0, 0.0) UV(4.5, 0.02)
|
||||
V 7: Pos(-4.5, -4.5, 0.2) Norm(1.0, 0.0, 0.0) UV(-4.5, 0.48)
|
||||
V 8: Pos(-4.5, -4.5, -0.02) Norm(1.0, 0.0, 0.0) UV(-4.5, 0.02)
|
||||
V 9: Pos(-4.68, -4.5, -0.02) Norm(-1.0, 0.0, 0.0) UV(-4.5, 0.02)
|
||||
V 10: Pos(-4.68, 4.5, 0.2) Norm(-1.0, 0.0, 0.0) UV(4.5, 0.48)
|
||||
V 11: Pos(-4.68, 4.5, -0.02) Norm(-1.0, 0.0, 0.0) UV(4.5, 0.02)
|
||||
V 12: Pos(4.68, -4.5, 0.2) Norm(0.0, 0.0, 1.0) UV(-4.5, 0.98)
|
||||
V 13: Pos(4.5, 4.5, 0.2) Norm(0.0, 0.0, 1.0) UV(4.5, 0.52)
|
||||
V 14: Pos(4.5, -4.5, 0.2) Norm(0.0, 0.0, 1.0) UV(-4.5, 0.52)
|
||||
V 15: Pos(4.68, -4.5, -0.02) Norm(0.0, -1.0, 0.0) UV(-4.5, 0.02)
|
||||
V 16: Pos(4.5, -4.5, 0.2) Norm(0.0, -1.0, 0.0) UV(-4.5, 0.48)
|
||||
V 17: Pos(4.5, -4.5, -0.02) Norm(0.0, -1.0, 0.0) UV(-4.5, 0.02)
|
||||
V 18: Pos(4.68, 4.5, -0.02) Norm(1.0, 0.0, 0.0) UV(4.5, 0.02)
|
||||
V 19: Pos(4.68, -4.5, 0.2) Norm(1.0, 0.0, 0.0) UV(-4.5, 0.48)
|
||||
V 20: Pos(4.68, -4.5, -0.02) Norm(1.0, 0.0, 0.0) UV(-4.5, 0.02)
|
||||
V 21: Pos(4.5, -4.5, -0.02) Norm(-1.0, 0.0, 0.0) UV(-4.5, 0.02)
|
||||
V 22: Pos(4.5, 4.5, 0.2) Norm(-1.0, 0.0, 0.0) UV(4.5, 0.48)
|
||||
V 23: Pos(4.5, 4.5, -0.02) Norm(-1.0, 0.0, 0.0) UV(4.5, 0.02)
|
||||
V 24: Pos(4.68, 4.5, 0.2) Norm(0.0, 0.0, 1.0) UV(4.68, 0.52)
|
||||
V 25: Pos(-4.68, 4.68, 0.2) Norm(0.0, 0.0, 1.0) UV(-4.68, 0.98)
|
||||
V 26: Pos(-4.68, 4.5, 0.2) Norm(0.0, 0.0, 1.0) UV(-4.68, 0.52)
|
||||
V 27: Pos(4.68, 4.5, -0.02) Norm(0.0, -1.0, 0.0) UV(4.68, 0.02)
|
||||
V 28: Pos(-4.68, 4.5, 0.2) Norm(0.0, -1.0, 0.0) UV(-4.68, 0.48)
|
||||
V 29: Pos(-4.68, 4.5, -0.02) Norm(0.0, -1.0, 0.0) UV(-4.68, 0.02)
|
||||
V 30: Pos(4.68, 4.68, -0.02) Norm(1.0, 0.0, 0.0) UV(4.68, 0.02)
|
||||
V 31: Pos(4.68, 4.5, 0.2) Norm(1.0, 0.0, 0.0) UV(4.68, 0.48)
|
||||
V 32: Pos(4.68, 4.5, -0.02) Norm(1.0, 0.0, 0.0) UV(4.68, 0.02)
|
||||
V 33: Pos(-4.68, 4.68, -0.02) Norm(0.0, 1.0, 0.0) UV(-4.68, 0.02)
|
||||
V 34: Pos(4.68, 4.68, 0.2) Norm(0.0, 1.0, 0.0) UV(4.68, 0.48)
|
||||
V 35: Pos(4.68, 4.68, -0.02) Norm(0.0, 1.0, 0.0) UV(4.68, 0.02)
|
||||
V 36: Pos(-4.68, 4.5, -0.02) Norm(-1.0, 0.0, 0.0) UV(-4.68, 0.02)
|
||||
V 37: Pos(-4.68, 4.68, 0.2) Norm(-1.0, 0.0, 0.0) UV(-4.68, 0.48)
|
||||
V 38: Pos(-4.68, 4.68, -0.02) Norm(-1.0, 0.0, 0.0) UV(-4.68, 0.02)
|
||||
V 39: Pos(-4.5, 4.5, 0.2) Norm(0.0, 0.0, 1.0) UV(4.5, 0.98)
|
||||
V 40: Pos(-4.5, -4.5, 0.2) Norm(0.0, -1.0, 0.0) UV(-4.5, 0.48)
|
||||
V 41: Pos(-4.5, 4.5, 0.2) Norm(1.0, 0.0, 0.0) UV(4.5, 0.48)
|
||||
V 42: Pos(-4.68, -4.5, 0.2) Norm(-1.0, 0.0, 0.0) UV(-4.5, 0.48)
|
||||
V 43: Pos(4.68, 4.5, 0.2) Norm(0.0, 0.0, 1.0) UV(4.5, 0.98)
|
||||
V 44: Pos(4.68, -4.5, 0.2) Norm(0.0, -1.0, 0.0) UV(-4.5, 0.48)
|
||||
V 45: Pos(4.68, 4.5, 0.2) Norm(1.0, 0.0, 0.0) UV(4.5, 0.48)
|
||||
V 46: Pos(4.5, -4.5, 0.2) Norm(-1.0, 0.0, 0.0) UV(-4.5, 0.48)
|
||||
V 47: Pos(4.68, 4.68, 0.2) Norm(0.0, 0.0, 1.0) UV(4.68, 0.98)
|
||||
V 48: Pos(4.68, 4.5, 0.2) Norm(0.0, -1.0, 0.0) UV(4.68, 0.48)
|
||||
V 49: Pos(4.68, 4.68, 0.2) Norm(1.0, 0.0, 0.0) UV(4.68, 0.48)
|
||||
V 50: Pos(-4.68, 4.68, 0.2) Norm(0.0, 1.0, 0.0) UV(-4.68, 0.48)
|
||||
V 51: Pos(-4.68, 4.5, 0.2) Norm(-1.0, 0.0, 0.0) UV(-4.68, 0.48)
|
||||
|
||||
===Triangles (Indices): 26
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 27 28 29
|
||||
Tri: 30 31 32
|
||||
Tri: 33 34 35
|
||||
Tri: 36 37 38
|
||||
Tri: 0 39 1
|
||||
Tri: 3 40 4
|
||||
Tri: 6 41 7
|
||||
Tri: 9 42 10
|
||||
Tri: 12 43 13
|
||||
Tri: 15 44 16
|
||||
Tri: 18 45 19
|
||||
Tri: 21 46 22
|
||||
Tri: 24 47 25
|
||||
Tri: 27 48 28
|
||||
Tri: 30 49 31
|
||||
Tri: 33 50 34
|
||||
Tri: 36 51 37
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,231 @@
|
||||
===Vertices (Split by UV/Normal): 148
|
||||
V 0: Pos(-1.45, -1.75, 2.55) Norm(0.0, 0.0, 1.0) UV(-0.90625, -1.09375)
|
||||
V 1: Pos(-1.75, -1.45, 2.55) Norm(0.0, 0.0, 1.0) UV(-1.09375, -0.90625)
|
||||
V 2: Pos(-1.75, -1.75, 2.55) Norm(0.0, 0.0, 1.0) UV(-1.09375, -1.09375)
|
||||
V 3: Pos(-1.45, -1.75, 0.0) Norm(0.0, -1.0, 0.0) UV(0.0, -0.90625)
|
||||
V 4: Pos(-1.75, -1.75, 2.55) Norm(0.0, -1.0, 0.0) UV(1.59375, -1.09375)
|
||||
V 5: Pos(-1.75, -1.75, 0.0) Norm(0.0, -1.0, 0.0) UV(0.0, -1.09375)
|
||||
V 6: Pos(-1.45, -1.45, 0.0) Norm(1.0, 0.0, 0.0) UV(0.0, -0.90625)
|
||||
V 7: Pos(-1.45, -1.75, 2.55) Norm(1.0, 0.0, 0.0) UV(1.59375, -1.09375)
|
||||
V 8: Pos(-1.45, -1.75, 0.0) Norm(1.0, 0.0, 0.0) UV(0.0, -1.09375)
|
||||
V 9: Pos(-1.75, -1.45, 0.0) Norm(0.0, 1.0, 0.0) UV(0.0, -1.09375)
|
||||
V 10: Pos(-1.45, -1.45, 2.55) Norm(0.0, 1.0, 0.0) UV(1.59375, -0.90625)
|
||||
V 11: Pos(-1.45, -1.45, 0.0) Norm(0.0, 1.0, 0.0) UV(0.0, -0.90625)
|
||||
V 12: Pos(-1.75, -1.75, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, -1.09375)
|
||||
V 13: Pos(-1.75, -1.45, 2.55) Norm(-1.0, 0.0, 0.0) UV(1.59375, -0.90625)
|
||||
V 14: Pos(-1.75, -1.45, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, -0.90625)
|
||||
V 15: Pos(-1.45, 1.45, 2.55) Norm(0.0, 0.0, 1.0) UV(-0.90625, 0.90625)
|
||||
V 16: Pos(-1.75, 1.75, 2.55) Norm(0.0, 0.0, 1.0) UV(-1.09375, 1.09375)
|
||||
V 17: Pos(-1.75, 1.45, 2.55) Norm(0.0, 0.0, 1.0) UV(-1.09375, 0.90625)
|
||||
V 18: Pos(-1.45, 1.45, 0.0) Norm(0.0, -1.0, 0.0) UV(0.0, -0.90625)
|
||||
V 19: Pos(-1.75, 1.45, 2.55) Norm(0.0, -1.0, 0.0) UV(1.59375, -1.09375)
|
||||
V 20: Pos(-1.75, 1.45, 0.0) Norm(0.0, -1.0, 0.0) UV(0.0, -1.09375)
|
||||
V 21: Pos(-1.45, 1.75, 0.0) Norm(1.0, 0.0, 0.0) UV(0.0, 1.09375)
|
||||
V 22: Pos(-1.45, 1.45, 2.55) Norm(1.0, 0.0, 0.0) UV(1.59375, 0.90625)
|
||||
V 23: Pos(-1.45, 1.45, 0.0) Norm(1.0, 0.0, 0.0) UV(0.0, 0.90625)
|
||||
V 24: Pos(-1.75, 1.75, 0.0) Norm(0.0, 1.0, 0.0) UV(0.0, -1.09375)
|
||||
V 25: Pos(-1.45, 1.75, 2.55) Norm(0.0, 1.0, 0.0) UV(1.59375, -0.90625)
|
||||
V 26: Pos(-1.45, 1.75, 0.0) Norm(0.0, 1.0, 0.0) UV(0.0, -0.90625)
|
||||
V 27: Pos(-1.75, 1.45, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, 0.90625)
|
||||
V 28: Pos(-1.75, 1.75, 2.55) Norm(-1.0, 0.0, 0.0) UV(1.59375, 1.09375)
|
||||
V 29: Pos(-1.75, 1.75, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, 1.09375)
|
||||
V 30: Pos(1.75, -1.75, 2.55) Norm(0.0, 0.0, 1.0) UV(1.09375, -1.09375)
|
||||
V 31: Pos(1.45, -1.45, 2.55) Norm(0.0, 0.0, 1.0) UV(0.90625, -0.90625)
|
||||
V 32: Pos(1.45, -1.75, 2.55) Norm(0.0, 0.0, 1.0) UV(0.90625, -1.09375)
|
||||
V 33: Pos(1.75, -1.75, 0.0) Norm(0.0, -1.0, 0.0) UV(0.0, 1.09375)
|
||||
V 34: Pos(1.45, -1.75, 2.55) Norm(0.0, -1.0, 0.0) UV(1.59375, 0.90625)
|
||||
V 35: Pos(1.45, -1.75, 0.0) Norm(0.0, -1.0, 0.0) UV(0.0, 0.90625)
|
||||
V 36: Pos(1.75, -1.45, 0.0) Norm(1.0, 0.0, 0.0) UV(0.0, -0.90625)
|
||||
V 37: Pos(1.75, -1.75, 2.55) Norm(1.0, 0.0, 0.0) UV(1.59375, -1.09375)
|
||||
V 38: Pos(1.75, -1.75, 0.0) Norm(1.0, 0.0, 0.0) UV(0.0, -1.09375)
|
||||
V 39: Pos(1.45, -1.45, 0.0) Norm(0.0, 1.0, 0.0) UV(0.0, 0.90625)
|
||||
V 40: Pos(1.75, -1.45, 2.55) Norm(0.0, 1.0, 0.0) UV(1.59375, 1.09375)
|
||||
V 41: Pos(1.75, -1.45, 0.0) Norm(0.0, 1.0, 0.0) UV(0.0, 1.09375)
|
||||
V 42: Pos(1.45, -1.75, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, -1.09375)
|
||||
V 43: Pos(1.45, -1.45, 2.55) Norm(-1.0, 0.0, 0.0) UV(1.59375, -0.90625)
|
||||
V 44: Pos(1.45, -1.45, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, -0.90625)
|
||||
V 45: Pos(1.75, 1.45, 2.55) Norm(0.0, 0.0, 1.0) UV(1.09375, 0.90625)
|
||||
V 46: Pos(1.45, 1.75, 2.55) Norm(0.0, 0.0, 1.0) UV(0.90625, 1.09375)
|
||||
V 47: Pos(1.45, 1.45, 2.55) Norm(0.0, 0.0, 1.0) UV(0.90625, 0.90625)
|
||||
V 48: Pos(1.75, 1.45, 0.0) Norm(0.0, -1.0, 0.0) UV(0.0, 1.09375)
|
||||
V 49: Pos(1.45, 1.45, 2.55) Norm(0.0, -1.0, 0.0) UV(1.59375, 0.90625)
|
||||
V 50: Pos(1.45, 1.45, 0.0) Norm(0.0, -1.0, 0.0) UV(0.0, 0.90625)
|
||||
V 51: Pos(1.75, 1.75, 0.0) Norm(1.0, 0.0, 0.0) UV(0.0, 1.09375)
|
||||
V 52: Pos(1.75, 1.45, 2.55) Norm(1.0, 0.0, 0.0) UV(1.59375, 0.90625)
|
||||
V 53: Pos(1.75, 1.45, 0.0) Norm(1.0, 0.0, 0.0) UV(0.0, 0.90625)
|
||||
V 54: Pos(1.45, 1.75, 0.0) Norm(0.0, 1.0, 0.0) UV(0.0, 0.90625)
|
||||
V 55: Pos(1.75, 1.75, 2.55) Norm(0.0, 1.0, 0.0) UV(1.59375, 1.09375)
|
||||
V 56: Pos(1.75, 1.75, 0.0) Norm(0.0, 1.0, 0.0) UV(0.0, 1.09375)
|
||||
V 57: Pos(1.45, 1.45, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, 0.90625)
|
||||
V 58: Pos(1.45, 1.75, 2.55) Norm(-1.0, 0.0, 0.0) UV(1.59375, 1.09375)
|
||||
V 59: Pos(1.45, 1.75, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, 1.09375)
|
||||
V 60: Pos(1.8, 1.4, 2.6) Norm(0.0, 0.0, 1.0) UV(1.125, 0.875)
|
||||
V 61: Pos(-1.8, 1.8, 2.6) Norm(0.0, 0.0, 1.0) UV(-1.125, 1.125)
|
||||
V 62: Pos(-1.8, 1.4, 2.6) Norm(0.0, 0.0, 1.0) UV(-1.125, 0.875)
|
||||
V 63: Pos(1.8, 1.4, 2.2) Norm(0.0, -1.0, 0.0) UV(1.125, 1.375)
|
||||
V 64: Pos(-1.8, 1.4, 2.6) Norm(0.0, -1.0, 0.0) UV(-1.125, 1.625)
|
||||
V 65: Pos(-1.8, 1.4, 2.2) Norm(0.0, -1.0, 0.0) UV(-1.125, 1.375)
|
||||
V 66: Pos(1.8, 1.8, 2.2) Norm(1.0, 0.0, 0.0) UV(1.125, 1.375)
|
||||
V 67: Pos(1.8, 1.4, 2.6) Norm(1.0, 0.0, 0.0) UV(0.875, 1.625)
|
||||
V 68: Pos(1.8, 1.4, 2.2) Norm(1.0, 0.0, 0.0) UV(0.875, 1.375)
|
||||
V 69: Pos(-1.8, 1.8, 2.2) Norm(0.0, 1.0, 0.0) UV(-1.125, 1.375)
|
||||
V 70: Pos(1.8, 1.8, 2.6) Norm(0.0, 1.0, 0.0) UV(1.125, 1.625)
|
||||
V 71: Pos(1.8, 1.8, 2.2) Norm(0.0, 1.0, 0.0) UV(1.125, 1.375)
|
||||
V 72: Pos(-1.8, 1.4, 2.2) Norm(-1.0, 0.0, 0.0) UV(0.875, 1.375)
|
||||
V 73: Pos(-1.8, 1.8, 2.6) Norm(-1.0, 0.0, 0.0) UV(1.125, 1.625)
|
||||
V 74: Pos(-1.8, 1.8, 2.2) Norm(-1.0, 0.0, 0.0) UV(1.125, 1.375)
|
||||
V 75: Pos(1.8, -1.8, 2.6) Norm(0.0, 0.0, 1.0) UV(1.125, -1.125)
|
||||
V 76: Pos(-1.8, -1.4, 2.6) Norm(0.0, 0.0, 1.0) UV(-1.125, -0.875)
|
||||
V 77: Pos(-1.8, -1.8, 2.6) Norm(0.0, 0.0, 1.0) UV(-1.125, -1.125)
|
||||
V 78: Pos(1.8, -1.8, 2.2) Norm(0.0, -1.0, 0.0) UV(1.125, 1.375)
|
||||
V 79: Pos(-1.8, -1.8, 2.6) Norm(0.0, -1.0, 0.0) UV(-1.125, 1.625)
|
||||
V 80: Pos(-1.8, -1.8, 2.2) Norm(0.0, -1.0, 0.0) UV(-1.125, 1.375)
|
||||
V 81: Pos(1.8, -1.4, 2.2) Norm(1.0, 0.0, 0.0) UV(-0.875, 1.375)
|
||||
V 82: Pos(1.8, -1.8, 2.6) Norm(1.0, 0.0, 0.0) UV(-1.125, 1.625)
|
||||
V 83: Pos(1.8, -1.8, 2.2) Norm(1.0, 0.0, 0.0) UV(-1.125, 1.375)
|
||||
V 84: Pos(-1.8, -1.4, 2.2) Norm(0.0, 1.0, 0.0) UV(-1.125, 1.375)
|
||||
V 85: Pos(1.8, -1.4, 2.6) Norm(0.0, 1.0, 0.0) UV(1.125, 1.625)
|
||||
V 86: Pos(1.8, -1.4, 2.2) Norm(0.0, 1.0, 0.0) UV(1.125, 1.375)
|
||||
V 87: Pos(-1.8, -1.8, 2.2) Norm(-1.0, 0.0, 0.0) UV(-1.125, 1.375)
|
||||
V 88: Pos(-1.8, -1.4, 2.6) Norm(-1.0, 0.0, 0.0) UV(-0.875, 1.625)
|
||||
V 89: Pos(-1.8, -1.4, 2.2) Norm(-1.0, 0.0, 0.0) UV(-0.875, 1.375)
|
||||
V 90: Pos(-1.4, -1.4, 2.6) Norm(0.0, 0.0, 1.0) UV(-0.875, -0.875)
|
||||
V 91: Pos(-1.4, -1.4, 2.2) Norm(0.0, -1.0, 0.0) UV(-0.875, 1.375)
|
||||
V 92: Pos(-1.8, -1.4, 2.6) Norm(0.0, -1.0, 0.0) UV(-1.125, 1.625)
|
||||
V 93: Pos(-1.8, -1.4, 2.2) Norm(0.0, -1.0, 0.0) UV(-1.125, 1.375)
|
||||
V 94: Pos(-1.4, 1.4, 2.2) Norm(1.0, 0.0, 0.0) UV(0.875, 1.375)
|
||||
V 95: Pos(-1.4, -1.4, 2.6) Norm(1.0, 0.0, 0.0) UV(-0.875, 1.625)
|
||||
V 96: Pos(-1.4, -1.4, 2.2) Norm(1.0, 0.0, 0.0) UV(-0.875, 1.375)
|
||||
V 97: Pos(-1.8, 1.4, 2.2) Norm(0.0, 1.0, 0.0) UV(-1.125, 1.375)
|
||||
V 98: Pos(-1.4, 1.4, 2.6) Norm(0.0, 1.0, 0.0) UV(-0.875, 1.625)
|
||||
V 99: Pos(-1.4, 1.4, 2.2) Norm(0.0, 1.0, 0.0) UV(-0.875, 1.375)
|
||||
V 100: Pos(-1.8, 1.4, 2.6) Norm(-1.0, 0.0, 0.0) UV(0.875, 1.625)
|
||||
V 101: Pos(1.8, -1.4, 2.6) Norm(0.0, 0.0, 1.0) UV(1.125, -0.875)
|
||||
V 102: Pos(1.4, 1.4, 2.6) Norm(0.0, 0.0, 1.0) UV(0.875, 0.875)
|
||||
V 103: Pos(1.4, -1.4, 2.6) Norm(0.0, 0.0, 1.0) UV(0.875, -0.875)
|
||||
V 104: Pos(1.8, -1.4, 2.2) Norm(0.0, -1.0, 0.0) UV(1.125, 1.375)
|
||||
V 105: Pos(1.4, -1.4, 2.6) Norm(0.0, -1.0, 0.0) UV(0.875, 1.625)
|
||||
V 106: Pos(1.4, -1.4, 2.2) Norm(0.0, -1.0, 0.0) UV(0.875, 1.375)
|
||||
V 107: Pos(1.8, -1.4, 2.6) Norm(1.0, 0.0, 0.0) UV(-0.875, 1.625)
|
||||
V 108: Pos(1.4, 1.4, 2.2) Norm(0.0, 1.0, 0.0) UV(0.875, 1.375)
|
||||
V 109: Pos(1.8, 1.4, 2.6) Norm(0.0, 1.0, 0.0) UV(1.125, 1.625)
|
||||
V 110: Pos(1.8, 1.4, 2.2) Norm(0.0, 1.0, 0.0) UV(1.125, 1.375)
|
||||
V 111: Pos(1.4, -1.4, 2.2) Norm(-1.0, 0.0, 0.0) UV(-0.875, 1.375)
|
||||
V 112: Pos(1.4, 1.4, 2.6) Norm(-1.0, 0.0, 0.0) UV(0.875, 1.625)
|
||||
V 113: Pos(1.4, 1.4, 2.2) Norm(-1.0, 0.0, 0.0) UV(0.875, 1.375)
|
||||
V 114: Pos(-1.45, -1.45, 2.55) Norm(0.0, 0.0, 1.0) UV(-0.90625, -0.90625)
|
||||
V 115: Pos(-1.45, -1.75, 2.55) Norm(0.0, -1.0, 0.0) UV(1.59375, -0.90625)
|
||||
V 116: Pos(-1.45, -1.45, 2.55) Norm(1.0, 0.0, 0.0) UV(1.59375, -0.90625)
|
||||
V 117: Pos(-1.75, -1.45, 2.55) Norm(0.0, 1.0, 0.0) UV(1.59375, -1.09375)
|
||||
V 118: Pos(-1.75, -1.75, 2.55) Norm(-1.0, 0.0, 0.0) UV(1.59375, -1.09375)
|
||||
V 119: Pos(-1.45, 1.75, 2.55) Norm(0.0, 0.0, 1.0) UV(-0.90625, 1.09375)
|
||||
V 120: Pos(-1.45, 1.45, 2.55) Norm(0.0, -1.0, 0.0) UV(1.59375, -0.90625)
|
||||
V 121: Pos(-1.45, 1.75, 2.55) Norm(1.0, 0.0, 0.0) UV(1.59375, 1.09375)
|
||||
V 122: Pos(-1.75, 1.75, 2.55) Norm(0.0, 1.0, 0.0) UV(1.59375, -1.09375)
|
||||
V 123: Pos(-1.75, 1.45, 2.55) Norm(-1.0, 0.0, 0.0) UV(1.59375, 0.90625)
|
||||
V 124: Pos(1.75, -1.45, 2.55) Norm(0.0, 0.0, 1.0) UV(1.09375, -0.90625)
|
||||
V 125: Pos(1.75, -1.75, 2.55) Norm(0.0, -1.0, 0.0) UV(1.59375, 1.09375)
|
||||
V 126: Pos(1.75, -1.45, 2.55) Norm(1.0, 0.0, 0.0) UV(1.59375, -0.90625)
|
||||
V 127: Pos(1.45, -1.45, 2.55) Norm(0.0, 1.0, 0.0) UV(1.59375, 0.90625)
|
||||
V 128: Pos(1.45, -1.75, 2.55) Norm(-1.0, 0.0, 0.0) UV(1.59375, -1.09375)
|
||||
V 129: Pos(1.75, 1.75, 2.55) Norm(0.0, 0.0, 1.0) UV(1.09375, 1.09375)
|
||||
V 130: Pos(1.75, 1.45, 2.55) Norm(0.0, -1.0, 0.0) UV(1.59375, 1.09375)
|
||||
V 131: Pos(1.75, 1.75, 2.55) Norm(1.0, 0.0, 0.0) UV(1.59375, 1.09375)
|
||||
V 132: Pos(1.45, 1.75, 2.55) Norm(0.0, 1.0, 0.0) UV(1.59375, 0.90625)
|
||||
V 133: Pos(1.45, 1.45, 2.55) Norm(-1.0, 0.0, 0.0) UV(1.59375, 0.90625)
|
||||
V 134: Pos(1.8, 1.8, 2.6) Norm(0.0, 0.0, 1.0) UV(1.125, 1.125)
|
||||
V 135: Pos(1.8, 1.4, 2.6) Norm(0.0, -1.0, 0.0) UV(1.125, 1.625)
|
||||
V 136: Pos(1.8, 1.8, 2.6) Norm(1.0, 0.0, 0.0) UV(1.125, 1.625)
|
||||
V 137: Pos(-1.8, 1.8, 2.6) Norm(0.0, 1.0, 0.0) UV(-1.125, 1.625)
|
||||
V 138: Pos(1.8, -1.8, 2.6) Norm(0.0, -1.0, 0.0) UV(1.125, 1.625)
|
||||
V 139: Pos(-1.8, -1.4, 2.6) Norm(0.0, 1.0, 0.0) UV(-1.125, 1.625)
|
||||
V 140: Pos(-1.8, -1.8, 2.6) Norm(-1.0, 0.0, 0.0) UV(-1.125, 1.625)
|
||||
V 141: Pos(-1.4, 1.4, 2.6) Norm(0.0, 0.0, 1.0) UV(-0.875, 0.875)
|
||||
V 142: Pos(-1.4, -1.4, 2.6) Norm(0.0, -1.0, 0.0) UV(-0.875, 1.625)
|
||||
V 143: Pos(-1.4, 1.4, 2.6) Norm(1.0, 0.0, 0.0) UV(0.875, 1.625)
|
||||
V 144: Pos(-1.8, 1.4, 2.6) Norm(0.0, 1.0, 0.0) UV(-1.125, 1.625)
|
||||
V 145: Pos(1.8, -1.4, 2.6) Norm(0.0, -1.0, 0.0) UV(1.125, 1.625)
|
||||
V 146: Pos(1.4, 1.4, 2.6) Norm(0.0, 1.0, 0.0) UV(0.875, 1.625)
|
||||
V 147: Pos(1.4, -1.4, 2.6) Norm(-1.0, 0.0, 0.0) UV(-0.875, 1.625)
|
||||
|
||||
===Triangles (Indices): 80
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 27 28 29
|
||||
Tri: 30 31 32
|
||||
Tri: 33 34 35
|
||||
Tri: 36 37 38
|
||||
Tri: 39 40 41
|
||||
Tri: 42 43 44
|
||||
Tri: 45 46 47
|
||||
Tri: 48 49 50
|
||||
Tri: 51 52 53
|
||||
Tri: 54 55 56
|
||||
Tri: 57 58 59
|
||||
Tri: 60 61 62
|
||||
Tri: 63 64 65
|
||||
Tri: 66 67 68
|
||||
Tri: 69 70 71
|
||||
Tri: 72 73 74
|
||||
Tri: 75 76 77
|
||||
Tri: 78 79 80
|
||||
Tri: 81 82 83
|
||||
Tri: 84 85 86
|
||||
Tri: 87 88 89
|
||||
Tri: 90 62 76
|
||||
Tri: 91 92 93
|
||||
Tri: 94 95 96
|
||||
Tri: 97 98 99
|
||||
Tri: 89 100 72
|
||||
Tri: 101 102 103
|
||||
Tri: 104 105 106
|
||||
Tri: 68 107 81
|
||||
Tri: 108 109 110
|
||||
Tri: 111 112 113
|
||||
Tri: 0 114 1
|
||||
Tri: 3 115 4
|
||||
Tri: 6 116 7
|
||||
Tri: 9 117 10
|
||||
Tri: 12 118 13
|
||||
Tri: 15 119 16
|
||||
Tri: 18 120 19
|
||||
Tri: 21 121 22
|
||||
Tri: 24 122 25
|
||||
Tri: 27 123 28
|
||||
Tri: 30 124 31
|
||||
Tri: 33 125 34
|
||||
Tri: 36 126 37
|
||||
Tri: 39 127 40
|
||||
Tri: 42 128 43
|
||||
Tri: 45 129 46
|
||||
Tri: 48 130 49
|
||||
Tri: 51 131 52
|
||||
Tri: 54 132 55
|
||||
Tri: 57 133 58
|
||||
Tri: 60 134 61
|
||||
Tri: 63 135 64
|
||||
Tri: 66 136 67
|
||||
Tri: 69 137 70
|
||||
Tri: 72 100 73
|
||||
Tri: 75 101 76
|
||||
Tri: 78 138 79
|
||||
Tri: 81 107 82
|
||||
Tri: 84 139 85
|
||||
Tri: 87 140 88
|
||||
Tri: 90 141 62
|
||||
Tri: 91 142 92
|
||||
Tri: 94 143 95
|
||||
Tri: 97 144 98
|
||||
Tri: 89 88 100
|
||||
Tri: 101 60 102
|
||||
Tri: 104 145 105
|
||||
Tri: 68 67 107
|
||||
Tri: 108 146 109
|
||||
Tri: 111 147 112
|
||||
Binary file not shown.
@@ -0,0 +1,9 @@
|
||||
===Vertices (Split by UV/Normal): 4
|
||||
V 0: Pos(4.5, -4.68, -0.01) Norm(0.0, 0.0, 1.0) UV(5.625, -5.85)
|
||||
V 1: Pos(-4.5, 4.5, -0.01) Norm(0.0, 0.0, 1.0) UV(-5.625, 5.625)
|
||||
V 2: Pos(-4.5, -4.68, -0.01) Norm(0.0, 0.0, 1.0) UV(-5.625, -5.85)
|
||||
V 3: Pos(4.5, 4.5, -0.01) Norm(0.0, 0.0, 1.0) UV(5.625, 5.625)
|
||||
|
||||
===Triangles (Indices): 2
|
||||
Tri: 0 1 2
|
||||
Tri: 0 3 1
|
||||
Binary file not shown.
@@ -0,0 +1,9 @@
|
||||
===Vertices (Split by UV/Normal): 4
|
||||
V 0: Pos(30.0, -7.68, -0.01) Norm(0.0, 0.0, 1.0) UV(60.0, -15.36)
|
||||
V 1: Pos(-30.0, -4.68, -0.01) Norm(0.0, 0.0, 1.0) UV(-60.0, -9.36)
|
||||
V 2: Pos(-30.0, -7.68, -0.01) Norm(0.0, 0.0, 1.0) UV(-60.0, -15.36)
|
||||
V 3: Pos(30.0, -4.68, -0.01) Norm(0.0, 0.0, 1.0) UV(60.0, -9.36)
|
||||
|
||||
===Triangles (Indices): 2
|
||||
Tri: 0 1 2
|
||||
Tri: 0 3 1
|
||||
@@ -0,0 +1,9 @@
|
||||
===Vertices (Split by UV/Normal): 4
|
||||
V 0: Pos(3.15, -5.08, 0.0) Norm(0.0, 0.0, 1.0) UV(1.0, 0.0)
|
||||
V 1: Pos(-0.15, -7.28, 0.0) Norm(0.0, 0.0, 1.0) UV(0.0, 1.0)
|
||||
V 2: Pos(3.15, -7.28, 0.0) Norm(0.0, 0.0, 1.0) UV(0.0, 0.0)
|
||||
V 3: Pos(-0.15, -5.08, 0.0) Norm(0.0, 0.0, 1.0) UV(1.0, 1.0)
|
||||
|
||||
===Triangles (Indices): 2
|
||||
Tri: 0 1 2
|
||||
Tri: 0 3 1
|
||||
@@ -0,0 +1,303 @@
|
||||
===Vertices (Split by UV/Normal): 192
|
||||
V 0: Pos(0.021213, 0.021213, 0.0) Norm(0.92388, 0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 1: Pos(0.03, 0.0, 1.75) Norm(0.92388, 0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 2: Pos(0.03, 0.0, 0.0) Norm(0.92388, 0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 3: Pos(0.0, 0.03, 0.0) Norm(0.382683, 0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 4: Pos(0.021213, 0.021213, 1.75) Norm(0.382683, 0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 5: Pos(0.021213, 0.021213, 0.0) Norm(0.382683, 0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 6: Pos(-0.021213, 0.021213, 0.0) Norm(-0.382683, 0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 7: Pos(0.0, 0.03, 1.75) Norm(-0.382683, 0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 8: Pos(0.0, 0.03, 0.0) Norm(-0.382683, 0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 9: Pos(-0.03, 0.0, 0.0) Norm(-0.92388, 0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 10: Pos(-0.021213, 0.021213, 1.75) Norm(-0.92388, 0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 11: Pos(-0.021213, 0.021213, 0.0) Norm(-0.92388, 0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 12: Pos(-0.021213, -0.021213, 0.0) Norm(-0.92388, -0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 13: Pos(-0.03, 0.0, 1.75) Norm(-0.92388, -0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 14: Pos(-0.03, 0.0, 0.0) Norm(-0.92388, -0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 15: Pos(0.0, -0.03, 0.0) Norm(-0.382683, -0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 16: Pos(-0.021213, -0.021213, 1.75) Norm(-0.382683, -0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 17: Pos(-0.021213, -0.021213, 0.0) Norm(-0.382683, -0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 18: Pos(0.021213, -0.021213, 0.0) Norm(0.382683, -0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 19: Pos(0.0, -0.03, 1.75) Norm(0.382683, -0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 20: Pos(0.0, -0.03, 0.0) Norm(0.382683, -0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 21: Pos(0.03, 0.0, 0.0) Norm(0.92388, -0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 22: Pos(0.021213, -0.021213, 1.75) Norm(0.92388, -0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 23: Pos(0.021213, -0.021213, 0.0) Norm(0.92388, -0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 24: Pos(0.133939, -0.05, 2.123358) Norm(0.0, -1.0, 0.0) UV(0.515636, 0.714526)
|
||||
V 25: Pos(-0.323358, -0.05, 1.933939) Norm(0.0, -1.0, 0.0) UV(0.035474, 0.515636)
|
||||
V 26: Pos(-0.133939, -0.05, 1.476642) Norm(0.0, -1.0, 0.0) UV(0.234364, 0.035474)
|
||||
V 27: Pos(0.323358, -0.03, 1.933939) Norm(0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 28: Pos(0.35, -0.05, 1.8) Norm(0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 29: Pos(0.35, -0.03, 1.8) Norm(0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 30: Pos(0.247487, -0.03, 2.047487) Norm(0.831469, 0.0, 0.555571) UV(0.761719, 0.011719)
|
||||
V 31: Pos(0.323358, -0.05, 1.933939) Norm(0.831469, 0.0, 0.555571) UV(0.761719, 0.011719)
|
||||
V 32: Pos(0.323358, -0.03, 1.933939) Norm(0.831469, 0.0, 0.555571) UV(0.761719, 0.011719)
|
||||
V 33: Pos(0.133939, -0.03, 2.123358) Norm(0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 34: Pos(0.247487, -0.05, 2.047487) Norm(0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 35: Pos(0.247487, -0.03, 2.047487) Norm(0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 36: Pos(0.0, -0.03, 2.15) Norm(0.195091, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 37: Pos(0.133939, -0.05, 2.123358) Norm(0.195091, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 38: Pos(0.133939, -0.03, 2.123358) Norm(0.195091, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 39: Pos(-0.133939, -0.03, 2.123358) Norm(-0.195091, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 40: Pos(0.0, -0.05, 2.15) Norm(-0.195091, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 41: Pos(0.0, -0.03, 2.15) Norm(-0.195091, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 42: Pos(-0.247487, -0.03, 2.047487) Norm(-0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 43: Pos(-0.133939, -0.05, 2.123358) Norm(-0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 44: Pos(-0.133939, -0.03, 2.123358) Norm(-0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 45: Pos(-0.323358, -0.03, 1.933939) Norm(-0.831469, 0.0, 0.555571) UV(0.761719, 0.011719)
|
||||
V 46: Pos(-0.247487, -0.05, 2.047487) Norm(-0.831469, 0.0, 0.555571) UV(0.761719, 0.011719)
|
||||
V 47: Pos(-0.247487, -0.03, 2.047487) Norm(-0.831469, 0.0, 0.555571) UV(0.761719, 0.011719)
|
||||
V 48: Pos(-0.35, -0.03, 1.8) Norm(-0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 49: Pos(-0.323358, -0.05, 1.933939) Norm(-0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 50: Pos(-0.323358, -0.03, 1.933939) Norm(-0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 51: Pos(-0.323358, -0.03, 1.666061) Norm(-0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 52: Pos(-0.35, -0.05, 1.8) Norm(-0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 53: Pos(-0.35, -0.03, 1.8) Norm(-0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 54: Pos(-0.247487, -0.03, 1.552513) Norm(-0.83147, 0.0, -0.55557) UV(0.761719, 0.011719)
|
||||
V 55: Pos(-0.323358, -0.05, 1.666061) Norm(-0.83147, 0.0, -0.55557) UV(0.761719, 0.011719)
|
||||
V 56: Pos(-0.323358, -0.03, 1.666061) Norm(-0.83147, 0.0, -0.55557) UV(0.761719, 0.011719)
|
||||
V 57: Pos(-0.133939, -0.03, 1.476642) Norm(-0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 58: Pos(-0.247487, -0.05, 1.552513) Norm(-0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 59: Pos(-0.247487, -0.03, 1.552513) Norm(-0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 60: Pos(0.0, -0.03, 1.45) Norm(-0.19509, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 61: Pos(-0.133939, -0.05, 1.476642) Norm(-0.19509, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 62: Pos(-0.133939, -0.03, 1.476642) Norm(-0.19509, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 63: Pos(0.133939, -0.03, 1.476642) Norm(0.19509, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 64: Pos(0.0, -0.05, 1.45) Norm(0.19509, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 65: Pos(0.0, -0.03, 1.45) Norm(0.19509, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 66: Pos(0.247487, -0.03, 1.552513) Norm(0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 67: Pos(0.133939, -0.05, 1.476642) Norm(0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 68: Pos(0.133939, -0.03, 1.476642) Norm(0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 69: Pos(0.323358, -0.03, 1.666061) Norm(0.83147, 0.0, -0.55557) UV(0.761719, 0.011719)
|
||||
V 70: Pos(0.247487, -0.05, 1.552513) Norm(0.83147, 0.0, -0.55557) UV(0.761719, 0.011719)
|
||||
V 71: Pos(0.247487, -0.03, 1.552513) Norm(0.83147, 0.0, -0.55557) UV(0.761719, 0.011719)
|
||||
V 72: Pos(0.35, -0.03, 1.8) Norm(0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 73: Pos(0.323358, -0.05, 1.666061) Norm(0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 74: Pos(0.323358, -0.03, 1.666061) Norm(0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 75: Pos(0.35, 0.05, 1.8) Norm(0.0, 1.0, 0.0) UV(0.0075, 0.375)
|
||||
V 76: Pos(0.0, 0.05, 1.45) Norm(0.0, 1.0, 0.0) UV(0.375, 0.0075)
|
||||
V 77: Pos(-0.35, 0.05, 1.8) Norm(0.0, 1.0, 0.0) UV(0.7425, 0.375)
|
||||
V 78: Pos(0.323358, 0.03, 1.933939) Norm(-0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 79: Pos(0.35, 0.05, 1.8) Norm(-0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 80: Pos(0.35, 0.03, 1.8) Norm(-0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 81: Pos(0.247487, 0.03, 2.047487) Norm(-0.831469, 0.0, -0.555571) UV(0.761719, 0.011719)
|
||||
V 82: Pos(0.323358, 0.05, 1.933939) Norm(-0.831469, 0.0, -0.555571) UV(0.761719, 0.011719)
|
||||
V 83: Pos(0.323358, 0.03, 1.933939) Norm(-0.831469, 0.0, -0.555571) UV(0.761719, 0.011719)
|
||||
V 84: Pos(0.133939, 0.03, 2.123358) Norm(-0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 85: Pos(0.247487, 0.05, 2.047487) Norm(-0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 86: Pos(0.247487, 0.03, 2.047487) Norm(-0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 87: Pos(0.0, 0.03, 2.15) Norm(-0.195091, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 88: Pos(0.133939, 0.05, 2.123358) Norm(-0.195091, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 89: Pos(0.133939, 0.03, 2.123358) Norm(-0.195091, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 90: Pos(-0.133939, 0.03, 2.123358) Norm(0.195091, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 91: Pos(0.0, 0.05, 2.15) Norm(0.195091, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 92: Pos(0.0, 0.03, 2.15) Norm(0.195091, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 93: Pos(-0.247487, 0.03, 2.047487) Norm(0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 94: Pos(-0.133939, 0.05, 2.123358) Norm(0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 95: Pos(-0.133939, 0.03, 2.123358) Norm(0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 96: Pos(-0.323358, 0.03, 1.933939) Norm(0.831469, 0.0, -0.555571) UV(0.761719, 0.011719)
|
||||
V 97: Pos(-0.247487, 0.05, 2.047487) Norm(0.831469, 0.0, -0.555571) UV(0.761719, 0.011719)
|
||||
V 98: Pos(-0.247487, 0.03, 2.047487) Norm(0.831469, 0.0, -0.555571) UV(0.761719, 0.011719)
|
||||
V 99: Pos(-0.35, 0.03, 1.8) Norm(0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 100: Pos(-0.323358, 0.05, 1.933939) Norm(0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 101: Pos(-0.323358, 0.03, 1.933939) Norm(0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 102: Pos(-0.323358, 0.03, 1.666061) Norm(0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 103: Pos(-0.35, 0.05, 1.8) Norm(0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 104: Pos(-0.35, 0.03, 1.8) Norm(0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 105: Pos(-0.247487, 0.03, 1.552513) Norm(0.83147, 0.0, 0.55557) UV(0.761719, 0.011719)
|
||||
V 106: Pos(-0.323358, 0.05, 1.666061) Norm(0.83147, 0.0, 0.55557) UV(0.761719, 0.011719)
|
||||
V 107: Pos(-0.323358, 0.03, 1.666061) Norm(0.83147, 0.0, 0.55557) UV(0.761719, 0.011719)
|
||||
V 108: Pos(-0.133939, 0.03, 1.476642) Norm(0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 109: Pos(-0.247487, 0.05, 1.552513) Norm(0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 110: Pos(-0.247487, 0.03, 1.552513) Norm(0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 111: Pos(0.0, 0.03, 1.45) Norm(0.19509, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 112: Pos(-0.133939, 0.05, 1.476642) Norm(0.19509, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 113: Pos(-0.133939, 0.03, 1.476642) Norm(0.19509, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 114: Pos(0.133939, 0.03, 1.476642) Norm(-0.19509, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 115: Pos(0.0, 0.05, 1.45) Norm(-0.19509, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 116: Pos(0.0, 0.03, 1.45) Norm(-0.19509, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 117: Pos(0.247487, 0.03, 1.552513) Norm(-0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 118: Pos(0.133939, 0.05, 1.476642) Norm(-0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 119: Pos(0.133939, 0.03, 1.476642) Norm(-0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 120: Pos(0.323358, 0.03, 1.666061) Norm(-0.83147, 0.0, 0.55557) UV(0.761719, 0.011719)
|
||||
V 121: Pos(0.247487, 0.05, 1.552513) Norm(-0.83147, 0.0, 0.55557) UV(0.761719, 0.011719)
|
||||
V 122: Pos(0.247487, 0.03, 1.552513) Norm(-0.83147, 0.0, 0.55557) UV(0.761719, 0.011719)
|
||||
V 123: Pos(0.35, 0.03, 1.8) Norm(-0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 124: Pos(0.323358, 0.05, 1.666061) Norm(-0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 125: Pos(0.323358, 0.03, 1.666061) Norm(-0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 126: Pos(0.021213, 0.021213, 1.75) Norm(0.92388, 0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 127: Pos(0.0, 0.03, 1.75) Norm(0.382683, 0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 128: Pos(-0.021213, 0.021213, 1.75) Norm(-0.382683, 0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 129: Pos(-0.03, 0.0, 1.75) Norm(-0.92388, 0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 130: Pos(-0.021213, -0.021213, 1.75) Norm(-0.92388, -0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 131: Pos(0.0, -0.03, 1.75) Norm(-0.382683, -0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 132: Pos(0.021213, -0.021213, 1.75) Norm(0.382683, -0.92388, 0.0) UV(0.761719, 0.011719)
|
||||
V 133: Pos(0.03, 0.0, 1.75) Norm(0.92388, -0.382683, 0.0) UV(0.761719, 0.011719)
|
||||
V 134: Pos(0.323358, -0.05, 1.666061) Norm(0.0, -1.0, 0.0) UV(0.714526, 0.234364)
|
||||
V 135: Pos(0.35, -0.05, 1.8) Norm(0.0, -1.0, 0.0) UV(0.7425, 0.375)
|
||||
V 136: Pos(0.323358, -0.05, 1.933939) Norm(0.0, -1.0, 0.0) UV(0.714526, 0.515636)
|
||||
V 137: Pos(0.247487, -0.05, 2.047487) Norm(0.0, -1.0, 0.0) UV(0.634862, 0.634862)
|
||||
V 138: Pos(0.0, -0.05, 2.15) Norm(0.0, -1.0, 0.0) UV(0.375, 0.7425)
|
||||
V 139: Pos(-0.133939, -0.05, 2.123358) Norm(0.0, -1.0, 0.0) UV(0.234364, 0.714526)
|
||||
V 140: Pos(-0.247487, -0.05, 2.047487) Norm(0.0, -1.0, 0.0) UV(0.115138, 0.634862)
|
||||
V 141: Pos(-0.35, -0.05, 1.8) Norm(0.0, -1.0, 0.0) UV(0.0075, 0.375)
|
||||
V 142: Pos(-0.323358, -0.05, 1.666061) Norm(0.0, -1.0, 0.0) UV(0.035474, 0.234364)
|
||||
V 143: Pos(-0.247487, -0.05, 1.552513) Norm(0.0, -1.0, 0.0) UV(0.115138, 0.115138)
|
||||
V 144: Pos(0.0, -0.05, 1.45) Norm(0.0, -1.0, 0.0) UV(0.375, 0.0075)
|
||||
V 145: Pos(0.133939, -0.05, 1.476642) Norm(0.0, -1.0, 0.0) UV(0.515636, 0.035474)
|
||||
V 146: Pos(0.247487, -0.05, 1.552513) Norm(0.0, -1.0, 0.0) UV(0.634862, 0.115138)
|
||||
V 147: Pos(0.323358, -0.05, 1.933939) Norm(0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 148: Pos(0.247487, -0.05, 2.047487) Norm(0.831469, 0.0, 0.555571) UV(0.761719, 0.011719)
|
||||
V 149: Pos(0.133939, -0.05, 2.123358) Norm(0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 150: Pos(0.0, -0.05, 2.15) Norm(0.195091, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 151: Pos(-0.133939, -0.05, 2.123358) Norm(-0.195091, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 152: Pos(-0.247487, -0.05, 2.047487) Norm(-0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 153: Pos(-0.323358, -0.05, 1.933939) Norm(-0.831469, 0.0, 0.555571) UV(0.761719, 0.011719)
|
||||
V 154: Pos(-0.35, -0.05, 1.8) Norm(-0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 155: Pos(-0.323358, -0.05, 1.666061) Norm(-0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 156: Pos(-0.247487, -0.05, 1.552513) Norm(-0.83147, 0.0, -0.55557) UV(0.761719, 0.011719)
|
||||
V 157: Pos(-0.133939, -0.05, 1.476642) Norm(-0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 158: Pos(0.0, -0.05, 1.45) Norm(-0.19509, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 159: Pos(0.133939, -0.05, 1.476642) Norm(0.19509, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 160: Pos(0.247487, -0.05, 1.552513) Norm(0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 161: Pos(0.323358, -0.05, 1.666061) Norm(0.83147, 0.0, -0.55557) UV(0.761719, 0.011719)
|
||||
V 162: Pos(0.35, -0.05, 1.8) Norm(0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 163: Pos(0.323358, 0.05, 1.666061) Norm(0.0, 1.0, 0.0) UV(0.035474, 0.234364)
|
||||
V 164: Pos(0.247487, 0.05, 1.552513) Norm(0.0, 1.0, 0.0) UV(0.115138, 0.115138)
|
||||
V 165: Pos(0.133939, 0.05, 1.476642) Norm(0.0, 1.0, 0.0) UV(0.234364, 0.035474)
|
||||
V 166: Pos(-0.133939, 0.05, 1.476642) Norm(0.0, 1.0, 0.0) UV(0.515636, 0.035474)
|
||||
V 167: Pos(-0.247487, 0.05, 1.552513) Norm(0.0, 1.0, 0.0) UV(0.634862, 0.115138)
|
||||
V 168: Pos(-0.323358, 0.05, 1.666061) Norm(0.0, 1.0, 0.0) UV(0.714526, 0.234364)
|
||||
V 169: Pos(-0.323358, 0.05, 1.933939) Norm(0.0, 1.0, 0.0) UV(0.714526, 0.515636)
|
||||
V 170: Pos(-0.247487, 0.05, 2.047487) Norm(0.0, 1.0, 0.0) UV(0.634862, 0.634862)
|
||||
V 171: Pos(-0.133939, 0.05, 2.123358) Norm(0.0, 1.0, 0.0) UV(0.515636, 0.714526)
|
||||
V 172: Pos(0.0, 0.05, 2.15) Norm(0.0, 1.0, 0.0) UV(0.375, 0.7425)
|
||||
V 173: Pos(0.133939, 0.05, 2.123358) Norm(0.0, 1.0, 0.0) UV(0.234364, 0.714526)
|
||||
V 174: Pos(0.247487, 0.05, 2.047487) Norm(0.0, 1.0, 0.0) UV(0.115138, 0.634862)
|
||||
V 175: Pos(0.323358, 0.05, 1.933939) Norm(0.0, 1.0, 0.0) UV(0.035474, 0.515636)
|
||||
V 176: Pos(0.323358, 0.05, 1.933939) Norm(-0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 177: Pos(0.247487, 0.05, 2.047487) Norm(-0.831469, 0.0, -0.555571) UV(0.761719, 0.011719)
|
||||
V 178: Pos(0.133939, 0.05, 2.123358) Norm(-0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 179: Pos(0.0, 0.05, 2.15) Norm(-0.195091, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 180: Pos(-0.133939, 0.05, 2.123358) Norm(0.195091, 0.0, -0.980785) UV(0.761719, 0.011719)
|
||||
V 181: Pos(-0.247487, 0.05, 2.047487) Norm(0.555571, 0.0, -0.831469) UV(0.761719, 0.011719)
|
||||
V 182: Pos(-0.323358, 0.05, 1.933939) Norm(0.831469, 0.0, -0.555571) UV(0.761719, 0.011719)
|
||||
V 183: Pos(-0.35, 0.05, 1.8) Norm(0.980785, 0.0, -0.19509) UV(0.761719, 0.011719)
|
||||
V 184: Pos(-0.323358, 0.05, 1.666061) Norm(0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
V 185: Pos(-0.247487, 0.05, 1.552513) Norm(0.83147, 0.0, 0.55557) UV(0.761719, 0.011719)
|
||||
V 186: Pos(-0.133939, 0.05, 1.476642) Norm(0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 187: Pos(0.0, 0.05, 1.45) Norm(0.19509, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 188: Pos(0.133939, 0.05, 1.476642) Norm(-0.19509, 0.0, 0.980785) UV(0.761719, 0.011719)
|
||||
V 189: Pos(0.247487, 0.05, 1.552513) Norm(-0.555571, 0.0, 0.831469) UV(0.761719, 0.011719)
|
||||
V 190: Pos(0.323358, 0.05, 1.666061) Norm(-0.83147, 0.0, 0.55557) UV(0.761719, 0.011719)
|
||||
V 191: Pos(0.35, 0.05, 1.8) Norm(-0.980785, 0.0, 0.19509) UV(0.761719, 0.011719)
|
||||
|
||||
===Triangles (Indices): 108
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 27 28 29
|
||||
Tri: 30 31 32
|
||||
Tri: 33 34 35
|
||||
Tri: 36 37 38
|
||||
Tri: 39 40 41
|
||||
Tri: 42 43 44
|
||||
Tri: 45 46 47
|
||||
Tri: 48 49 50
|
||||
Tri: 51 52 53
|
||||
Tri: 54 55 56
|
||||
Tri: 57 58 59
|
||||
Tri: 60 61 62
|
||||
Tri: 63 64 65
|
||||
Tri: 66 67 68
|
||||
Tri: 69 70 71
|
||||
Tri: 72 73 74
|
||||
Tri: 75 76 77
|
||||
Tri: 78 79 80
|
||||
Tri: 81 82 83
|
||||
Tri: 84 85 86
|
||||
Tri: 87 88 89
|
||||
Tri: 90 91 92
|
||||
Tri: 93 94 95
|
||||
Tri: 96 97 98
|
||||
Tri: 99 100 101
|
||||
Tri: 102 103 104
|
||||
Tri: 105 106 107
|
||||
Tri: 108 109 110
|
||||
Tri: 111 112 113
|
||||
Tri: 114 115 116
|
||||
Tri: 117 118 119
|
||||
Tri: 120 121 122
|
||||
Tri: 123 124 125
|
||||
Tri: 0 126 1
|
||||
Tri: 3 127 4
|
||||
Tri: 6 128 7
|
||||
Tri: 9 129 10
|
||||
Tri: 12 130 13
|
||||
Tri: 15 131 16
|
||||
Tri: 18 132 19
|
||||
Tri: 21 133 22
|
||||
Tri: 134 135 136
|
||||
Tri: 136 137 134
|
||||
Tri: 137 24 134
|
||||
Tri: 24 138 139
|
||||
Tri: 139 140 24
|
||||
Tri: 140 25 24
|
||||
Tri: 25 141 142
|
||||
Tri: 142 143 25
|
||||
Tri: 143 26 25
|
||||
Tri: 26 144 134
|
||||
Tri: 144 145 134
|
||||
Tri: 145 146 134
|
||||
Tri: 134 24 26
|
||||
Tri: 27 147 28
|
||||
Tri: 30 148 31
|
||||
Tri: 33 149 34
|
||||
Tri: 36 150 37
|
||||
Tri: 39 151 40
|
||||
Tri: 42 152 43
|
||||
Tri: 45 153 46
|
||||
Tri: 48 154 49
|
||||
Tri: 51 155 52
|
||||
Tri: 54 156 55
|
||||
Tri: 57 157 58
|
||||
Tri: 60 158 61
|
||||
Tri: 63 159 64
|
||||
Tri: 66 160 67
|
||||
Tri: 69 161 70
|
||||
Tri: 72 162 73
|
||||
Tri: 75 163 164
|
||||
Tri: 164 165 76
|
||||
Tri: 76 166 167
|
||||
Tri: 167 168 77
|
||||
Tri: 77 169 170
|
||||
Tri: 170 171 77
|
||||
Tri: 171 172 77
|
||||
Tri: 172 173 174
|
||||
Tri: 174 175 75
|
||||
Tri: 75 164 76
|
||||
Tri: 76 167 77
|
||||
Tri: 172 174 77
|
||||
Tri: 174 75 77
|
||||
Tri: 78 176 79
|
||||
Tri: 81 177 82
|
||||
Tri: 84 178 85
|
||||
Tri: 87 179 88
|
||||
Tri: 90 180 91
|
||||
Tri: 93 181 94
|
||||
Tri: 96 182 97
|
||||
Tri: 99 183 100
|
||||
Tri: 102 184 103
|
||||
Tri: 105 185 106
|
||||
Tri: 108 186 109
|
||||
Tri: 111 187 112
|
||||
Tri: 114 188 115
|
||||
Tri: 117 189 118
|
||||
Tri: 120 190 121
|
||||
Tri: 123 191 124
|
||||
Binary file not shown.
@@ -0,0 +1,69 @@
|
||||
===Vertices (Split by UV/Normal): 44
|
||||
V 0: Pos(0.0175, 0.006, 1.25) Norm(0.0, 0.0, 1.0) UV(0.769531, 0.011719)
|
||||
V 1: Pos(-0.0175, 0.02525, 1.25) Norm(0.0, 0.0, 1.0) UV(0.769531, 0.011719)
|
||||
V 2: Pos(-0.0175, 0.006, 1.25) Norm(0.0, 0.0, 1.0) UV(0.769531, 0.011719)
|
||||
V 3: Pos(0.0175, 0.006, -0.1) Norm(0.0, -1.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 4: Pos(-0.0175, 0.006, 1.25) Norm(0.0, -1.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 5: Pos(-0.0175, 0.006, -0.1) Norm(0.0, -1.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 6: Pos(0.0175, 0.02525, -0.1) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 7: Pos(0.0175, 0.006, 1.25) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 8: Pos(0.0175, 0.006, -0.1) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 9: Pos(-0.0175, 0.02525, -0.1) Norm(0.0, 1.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 10: Pos(0.0175, 0.02525, 1.25) Norm(0.0, 1.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 11: Pos(0.0175, 0.02525, -0.1) Norm(0.0, 1.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 12: Pos(-0.0175, 0.006, -0.1) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 13: Pos(-0.0175, 0.02525, 1.25) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 14: Pos(-0.0175, 0.02525, -0.1) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 15: Pos(0.33, -0.006, 0.8) Norm(0.0, -1.0, 0.0) UV(0.753906, 0.003906)
|
||||
V 16: Pos(-0.33, -0.006, 1.24) Norm(0.0, -1.0, 0.0) UV(0.003906, 0.509766)
|
||||
V 17: Pos(-0.33, -0.006, 0.8) Norm(0.0, -1.0, 0.0) UV(0.003906, 0.003906)
|
||||
V 18: Pos(0.33, 0.006, 1.24) Norm(0.0, 1.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 19: Pos(-0.33, 0.006, 0.8) Norm(0.0, 1.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 20: Pos(-0.33, 0.006, 1.24) Norm(0.0, 1.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 21: Pos(-0.33, 0.006, 0.8) Norm(0.0, 0.0, -1.0) UV(0.792969, 0.011719)
|
||||
V 22: Pos(0.33, -0.006, 0.8) Norm(0.0, 0.0, -1.0) UV(0.792969, 0.011719)
|
||||
V 23: Pos(-0.33, -0.006, 0.8) Norm(0.0, 0.0, -1.0) UV(0.792969, 0.011719)
|
||||
V 24: Pos(0.33, 0.006, 0.8) Norm(1.0, 0.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 25: Pos(0.33, -0.006, 1.24) Norm(1.0, 0.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 26: Pos(0.33, -0.006, 0.8) Norm(1.0, 0.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 27: Pos(0.33, 0.006, 1.24) Norm(0.0, 0.0, 1.0) UV(0.792969, 0.011719)
|
||||
V 28: Pos(-0.33, -0.006, 1.24) Norm(0.0, 0.0, 1.0) UV(0.792969, 0.011719)
|
||||
V 29: Pos(0.33, -0.006, 1.24) Norm(0.0, 0.0, 1.0) UV(0.792969, 0.011719)
|
||||
V 30: Pos(-0.33, 0.006, 1.24) Norm(-1.0, 0.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 31: Pos(-0.33, -0.006, 0.8) Norm(-1.0, 0.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 32: Pos(-0.33, -0.006, 1.24) Norm(-1.0, 0.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 33: Pos(0.0175, 0.02525, 1.25) Norm(0.0, 0.0, 1.0) UV(0.769531, 0.011719)
|
||||
V 34: Pos(0.0175, 0.006, 1.25) Norm(0.0, -1.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 35: Pos(0.0175, 0.02525, 1.25) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 36: Pos(-0.0175, 0.02525, 1.25) Norm(0.0, 1.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 37: Pos(-0.0175, 0.006, 1.25) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.011719)
|
||||
V 38: Pos(0.33, -0.006, 1.24) Norm(0.0, -1.0, 0.0) UV(0.753906, 0.509766)
|
||||
V 39: Pos(0.33, 0.006, 0.8) Norm(0.0, 1.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 40: Pos(0.33, 0.006, 0.8) Norm(0.0, 0.0, -1.0) UV(0.792969, 0.011719)
|
||||
V 41: Pos(0.33, 0.006, 1.24) Norm(1.0, 0.0, 0.0) UV(0.792969, 0.011719)
|
||||
V 42: Pos(-0.33, 0.006, 1.24) Norm(0.0, 0.0, 1.0) UV(0.792969, 0.011719)
|
||||
V 43: Pos(-0.33, 0.006, 0.8) Norm(-1.0, 0.0, 0.0) UV(0.792969, 0.011719)
|
||||
|
||||
===Triangles (Indices): 22
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 27 28 29
|
||||
Tri: 30 31 32
|
||||
Tri: 0 33 1
|
||||
Tri: 3 34 4
|
||||
Tri: 6 35 7
|
||||
Tri: 9 36 10
|
||||
Tri: 12 37 13
|
||||
Tri: 15 38 16
|
||||
Tri: 18 39 19
|
||||
Tri: 21 40 22
|
||||
Tri: 24 41 25
|
||||
Tri: 27 42 28
|
||||
Tri: 30 43 31
|
||||
@@ -0,0 +1,111 @@
|
||||
===Vertices (Split by UV/Normal): 72
|
||||
V 0: Pos(0.62, -0.036384, -0.050012) Norm(0.0, -0.927184, 0.374607) UV(0.753906, 0.007812)
|
||||
V 1: Pos(-0.62, 0.143427, 0.395036) Norm(0.0, -0.927184, 0.374607) UV(0.003906, 0.507812)
|
||||
V 2: Pos(-0.62, -0.036384, -0.050012) Norm(0.0, -0.927184, 0.374607) UV(0.003906, 0.007812)
|
||||
V 3: Pos(0.62, 0.143427, 0.395036) Norm(0.0, 0.374607, 0.927184) UV(0.769531, 0.023438)
|
||||
V 4: Pos(-0.62, 0.171243, 0.383798) Norm(0.0, 0.374607, 0.927184) UV(0.769531, 0.023438)
|
||||
V 5: Pos(-0.62, 0.143427, 0.395036) Norm(0.0, 0.374607, 0.927184) UV(0.769531, 0.023438)
|
||||
V 6: Pos(0.62, -0.008569, -0.06125) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 7: Pos(0.62, 0.143427, 0.395036) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 8: Pos(0.62, -0.036384, -0.050012) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 9: Pos(-0.62, -0.008569, -0.06125) Norm(0.0, 0.927184, -0.374607) UV(0.769531, 0.023438)
|
||||
V 10: Pos(0.62, 0.171243, 0.383798) Norm(0.0, 0.927184, -0.374607) UV(0.769531, 0.023438)
|
||||
V 11: Pos(0.62, -0.008569, -0.06125) Norm(0.0, 0.927184, -0.374607) UV(0.769531, 0.023438)
|
||||
V 12: Pos(-0.62, -0.036384, -0.050012) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 13: Pos(-0.62, 0.171243, 0.383798) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 14: Pos(-0.62, -0.008569, -0.06125) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 15: Pos(-0.62, -0.008569, -0.06125) Norm(0.0, -0.374606, -0.927184) UV(0.769531, 0.023438)
|
||||
V 16: Pos(0.62, -0.036384, -0.050012) Norm(0.0, -0.374606, -0.927184) UV(0.769531, 0.023438)
|
||||
V 17: Pos(-0.62, -0.036384, -0.050012) Norm(0.0, -0.374606, -0.927184) UV(0.769531, 0.023438)
|
||||
V 18: Pos(-0.3867, 0.411154, -0.045784) Norm(0.0, -0.712652, -0.701518) UV(0.769531, 0.023438)
|
||||
V 19: Pos(-0.4317, 0.111154, 0.258977) Norm(0.0, -0.712652, -0.701518) UV(0.769531, 0.023438)
|
||||
V 20: Pos(-0.4317, 0.411154, -0.045784) Norm(0.0, -0.712652, -0.701518) UV(0.769531, 0.023438)
|
||||
V 21: Pos(-0.3867, 0.411154, -0.045784) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 22: Pos(-0.3867, 0.143223, 0.290545) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 23: Pos(-0.3867, 0.111154, 0.258977) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 24: Pos(-0.4317, 0.443223, -0.014216) Norm(0.0, 0.712652, 0.701518) UV(0.769531, 0.023438)
|
||||
V 25: Pos(-0.3867, 0.143223, 0.290545) Norm(0.0, 0.712652, 0.701518) UV(0.769531, 0.023438)
|
||||
V 26: Pos(-0.3867, 0.443223, -0.014216) Norm(0.0, 0.712652, 0.701518) UV(0.769531, 0.023438)
|
||||
V 27: Pos(-0.4317, 0.443223, -0.014216) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 28: Pos(-0.4317, 0.111154, 0.258977) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 29: Pos(-0.4317, 0.143223, 0.290545) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 30: Pos(-0.3867, 0.111154, 0.258977) Norm(0.0, -0.701518, 0.712652) UV(0.769531, 0.023438)
|
||||
V 31: Pos(-0.4317, 0.143223, 0.290545) Norm(0.0, -0.701518, 0.712652) UV(0.769531, 0.023438)
|
||||
V 32: Pos(-0.4317, 0.111154, 0.258977) Norm(0.0, -0.701518, 0.712652) UV(0.769531, 0.023438)
|
||||
V 33: Pos(-0.3867, 0.443223, -0.014216) Norm(0.0, 0.701518, -0.712652) UV(0.769531, 0.023438)
|
||||
V 34: Pos(-0.4317, 0.411154, -0.045784) Norm(0.0, 0.701518, -0.712652) UV(0.769531, 0.023438)
|
||||
V 35: Pos(-0.4317, 0.443223, -0.014216) Norm(0.0, 0.701518, -0.712652) UV(0.769531, 0.023438)
|
||||
V 36: Pos(0.4317, 0.411154, -0.045784) Norm(0.0, -0.712652, -0.701518) UV(0.769531, 0.023438)
|
||||
V 37: Pos(0.3867, 0.111154, 0.258977) Norm(0.0, -0.712652, -0.701518) UV(0.769531, 0.023438)
|
||||
V 38: Pos(0.3867, 0.411154, -0.045784) Norm(0.0, -0.712652, -0.701518) UV(0.769531, 0.023438)
|
||||
V 39: Pos(0.4317, 0.411154, -0.045784) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 40: Pos(0.4317, 0.143223, 0.290545) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 41: Pos(0.4317, 0.111154, 0.258977) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 42: Pos(0.3867, 0.443223, -0.014216) Norm(0.0, 0.712652, 0.701518) UV(0.769531, 0.023438)
|
||||
V 43: Pos(0.4317, 0.143223, 0.290545) Norm(0.0, 0.712652, 0.701518) UV(0.769531, 0.023438)
|
||||
V 44: Pos(0.4317, 0.443223, -0.014216) Norm(0.0, 0.712652, 0.701518) UV(0.769531, 0.023438)
|
||||
V 45: Pos(0.3867, 0.443223, -0.014216) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 46: Pos(0.3867, 0.111154, 0.258977) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 47: Pos(0.3867, 0.143223, 0.290545) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 48: Pos(0.4317, 0.111154, 0.258977) Norm(0.0, -0.701518, 0.712652) UV(0.769531, 0.023438)
|
||||
V 49: Pos(0.3867, 0.143223, 0.290545) Norm(0.0, -0.701518, 0.712652) UV(0.769531, 0.023438)
|
||||
V 50: Pos(0.3867, 0.111154, 0.258977) Norm(0.0, -0.701518, 0.712652) UV(0.769531, 0.023438)
|
||||
V 51: Pos(0.4317, 0.443223, -0.014216) Norm(0.0, 0.701518, -0.712652) UV(0.769531, 0.023438)
|
||||
V 52: Pos(0.3867, 0.411154, -0.045784) Norm(0.0, 0.701518, -0.712652) UV(0.769531, 0.023438)
|
||||
V 53: Pos(0.3867, 0.443223, -0.014216) Norm(0.0, 0.701518, -0.712652) UV(0.769531, 0.023438)
|
||||
V 54: Pos(0.62, 0.143427, 0.395036) Norm(0.0, -0.927184, 0.374607) UV(0.753906, 0.507812)
|
||||
V 55: Pos(0.62, 0.171243, 0.383798) Norm(0.0, 0.374607, 0.927184) UV(0.769531, 0.023438)
|
||||
V 56: Pos(0.62, 0.171243, 0.383798) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 57: Pos(-0.62, 0.171243, 0.383798) Norm(0.0, 0.927184, -0.374607) UV(0.769531, 0.023438)
|
||||
V 58: Pos(-0.62, 0.143427, 0.395036) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 59: Pos(0.62, -0.008569, -0.06125) Norm(0.0, -0.374606, -0.927184) UV(0.769531, 0.023438)
|
||||
V 60: Pos(-0.3867, 0.111154, 0.258977) Norm(0.0, -0.712652, -0.701518) UV(0.769531, 0.023438)
|
||||
V 61: Pos(-0.3867, 0.443223, -0.014216) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 62: Pos(-0.4317, 0.143223, 0.290545) Norm(0.0, 0.712652, 0.701518) UV(0.769531, 0.023438)
|
||||
V 63: Pos(-0.4317, 0.411154, -0.045784) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 64: Pos(-0.3867, 0.143223, 0.290545) Norm(0.0, -0.701518, 0.712652) UV(0.769531, 0.023438)
|
||||
V 65: Pos(-0.3867, 0.411154, -0.045784) Norm(0.0, 0.701518, -0.712652) UV(0.769531, 0.023438)
|
||||
V 66: Pos(0.4317, 0.111154, 0.258977) Norm(0.0, -0.712652, -0.701518) UV(0.769531, 0.023438)
|
||||
V 67: Pos(0.4317, 0.443223, -0.014216) Norm(1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 68: Pos(0.3867, 0.143223, 0.290545) Norm(0.0, 0.712652, 0.701518) UV(0.769531, 0.023438)
|
||||
V 69: Pos(0.3867, 0.411154, -0.045784) Norm(-1.0, 0.0, 0.0) UV(0.769531, 0.023438)
|
||||
V 70: Pos(0.4317, 0.143223, 0.290545) Norm(0.0, -0.701518, 0.712652) UV(0.769531, 0.023438)
|
||||
V 71: Pos(0.4317, 0.411154, -0.045784) Norm(0.0, 0.701518, -0.712652) UV(0.769531, 0.023438)
|
||||
|
||||
===Triangles (Indices): 36
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 27 28 29
|
||||
Tri: 30 31 32
|
||||
Tri: 33 34 35
|
||||
Tri: 36 37 38
|
||||
Tri: 39 40 41
|
||||
Tri: 42 43 44
|
||||
Tri: 45 46 47
|
||||
Tri: 48 49 50
|
||||
Tri: 51 52 53
|
||||
Tri: 0 54 1
|
||||
Tri: 3 55 4
|
||||
Tri: 6 56 7
|
||||
Tri: 9 57 10
|
||||
Tri: 12 58 13
|
||||
Tri: 15 59 16
|
||||
Tri: 18 60 19
|
||||
Tri: 21 61 22
|
||||
Tri: 24 62 25
|
||||
Tri: 27 63 28
|
||||
Tri: 30 64 31
|
||||
Tri: 33 65 34
|
||||
Tri: 36 66 37
|
||||
Tri: 39 67 40
|
||||
Tri: 42 68 43
|
||||
Tri: 45 69 46
|
||||
Tri: 48 70 49
|
||||
Tri: 51 71 52
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,67 @@
|
||||
===Vertices (Split by UV/Normal): 44
|
||||
V 0: Pos(2.3, -2.3, 2.6) Norm(0.0, -0.948683, -0.316228) UV(0.854614, 0.905029)
|
||||
V 1: Pos(-2.4, -2.4, 2.9) Norm(0.0, -0.948683, -0.316228) UV(0.125977, 0.951538)
|
||||
V 2: Pos(-2.3, -2.3, 2.6) Norm(0.0, -0.948683, -0.316228) UV(0.141479, 0.905029)
|
||||
V 3: Pos(2.4, -2.4, 2.9) Norm(0.0, -1.0, 0.0) UV(0.994141, 0.6014)
|
||||
V 4: Pos(-2.4, -2.4, 2.96) Norm(0.0, -1.0, 0.0) UV(0.001953, 0.613802)
|
||||
V 5: Pos(-2.4, -2.4, 2.9) Norm(0.0, -1.0, 0.0) UV(0.001953, 0.6014)
|
||||
V 6: Pos(-2.4, -2.4, 2.96) Norm(0.0, -0.33035, 0.943858) UV(0.001953, 0.001953)
|
||||
V 7: Pos(2.4, -2.4, 2.96) Norm(0.0, -0.33035, 0.943858) UV(0.994141, 0.001953)
|
||||
V 8: Pos(0.0, 0.0, 3.8) Norm(0.0, -0.33035, 0.943858) UV(0.498047, 0.527555)
|
||||
V 9: Pos(2.3, 2.3, 2.6) Norm(0.948683, 0.0, -0.316228) UV(0.854614, 0.905029)
|
||||
V 10: Pos(2.4, -2.4, 2.9) Norm(0.948683, 0.0, -0.316228) UV(0.125977, 0.951538)
|
||||
V 11: Pos(2.3, -2.3, 2.6) Norm(0.948683, 0.0, -0.316228) UV(0.141479, 0.905029)
|
||||
V 12: Pos(2.4, 2.4, 2.9) Norm(1.0, 0.0, 0.0) UV(0.994141, 0.6014)
|
||||
V 13: Pos(2.4, -2.4, 2.96) Norm(1.0, 0.0, 0.0) UV(0.001953, 0.613802)
|
||||
V 14: Pos(2.4, -2.4, 2.9) Norm(1.0, 0.0, 0.0) UV(0.001953, 0.6014)
|
||||
V 15: Pos(2.4, -2.4, 2.96) Norm(0.33035, 0.0, 0.943858) UV(0.001953, 0.001953)
|
||||
V 16: Pos(2.4, 2.4, 2.96) Norm(0.33035, 0.0, 0.943858) UV(0.994141, 0.001953)
|
||||
V 17: Pos(0.0, 0.0, 3.8) Norm(0.33035, 0.0, 0.943858) UV(0.498047, 0.527555)
|
||||
V 18: Pos(-2.3, 2.3, 2.6) Norm(0.0, 0.948683, -0.316228) UV(0.141479, 0.905029)
|
||||
V 19: Pos(2.4, 2.4, 2.9) Norm(0.0, 0.948683, -0.316228) UV(0.870117, 0.951538)
|
||||
V 20: Pos(2.3, 2.3, 2.6) Norm(0.0, 0.948683, -0.316228) UV(0.854614, 0.905029)
|
||||
V 21: Pos(-2.4, 2.4, 2.9) Norm(0.0, 1.0, 0.0) UV(0.001953, 0.6014)
|
||||
V 22: Pos(2.4, 2.4, 2.96) Norm(0.0, 1.0, 0.0) UV(0.994141, 0.613802)
|
||||
V 23: Pos(2.4, 2.4, 2.9) Norm(0.0, 1.0, 0.0) UV(0.994141, 0.6014)
|
||||
V 24: Pos(2.4, 2.4, 2.96) Norm(0.0, 0.33035, 0.943858) UV(0.994141, 0.001953)
|
||||
V 25: Pos(-2.4, 2.4, 2.96) Norm(0.0, 0.33035, 0.943858) UV(0.001953, 0.001953)
|
||||
V 26: Pos(0.0, 0.0, 3.8) Norm(0.0, 0.33035, 0.943858) UV(0.498047, 0.527555)
|
||||
V 27: Pos(-2.3, -2.3, 2.6) Norm(-0.948683, 0.0, -0.316228) UV(0.141479, 0.905029)
|
||||
V 28: Pos(-2.4, 2.4, 2.9) Norm(-0.948683, 0.0, -0.316228) UV(0.870117, 0.951538)
|
||||
V 29: Pos(-2.3, 2.3, 2.6) Norm(-0.948683, 0.0, -0.316228) UV(0.854614, 0.905029)
|
||||
V 30: Pos(-2.4, -2.4, 2.9) Norm(-1.0, 0.0, 0.0) UV(0.001953, 0.6014)
|
||||
V 31: Pos(-2.4, 2.4, 2.96) Norm(-1.0, 0.0, 0.0) UV(0.994141, 0.613802)
|
||||
V 32: Pos(-2.4, 2.4, 2.9) Norm(-1.0, 0.0, 0.0) UV(0.994141, 0.6014)
|
||||
V 33: Pos(-2.4, 2.4, 2.96) Norm(-0.33035, 0.0, 0.943858) UV(0.994141, 0.001953)
|
||||
V 34: Pos(-2.4, -2.4, 2.96) Norm(-0.33035, 0.0, 0.943858) UV(0.001953, 0.001953)
|
||||
V 35: Pos(0.0, 0.0, 3.8) Norm(-0.33035, 0.0, 0.943858) UV(0.498047, 0.527555)
|
||||
V 36: Pos(2.4, -2.4, 2.9) Norm(0.0, -0.948683, -0.316228) UV(0.870117, 0.951538)
|
||||
V 37: Pos(2.4, -2.4, 2.96) Norm(0.0, -1.0, 0.0) UV(0.994141, 0.613802)
|
||||
V 38: Pos(2.4, 2.4, 2.9) Norm(0.948683, 0.0, -0.316228) UV(0.870117, 0.951538)
|
||||
V 39: Pos(2.4, 2.4, 2.96) Norm(1.0, 0.0, 0.0) UV(0.994141, 0.613802)
|
||||
V 40: Pos(-2.4, 2.4, 2.9) Norm(0.0, 0.948683, -0.316228) UV(0.125977, 0.951538)
|
||||
V 41: Pos(-2.4, 2.4, 2.96) Norm(0.0, 1.0, 0.0) UV(0.001953, 0.613802)
|
||||
V 42: Pos(-2.4, -2.4, 2.9) Norm(-0.948683, 0.0, -0.316228) UV(0.125977, 0.951538)
|
||||
V 43: Pos(-2.4, -2.4, 2.96) Norm(-1.0, 0.0, 0.0) UV(0.001953, 0.613802)
|
||||
|
||||
===Triangles (Indices): 20
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 18 19 20
|
||||
Tri: 21 22 23
|
||||
Tri: 24 25 26
|
||||
Tri: 27 28 29
|
||||
Tri: 30 31 32
|
||||
Tri: 33 34 35
|
||||
Tri: 0 36 1
|
||||
Tri: 3 37 4
|
||||
Tri: 9 38 10
|
||||
Tri: 12 39 13
|
||||
Tri: 18 40 19
|
||||
Tri: 21 41 22
|
||||
Tri: 27 42 28
|
||||
Tri: 30 43 31
|
||||
Binary file not shown.
@@ -0,0 +1,39 @@
|
||||
===Vertices (Split by UV/Normal): 24
|
||||
V 0: Pos(-0.45, -0.4, 1.83) Norm(-1.0, 0.0, 0.0) UV(0.238116, 1.0)
|
||||
V 1: Pos(-0.45, 0.4, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.0, 0.29878)
|
||||
V 2: Pos(-0.45, -0.4, 0.0) Norm(-1.0, 0.0, 0.0) UV(0.238116, 0.29878)
|
||||
V 3: Pos(-0.45, 0.4, 1.83) Norm(0.0, 1.0, 0.0) UV(1.0, 1.0)
|
||||
V 4: Pos(0.45, 0.4, 0.0) Norm(0.0, 1.0, 0.0) UV(0.738116, 0.29878)
|
||||
V 5: Pos(-0.45, 0.4, 0.0) Norm(0.0, 1.0, 0.0) UV(1.0, 0.29878)
|
||||
V 6: Pos(0.45, 0.4, 1.83) Norm(1.0, 0.0, 0.0) UV(0.738116, 1.0)
|
||||
V 7: Pos(0.45, -0.4, 0.0) Norm(1.0, 0.0, 0.0) UV(0.5, 0.29878)
|
||||
V 8: Pos(0.45, 0.4, 0.0) Norm(1.0, 0.0, 0.0) UV(0.738116, 0.29878)
|
||||
V 9: Pos(0.45, -0.4, 1.83) Norm(0.0, -1.0, 0.0) UV(0.5, 1.0)
|
||||
V 10: Pos(-0.45, -0.4, 0.0) Norm(0.0, -1.0, 0.0) UV(0.238116, 0.29878)
|
||||
V 11: Pos(0.45, -0.4, 0.0) Norm(0.0, -1.0, 0.0) UV(0.5, 0.29878)
|
||||
V 12: Pos(0.45, 0.4, 0.0) Norm(0.0, 0.0, -1.0) UV(0.523768, 0.0)
|
||||
V 13: Pos(-0.45, -0.4, 0.0) Norm(0.0, 0.0, -1.0) UV(0.261884, 0.298781)
|
||||
V 14: Pos(-0.45, 0.4, 0.0) Norm(0.0, 0.0, -1.0) UV(0.261884, 0.0)
|
||||
V 15: Pos(-0.45, 0.4, 1.83) Norm(0.0, 0.0, 1.0) UV(0.0, 0.298781)
|
||||
V 16: Pos(0.45, -0.4, 1.83) Norm(0.0, 0.0, 1.0) UV(0.261884, 0.0)
|
||||
V 17: Pos(0.45, 0.4, 1.83) Norm(0.0, 0.0, 1.0) UV(0.261884, 0.298781)
|
||||
V 18: Pos(-0.45, 0.4, 1.83) Norm(-1.0, 0.0, 0.0) UV(0.0, 1.0)
|
||||
V 19: Pos(0.45, 0.4, 1.83) Norm(0.0, 1.0, 0.0) UV(0.738116, 1.0)
|
||||
V 20: Pos(0.45, -0.4, 1.83) Norm(1.0, 0.0, 0.0) UV(0.5, 1.0)
|
||||
V 21: Pos(-0.45, -0.4, 1.83) Norm(0.0, -1.0, 0.0) UV(0.238116, 1.0)
|
||||
V 22: Pos(0.45, -0.4, 0.0) Norm(0.0, 0.0, -1.0) UV(0.523768, 0.298781)
|
||||
V 23: Pos(-0.45, -0.4, 1.83) Norm(0.0, 0.0, 1.0) UV(0.0, 0.0)
|
||||
|
||||
===Triangles (Indices): 12
|
||||
Tri: 0 1 2
|
||||
Tri: 3 4 5
|
||||
Tri: 6 7 8
|
||||
Tri: 9 10 11
|
||||
Tri: 12 13 14
|
||||
Tri: 15 16 17
|
||||
Tri: 0 18 1
|
||||
Tri: 3 19 4
|
||||
Tri: 6 20 7
|
||||
Tri: 9 21 10
|
||||
Tri: 12 22 13
|
||||
Tri: 15 23 16
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+17
-1
@@ -243,7 +243,15 @@ namespace FRG
|
||||
renderer.shaderManager.AddShaderFromFiles("night_fog_skinning", "resources/shaders/night_fog_skinning_web.vertex", "resources/shaders/night_fog_web.fragment", CONST_ZIP_FILE);
|
||||
renderer.shaderManager.AddShaderFromFiles("night_fog_shadow", "resources/shaders/night_fog_shadow_web.vertex", "resources/shaders/night_fog_shadow_web.fragment", CONST_ZIP_FILE);
|
||||
renderer.shaderManager.AddShaderFromFiles("night_fog_skinning_shadow", "resources/shaders/night_fog_skinning_shadow_web.vertex", "resources/shaders/night_fog_shadow_web.fragment", CONST_ZIP_FILE);
|
||||
|
||||
|
||||
// Instancing variants of the static-object shaders (same sources + INSTANCED define)
|
||||
renderer.shaderManager.AddShaderFromFiles("fog_inst", "resources/shaders/fog.vertex", "resources/shaders/fog_web.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
renderer.shaderManager.AddShaderFromFiles("darklands_fog_inst", "resources/shaders/darklands_fog.vertex", "resources/shaders/darklands_fog_web.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
renderer.shaderManager.AddShaderFromFiles("shadow_depth_inst", "resources/shaders/shadow_depth.vertex", "resources/shaders/shadow_depth_web.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
renderer.shaderManager.AddShaderFromFiles("fog_shadow_inst", "resources/shaders/fog_shadow_web.vertex", "resources/shaders/fog_shadow_web.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
renderer.shaderManager.AddShaderFromFiles("night_fog_inst", "resources/shaders/night_fog_web.vertex", "resources/shaders/night_fog_web.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
renderer.shaderManager.AddShaderFromFiles("night_fog_shadow_inst", "resources/shaders/night_fog_shadow_web.vertex", "resources/shaders/night_fog_shadow_web.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
|
||||
renderer.shaderManager.AddShaderFromFiles("text2d",
|
||||
"resources/shaders/text2d.vertex",
|
||||
"resources/shaders/text2d_web.fragment",
|
||||
@@ -303,6 +311,14 @@ namespace FRG
|
||||
renderer.shaderManager.AddShaderFromFiles("night_fog_shadow", "resources/shaders/night_fog_shadow.vertex", "resources/shaders/night_fog_shadow_desktop.fragment", CONST_ZIP_FILE);
|
||||
renderer.shaderManager.AddShaderFromFiles("night_fog_skinning_shadow", "resources/shaders/night_fog_skinning_shadow.vertex", "resources/shaders/night_fog_shadow_desktop.fragment", CONST_ZIP_FILE);
|
||||
|
||||
// Instancing variants of the static-object shaders (same sources + INSTANCED define)
|
||||
renderer.shaderManager.AddShaderFromFiles("fog_inst", "resources/shaders/fog.vertex", "resources/shaders/fog_desktop.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
renderer.shaderManager.AddShaderFromFiles("darklands_fog_inst", "resources/shaders/darklands_fog.vertex", "resources/shaders/darklands_fog_desktop.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
renderer.shaderManager.AddShaderFromFiles("shadow_depth_inst", "resources/shaders/shadow_depth.vertex", "resources/shaders/shadow_depth_desktop.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
renderer.shaderManager.AddShaderFromFiles("fog_shadow_inst", "resources/shaders/fog_shadow.vertex", "resources/shaders/fog_shadow_desktop.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
renderer.shaderManager.AddShaderFromFiles("night_fog_inst", "resources/shaders/night_fog.vertex", "resources/shaders/night_fog_desktop.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
renderer.shaderManager.AddShaderFromFiles("night_fog_shadow_inst", "resources/shaders/night_fog_shadow.vertex", "resources/shaders/night_fog_shadow_desktop.fragment", CONST_ZIP_FILE, "#define INSTANCED\n");
|
||||
|
||||
renderer.shaderManager.AddShaderFromFiles("text2d",
|
||||
"resources/shaders/text2d.vertex",
|
||||
"resources/shaders/text2d_desktop.fragment",
|
||||
|
||||
+68
-1
@@ -106,7 +106,11 @@ namespace FRG
|
||||
{
|
||||
|
||||
// Load static game objects
|
||||
gameObjects = GameObjectLoader::loadAndCreateGameObjects(params.gameObjectsJsonPath, renderer, CONST_ZIP_FILE);
|
||||
{
|
||||
StaticObjectSet staticObjects = GameObjectLoader::loadAndCreateGameObjects(params.gameObjectsJsonPath, renderer, CONST_ZIP_FILE);
|
||||
gameObjects = std::move(staticObjects.single);
|
||||
instancedBatches = std::move(staticObjects.batches);
|
||||
}
|
||||
SDL_PumpEvents();
|
||||
|
||||
// Load interactive objects
|
||||
@@ -683,6 +687,27 @@ namespace FRG
|
||||
}
|
||||
|
||||
|
||||
void Location::drawInstancedStatics(const std::string& instancedShaderName, InstancedTexture textureKind,
|
||||
const std::function<void()>& setUniforms)
|
||||
{
|
||||
if (instancedBatches.empty()) return;
|
||||
|
||||
renderer.shaderManager.PushShader(instancedShaderName);
|
||||
if (setUniforms) setUniforms();
|
||||
renderer.SetMatrix();
|
||||
|
||||
for (auto& batch : instancedBatches) {
|
||||
if (textureKind != InstancedTexture::None) {
|
||||
const auto& texture = (textureKind == InstancedTexture::Darklands) ? batch.textureDarklands : batch.texture;
|
||||
if (!texture) continue;
|
||||
glBindTexture(GL_TEXTURE_2D, texture->getTexID());
|
||||
}
|
||||
renderer.DrawInstanced(batch);
|
||||
}
|
||||
|
||||
renderer.shaderManager.PopShader();
|
||||
}
|
||||
|
||||
void Location::drawGame()
|
||||
{
|
||||
|
||||
@@ -718,6 +743,11 @@ namespace FRG
|
||||
glBindTexture(GL_TEXTURE_2D, gameObj.texture->getTexID());
|
||||
renderer.DrawVertexRenderStruct(gameObj.mesh);
|
||||
}
|
||||
drawInstancedStatics("fog_inst", InstancedTexture::Color, [&]() {
|
||||
renderer.RenderUniform1i(textureUniformName, 0);
|
||||
renderer.RenderUniform3fv("uPlayerEyePos", playerEyePos);
|
||||
renderer.RenderUniform1f("uAlpha", 1.0f);
|
||||
});
|
||||
|
||||
for (auto& intObj : interactiveObjects) {
|
||||
if (intObj.state.isActive) {
|
||||
@@ -812,6 +842,7 @@ namespace FRG
|
||||
for (auto& [name, gameObj] : gameObjects) {
|
||||
renderer.DrawVertexRenderStruct(gameObj.mesh);
|
||||
}
|
||||
drawInstancedStatics("shadow_depth_inst", InstancedTexture::None);
|
||||
|
||||
for (auto& intObj : interactiveObjects) {
|
||||
if (intObj.state.castShadow && intObj.loadedObject.texture) {
|
||||
@@ -907,6 +938,16 @@ namespace FRG
|
||||
glBindTexture(GL_TEXTURE_2D, gameObj.texture->getTexID());
|
||||
renderer.DrawVertexRenderStruct(gameObj.mesh);
|
||||
}
|
||||
#ifndef DEBUG_LIGHT
|
||||
drawInstancedStatics("fog_shadow_inst", InstancedTexture::Color, [&]() {
|
||||
renderer.RenderUniform1i(textureUniformName, 0);
|
||||
renderer.RenderUniform1i("uShadowMap", 1);
|
||||
renderer.RenderUniform3fv("uPlayerEyePos", playerEyePos);
|
||||
renderer.RenderUniformMatrix4fv("uLightFromCamera", false, lightFromCamera.data());
|
||||
renderer.RenderUniform3fv("uLightDir", lightDirCamera.data());
|
||||
renderer.RenderUniform1f("uAlpha", 1.0f);
|
||||
});
|
||||
#endif
|
||||
|
||||
CheckGlError(__FILE__, __LINE__);
|
||||
for (auto& intObj : interactiveObjects) {
|
||||
@@ -1004,6 +1045,11 @@ namespace FRG
|
||||
glBindTexture(GL_TEXTURE_2D, gameObj.textureDarklands->getTexID());
|
||||
renderer.DrawVertexRenderStruct(gameObj.mesh);
|
||||
}
|
||||
drawInstancedStatics("darklands_fog_inst", InstancedTexture::Darklands, [&]() {
|
||||
renderer.RenderUniform1i(textureUniformName, 0);
|
||||
renderer.RenderUniform3fv("uPlayerEyePos", playerEyePos);
|
||||
renderer.RenderUniform1f("uAlpha", 1.0f);
|
||||
});
|
||||
|
||||
for (auto& intObj : interactiveObjects) {
|
||||
if (intObj.state.isActive) {
|
||||
@@ -1067,6 +1113,7 @@ namespace FRG
|
||||
for (auto& [name, gameObj] : gameObjects) {
|
||||
renderer.DrawVertexRenderStruct(gameObj.mesh);
|
||||
}
|
||||
drawInstancedStatics("shadow_depth_inst", InstancedTexture::None);
|
||||
for (auto& intObj : interactiveObjects) {
|
||||
if (intObj.state.castShadowNight && intObj.loadedObject.texture) {
|
||||
renderer.PushMatrix();
|
||||
@@ -1279,6 +1326,26 @@ namespace FRG
|
||||
glBindTexture(GL_TEXTURE_2D, gameObj.texture->getTexID());
|
||||
renderer.DrawVertexRenderStruct(gameObj.mesh);
|
||||
}
|
||||
drawInstancedStatics(hasShadows ? "night_fog_shadow_inst" : "night_fog_inst", InstancedTexture::Color, [&]() {
|
||||
renderer.RenderUniform1i(textureUniformName, 0);
|
||||
if (hasShadows) {
|
||||
renderer.RenderUniform1i("uShadowMap", 1);
|
||||
renderer.RenderUniformMatrix4fv("uLightFromCamera", false, lightFromCamera.data());
|
||||
renderer.RenderUniform3fv("uLightDir", plDirEye);
|
||||
}
|
||||
renderer.RenderUniform3fv("uPlayerEyePos", playerEyePos);
|
||||
renderer.RenderUniform3fv("uAmbientColor", ambientColor);
|
||||
renderer.RenderUniform3fv("uFogColor", fogColor);
|
||||
renderer.RenderUniform1i("uPointLightCount", lightCount);
|
||||
if (lightCount > 0) {
|
||||
renderer.RenderUniform3fvArray("uPointLightPos[0]", lightCount, plPosEye);
|
||||
renderer.RenderUniform3fvArray("uPointLightDir[0]", lightCount, plDirEye);
|
||||
renderer.RenderUniform3fvArray("uPointLightColor[0]", lightCount, plColors);
|
||||
renderer.RenderUniform2fvArray("uPointLightWorldXZ[0]", lightCount, plWorldXZ);
|
||||
renderer.RenderUniform2fvArray("uPointLightLimitXZ[0]", lightCount, plLimitXZ);
|
||||
}
|
||||
renderer.RenderUniform1f("uAlpha", 1.0f);
|
||||
});
|
||||
|
||||
for (auto& intObj : interactiveObjects) {
|
||||
if (intObj.state.isActive) {
|
||||
|
||||
@@ -77,6 +77,9 @@ namespace FRG
|
||||
|
||||
std::unordered_map<std::string, LoadedGameObject> gameObjects;
|
||||
|
||||
// Repeated static objects (same mesh + textures) drawn with one instanced call each.
|
||||
std::vector<InstancedBatch> instancedBatches;
|
||||
|
||||
std::vector<InteractiveObject> interactiveObjects;
|
||||
|
||||
// Shared: the same player moves from location to location and outlives them.
|
||||
@@ -207,6 +210,14 @@ namespace FRG
|
||||
int findInteractiveObjectIndex(const InteractiveObject* obj) const;
|
||||
int findTeleportZoneIndex(const TeleportZone* tz) const;
|
||||
|
||||
enum class InstancedTexture { None, Color, Darklands };
|
||||
|
||||
// Draws instancedBatches with the instancing variant of the current pass shader
|
||||
// (e.g. "fog_inst"). The variant is a separate program, so setUniforms must re-send
|
||||
// the pass uniforms; the matrix stack tops are uploaded here.
|
||||
void drawInstancedStatics(const std::string& instancedShaderName, InstancedTexture textureKind,
|
||||
const std::function<void()>& setUniforms = {});
|
||||
|
||||
void resolveCharacterCollisions();
|
||||
void updateDynamicReplans(int64_t deltaMs);
|
||||
void loadTeleportZones(const std::string& jsonPath, const char* zipFile);
|
||||
|
||||
+102
-31
@@ -55,6 +55,7 @@ namespace FRG {
|
||||
data.positionY = item.value("positionY", 0.0f);
|
||||
data.positionZ = item.value("positionZ", 0.0f);
|
||||
data.scale = item.value("scale", 1.0f);
|
||||
data.instanced = item.value("instanced", true);
|
||||
return data;
|
||||
}
|
||||
|
||||
@@ -154,6 +155,36 @@ namespace FRG {
|
||||
return st;
|
||||
}
|
||||
|
||||
static VertexDataStruct loadMeshData(const std::string& meshPath, const std::string& zipPath)
|
||||
{
|
||||
if (meshPath.size() > 4 && meshPath.compare(meshPath.size() - 4, 4, ".bin") == 0)
|
||||
return LoadModelFromBinFile(meshPath, zipPath);
|
||||
return LoadFromTextFile02(meshPath, zipPath);
|
||||
}
|
||||
|
||||
static Eigen::Matrix3f makeRotationMatrix(const GameObjectData& data)
|
||||
{
|
||||
constexpr float kDeg2Rad = static_cast<float>(M_PI) / 180.0f;
|
||||
Eigen::Quaternionf rot = Eigen::Quaternionf::Identity();
|
||||
if (data.rotationX != 0.0f)
|
||||
rot = Eigen::Quaternionf(Eigen::AngleAxisf(data.rotationX * kDeg2Rad, Eigen::Vector3f::UnitX())) * rot;
|
||||
if (data.rotationY != 0.0f)
|
||||
rot = Eigen::Quaternionf(Eigen::AngleAxisf(data.rotationY * kDeg2Rad, Eigen::Vector3f::UnitY())) * rot;
|
||||
if (data.rotationZ != 0.0f)
|
||||
rot = Eigen::Quaternionf(Eigen::AngleAxisf(data.rotationZ * kDeg2Rad, Eigen::Vector3f::UnitZ())) * rot;
|
||||
return rot.toRotationMatrix();
|
||||
}
|
||||
|
||||
// Equivalent of what buildLoadedObject + Move() bake into the vertices:
|
||||
// RotateByMatrix computes v^T * R (= R^T * v), then Scale, then Move.
|
||||
static Eigen::Matrix4f makeInstanceMatrix(const GameObjectData& data)
|
||||
{
|
||||
Eigen::Matrix4f m = Eigen::Matrix4f::Identity();
|
||||
m.block<3, 3>(0, 0) = data.scale * makeRotationMatrix(data).transpose();
|
||||
m.block<3, 1>(0, 3) = Eigen::Vector3f(data.positionX, data.positionY, data.positionZ);
|
||||
return m;
|
||||
}
|
||||
|
||||
LoadedGameObject GameObjectLoader::buildLoadedObject(const GameObjectData& data, Renderer& renderer, const std::string& zipPath)
|
||||
{
|
||||
LoadedGameObject obj;
|
||||
@@ -164,20 +195,9 @@ namespace FRG {
|
||||
if (!data.textureDarkandsPath.empty())
|
||||
obj.textureDarklands = renderer.textureManager.LoadFromPng(data.textureDarkandsPath, zipPath);
|
||||
|
||||
if (data.meshPath.size() > 4 && data.meshPath.compare(data.meshPath.size() - 4, 4, ".bin") == 0)
|
||||
obj.mesh.data = LoadModelFromBinFile(data.meshPath, zipPath);
|
||||
else
|
||||
obj.mesh.data = LoadFromTextFile02(data.meshPath, zipPath);
|
||||
obj.mesh.data = loadMeshData(data.meshPath, zipPath);
|
||||
|
||||
constexpr float kDeg2Rad = static_cast<float>(M_PI) / 180.0f;
|
||||
Eigen::Quaternionf rot = Eigen::Quaternionf::Identity();
|
||||
if (data.rotationX != 0.0f)
|
||||
rot = Eigen::Quaternionf(Eigen::AngleAxisf(data.rotationX * kDeg2Rad, Eigen::Vector3f::UnitX())) * rot;
|
||||
if (data.rotationY != 0.0f)
|
||||
rot = Eigen::Quaternionf(Eigen::AngleAxisf(data.rotationY * kDeg2Rad, Eigen::Vector3f::UnitY())) * rot;
|
||||
if (data.rotationZ != 0.0f)
|
||||
rot = Eigen::Quaternionf(Eigen::AngleAxisf(data.rotationZ * kDeg2Rad, Eigen::Vector3f::UnitZ())) * rot;
|
||||
obj.mesh.data.RotateByMatrix(rot.toRotationMatrix());
|
||||
obj.mesh.data.RotateByMatrix(makeRotationMatrix(data));
|
||||
|
||||
if (data.scale != 1.0f)
|
||||
obj.mesh.data.Scale(data.scale);
|
||||
@@ -189,34 +209,85 @@ namespace FRG {
|
||||
// Public API
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
std::unordered_map<std::string, LoadedGameObject> GameObjectLoader::loadAndCreateGameObjects(
|
||||
StaticObjectSet GameObjectLoader::loadAndCreateGameObjects(
|
||||
const std::string& jsonPath,
|
||||
Renderer& renderer,
|
||||
const std::string& zipPath)
|
||||
{
|
||||
std::unordered_map<std::string, LoadedGameObject> gameObjects;
|
||||
StaticObjectSet result;
|
||||
|
||||
for (const auto& data : loadFromJson(jsonPath, zipPath)) {
|
||||
// Service the OS message queue between loads so the window doesn't
|
||||
// get flagged as "not responding" during long location loads.
|
||||
SDL_PumpEvents();
|
||||
logger() << "Loading game object: " << data.name << std::endl;
|
||||
try {
|
||||
LoadedGameObject obj = buildLoadedObject(data, renderer, zipPath);
|
||||
std::vector<GameObjectData> allData = loadFromJson(jsonPath, zipPath);
|
||||
|
||||
if (data.positionX != 0.0f || data.positionY != 0.0f || data.positionZ != 0.0f)
|
||||
obj.mesh.data.Move({ data.positionX, data.positionY, data.positionZ });
|
||||
// Group objects sharing mesh + textures (in file order) so they can be drawn instanced.
|
||||
std::vector<std::vector<const GameObjectData*>> groups;
|
||||
std::unordered_map<std::string, size_t> groupIndexByKey;
|
||||
|
||||
obj.mesh.RefreshVBO();
|
||||
gameObjects[data.name] = std::move(obj);
|
||||
logger() << "Successfully loaded: " << data.name << std::endl;
|
||||
} catch (const std::exception& e) {
|
||||
std::cerr << "GameObjectLoader: Failed to load '" << data.name << "': " << e.what() << std::endl;
|
||||
for (const auto& data : allData) {
|
||||
if (!data.instanced) {
|
||||
groups.push_back({ &data });
|
||||
continue;
|
||||
}
|
||||
std::string key = data.meshPath + '\n' + data.texturePath + '\n' + data.textureDarkandsPath;
|
||||
auto it = groupIndexByKey.find(key);
|
||||
if (it == groupIndexByKey.end()) {
|
||||
groupIndexByKey[key] = groups.size();
|
||||
groups.push_back({ &data });
|
||||
} else {
|
||||
groups[it->second].push_back(&data);
|
||||
}
|
||||
}
|
||||
|
||||
logger() << "Total game objects loaded: " << gameObjects.size() << std::endl;
|
||||
return gameObjects;
|
||||
for (const auto& group : groups) {
|
||||
// Service the OS message queue between loads so the window doesn't
|
||||
// get flagged as "not responding" during long location loads.
|
||||
SDL_PumpEvents();
|
||||
|
||||
const GameObjectData& first = *group.front();
|
||||
|
||||
if (group.size() == 1) {
|
||||
logger() << "Loading game object: " << first.name << std::endl;
|
||||
try {
|
||||
LoadedGameObject obj = buildLoadedObject(first, renderer, zipPath);
|
||||
|
||||
if (first.positionX != 0.0f || first.positionY != 0.0f || first.positionZ != 0.0f)
|
||||
obj.mesh.data.Move({ first.positionX, first.positionY, first.positionZ });
|
||||
|
||||
obj.mesh.RefreshVBO();
|
||||
result.single[first.name] = std::move(obj);
|
||||
logger() << "Successfully loaded: " << first.name << std::endl;
|
||||
} catch (const std::exception& e) {
|
||||
std::cerr << "GameObjectLoader: Failed to load '" << first.name << "': " << e.what() << std::endl;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
logger() << "Loading instanced batch: " << first.meshPath << " x" << group.size() << std::endl;
|
||||
try {
|
||||
InstancedBatch batch;
|
||||
batch.name = first.name;
|
||||
batch.texture = renderer.textureManager.LoadFromPng(first.texturePath, zipPath);
|
||||
if (!first.textureDarkandsPath.empty())
|
||||
batch.textureDarklands = renderer.textureManager.LoadFromPng(first.textureDarkandsPath, zipPath);
|
||||
|
||||
// Mesh stays in local space; rotation, scale and position live in the instance matrices.
|
||||
batch.mesh.data = loadMeshData(first.meshPath, zipPath);
|
||||
batch.mesh.RefreshVBO();
|
||||
|
||||
batch.instances.reserve(group.size());
|
||||
for (const GameObjectData* d : group)
|
||||
batch.instances.push_back(makeInstanceMatrix(*d));
|
||||
batch.RefreshInstanceVBO();
|
||||
|
||||
result.batches.push_back(std::move(batch));
|
||||
logger() << "Successfully loaded instanced batch: " << first.meshPath << std::endl;
|
||||
} catch (const std::exception& e) {
|
||||
std::cerr << "GameObjectLoader: Failed to load instanced batch '" << first.meshPath << "': " << e.what() << std::endl;
|
||||
}
|
||||
}
|
||||
|
||||
logger() << "Total game objects loaded: " << result.single.size() << " single, "
|
||||
<< result.batches.size() << " instanced batches" << std::endl;
|
||||
return result;
|
||||
}
|
||||
|
||||
std::vector<InteractiveObject> GameObjectLoader::loadAndCreateInteractiveObjects(
|
||||
|
||||
@@ -26,10 +26,20 @@ namespace FRG {
|
||||
float positionY = 0.0f;
|
||||
float positionZ = 0.0f;
|
||||
float scale = 1.0f;
|
||||
// Objects sharing mesh and textures are drawn with one instanced call.
|
||||
// Set "instanced": false in the JSON to keep an object as a standalone mesh.
|
||||
bool instanced = true;
|
||||
|
||||
LoadedGameObjectState toLoadedGameObjectState() const;
|
||||
};
|
||||
|
||||
// Result of loading a static object list: unique objects keep their own mesh,
|
||||
// repeated ones are merged into instanced batches.
|
||||
struct StaticObjectSet {
|
||||
std::unordered_map<std::string, LoadedGameObject> single;
|
||||
std::vector<InstancedBatch> batches;
|
||||
};
|
||||
|
||||
struct InteractiveObjectData {
|
||||
GameObjectData base;
|
||||
float interactionRadius = 2.0f;
|
||||
@@ -86,7 +96,7 @@ namespace FRG {
|
||||
|
||||
class GameObjectLoader {
|
||||
public:
|
||||
static std::unordered_map<std::string, LoadedGameObject> loadAndCreateGameObjects(
|
||||
static StaticObjectSet loadAndCreateGameObjects(
|
||||
const std::string& jsonPath,
|
||||
Renderer& renderer,
|
||||
const std::string& zipPath = ""
|
||||
|
||||
@@ -113,9 +113,12 @@ PFNGLBINDBUFFERBASEPROC glBindBufferBase = NULL;
|
||||
|
||||
PFNGLGENVERTEXARRAYSPROC glGenVertexArrays = NULL;
|
||||
PFNGLBINDVERTEXARRAYPROC glBindVertexArray = NULL;
|
||||
PFNGLDELETEVERTEXARRAYSPROC glDeleteVertexArray = NULL;
|
||||
PFNGLDELETEVERTEXARRAYSPROC glDeleteVertexArrays = NULL;
|
||||
|
||||
#endif
|
||||
PFNGLDRAWARRAYSINSTANCEDPROC glDrawArraysInstanced = NULL;
|
||||
PFNGLVERTEXATTRIBDIVISORPROC glVertexAttribDivisor = NULL;
|
||||
|
||||
#endif
|
||||
|
||||
namespace FRG {
|
||||
|
||||
@@ -308,11 +311,20 @@ namespace FRG {
|
||||
|
||||
glGenVertexArrays = (PFNGLGENVERTEXARRAYSPROC)wglGetProcAddress("glGenVertexArrays");
|
||||
glBindVertexArray = (PFNGLBINDVERTEXARRAYPROC)wglGetProcAddress("glBindVertexArray");
|
||||
glDeleteVertexArray = (PFNGLDELETEVERTEXARRAYSPROC)wglGetProcAddress("glBindVertexArray");
|
||||
glDeleteVertexArrays = (PFNGLDELETEVERTEXARRAYSPROC)wglGetProcAddress("glDeleteVertexArrays");
|
||||
|
||||
if (glGenVertexArrays == NULL ||
|
||||
glBindVertexArray == NULL ||
|
||||
glDeleteVertexArray == NULL)
|
||||
glDeleteVertexArrays == NULL)
|
||||
{
|
||||
ok = false;
|
||||
}
|
||||
|
||||
glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDPROC)wglGetProcAddress("glDrawArraysInstanced");
|
||||
glVertexAttribDivisor = (PFNGLVERTEXATTRIBDIVISORPROC)wglGetProcAddress("glVertexAttribDivisor");
|
||||
|
||||
if (glDrawArraysInstanced == NULL ||
|
||||
glVertexAttribDivisor == NULL)
|
||||
{
|
||||
ok = false;
|
||||
}
|
||||
|
||||
@@ -150,7 +150,11 @@ extern PFNGLBINDBUFFERBASEPROC glBindBufferBase;
|
||||
|
||||
extern PFNGLGENVERTEXARRAYSPROC glGenVertexArrays;
|
||||
extern PFNGLBINDVERTEXARRAYPROC glBindVertexArray;
|
||||
extern PFNGLDELETEVERTEXARRAYSPROC glDeleteVertexArray;
|
||||
extern PFNGLDELETEVERTEXARRAYSPROC glDeleteVertexArrays;
|
||||
|
||||
//Instancing (core since OpenGL 3.3)
|
||||
extern PFNGLDRAWARRAYSINSTANCEDPROC glDrawArraysInstanced;
|
||||
extern PFNGLVERTEXATTRIBDIVISORPROC glVertexAttribDivisor;
|
||||
#else
|
||||
|
||||
#endif
|
||||
|
||||
+67
-2
@@ -131,7 +131,7 @@ namespace FRG {
|
||||
glDeleteVertexArrays(1, &vao);
|
||||
#else
|
||||
//Windows
|
||||
glDeleteVertexArray(1, &vao);
|
||||
glDeleteVertexArrays(1, &vao);
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
@@ -920,7 +920,73 @@ namespace FRG {
|
||||
glDisableVertexAttribArray(it->second);
|
||||
}
|
||||
|
||||
void InstancedBatch::RefreshInstanceVBO()
|
||||
{
|
||||
if (instances.empty())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (!instanceVBO)
|
||||
{
|
||||
instanceVBO = std::make_shared<VBOHolder>();
|
||||
}
|
||||
|
||||
// Matrix4f is column-major with no padding: 16 floats per instance.
|
||||
glBindBuffer(GL_ARRAY_BUFFER, instanceVBO->getBuffer());
|
||||
glBufferData(GL_ARRAY_BUFFER, instances.size() * sizeof(Matrix4f), instances.data(), GL_STATIC_DRAW);
|
||||
}
|
||||
|
||||
void Renderer::DrawVertexRenderStruct(const VertexRenderStruct& VertexRenderStruct)
|
||||
{
|
||||
BindVertexRenderStructAttribs(VertexRenderStruct);
|
||||
glDrawArrays(GL_TRIANGLES, 0, static_cast<GLsizei>(VertexRenderStruct.data.PositionData.size()));
|
||||
}
|
||||
|
||||
void Renderer::DrawInstanced(const InstancedBatch& batch)
|
||||
{
|
||||
if (batch.instances.empty() || !batch.instanceVBO || !batch.mesh.positionVBO)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
BindVertexRenderStructAttribs(batch.mesh);
|
||||
|
||||
static const char* const instanceAttribNames[4] = { "iModel0", "iModel1", "iModel2", "iModel3" };
|
||||
|
||||
auto shader = shaderManager.GetCurrentShader();
|
||||
|
||||
glBindBuffer(GL_ARRAY_BUFFER, batch.instanceVBO->getBuffer());
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
auto it = shader->attribList.find(instanceAttribNames[i]);
|
||||
if (it == shader->attribList.end())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
glVertexAttribPointer(it->second, 4, GL_FLOAT, GL_FALSE, sizeof(Matrix4f),
|
||||
reinterpret_cast<const void*>(static_cast<size_t>(i) * 4 * sizeof(float)));
|
||||
glVertexAttribDivisor(it->second, 1);
|
||||
}
|
||||
|
||||
glDrawArraysInstanced(GL_TRIANGLES, 0,
|
||||
static_cast<GLsizei>(batch.mesh.data.PositionData.size()),
|
||||
static_cast<GLsizei>(batch.instances.size()));
|
||||
|
||||
// The divisor is vertex array state: reset it so that later non-instanced draws
|
||||
// with these attribute locations are not affected.
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
auto it = shader->attribList.find(instanceAttribNames[i]);
|
||||
if (it != shader->attribList.end())
|
||||
{
|
||||
glVertexAttribDivisor(it->second, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Renderer::BindVertexRenderStructAttribs(const VertexRenderStruct& VertexRenderStruct)
|
||||
{
|
||||
#ifndef EMSCRIPTEN
|
||||
#ifndef __ANDROID__
|
||||
@@ -988,7 +1054,6 @@ namespace FRG {
|
||||
|
||||
glBindBuffer(GL_ARRAY_BUFFER, VertexRenderStruct.positionVBO->getBuffer());
|
||||
VertexAttribPointer3fv(vPosition, 0, NULL);
|
||||
glDrawArrays(GL_TRIANGLES, 0, static_cast<GLsizei>(VertexRenderStruct.data.PositionData.size()));
|
||||
}
|
||||
|
||||
void worldToScreenCoordinates(Vector3f objectPos,
|
||||
|
||||
@@ -87,6 +87,22 @@ namespace FRG {
|
||||
void AssignFrom(const VertexDataStruct& v);
|
||||
};
|
||||
|
||||
// One mesh drawn many times with a per-instance model matrix (glDrawArraysInstanced).
|
||||
// The mesh is stored in local space; each instance matrix is fed to the *_inst shaders
|
||||
// as four vec4 attributes (iModel0..iModel3, divisor 1).
|
||||
struct InstancedBatch
|
||||
{
|
||||
std::string name;
|
||||
VertexRenderStruct mesh;
|
||||
std::shared_ptr<Texture> texture;
|
||||
std::shared_ptr<Texture> textureDarklands;
|
||||
|
||||
std::vector<Matrix4f> instances;
|
||||
std::shared_ptr<VBOHolder> instanceVBO;
|
||||
|
||||
void RefreshInstanceVBO();
|
||||
};
|
||||
|
||||
VertexDataStruct CreateRect2D(Vector2f center, Vector2f halfWidthHeight, float zLevel);
|
||||
VertexDataStruct CreatePolygonFloor(const std::vector<Eigen::Vector2f>& polygon, float yLevel, const Vector3f& color);
|
||||
VertexDataStruct CreateRectHorizontalSections2D(Vector2f center, Vector2f halfWidthHeight, float zLevel, size_t sectionCount);
|
||||
@@ -150,6 +166,12 @@ namespace FRG {
|
||||
void DisableVertexAttribArray(const std::string& attribName);
|
||||
|
||||
void DrawVertexRenderStruct(const VertexRenderStruct& VertexRenderStruct);
|
||||
|
||||
// The current shader must be an instancing variant (compiled with INSTANCED).
|
||||
void DrawInstanced(const InstancedBatch& batch);
|
||||
|
||||
protected:
|
||||
void BindVertexRenderStructAttribs(const VertexRenderStruct& VertexRenderStruct);
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -160,10 +160,36 @@ namespace FRG {
|
||||
}
|
||||
|
||||
|
||||
static std::string insertDefinesAfterVersion(const std::string &source, const std::string &defines) {
|
||||
if (defines.empty()) {
|
||||
return source;
|
||||
}
|
||||
|
||||
size_t versionPos = source.find("#version");
|
||||
if (versionPos == std::string::npos) {
|
||||
return defines + source;
|
||||
}
|
||||
|
||||
size_t lineEnd = source.find('\n', versionPos);
|
||||
if (lineEnd == std::string::npos) {
|
||||
return source + "\n" + defines;
|
||||
}
|
||||
|
||||
return source.substr(0, lineEnd + 1) + defines + source.substr(lineEnd + 1);
|
||||
}
|
||||
|
||||
void ShaderManager::AddShaderFromFiles(const std::string &shaderName,
|
||||
const std::string &vertexShaderFileName,
|
||||
const std::string &fragmentShaderFileName,
|
||||
const std::string &ZIPFileName) {
|
||||
AddShaderFromFiles(shaderName, vertexShaderFileName, fragmentShaderFileName, ZIPFileName, "");
|
||||
}
|
||||
|
||||
void ShaderManager::AddShaderFromFiles(const std::string &shaderName,
|
||||
const std::string &vertexShaderFileName,
|
||||
const std::string &fragmentShaderFileName,
|
||||
const std::string &ZIPFileName,
|
||||
const std::string &vertexDefines) {
|
||||
#ifdef __ANDROID__
|
||||
__android_log_print(ANDROID_LOG_INFO, "ShaderManager",
|
||||
"Loading shader: %s", shaderName.c_str());
|
||||
@@ -194,6 +220,8 @@ namespace FRG {
|
||||
fragmentShader = readTextFile(fragmentShaderFileName);
|
||||
}
|
||||
|
||||
vertexShader = insertDefinesAfterVersion(vertexShader, vertexDefines);
|
||||
|
||||
shaderResourceMap[shaderName] = std::make_shared<ShaderResource>(vertexShader,
|
||||
fragmentShader);
|
||||
}
|
||||
|
||||
@@ -38,6 +38,10 @@ namespace FRG {
|
||||
public:
|
||||
void AddShaderFromFiles(const std::string& shaderName, const std::string& vertexShaderFileName, const std::string& fragmentShaderFileName, const std::string& ZIPFileName = "");
|
||||
|
||||
// Same as above, but vertexDefines (e.g. "#define INSTANCED\n") is inserted into the
|
||||
// vertex shader source right after its #version line (or at the very top if it has none).
|
||||
void AddShaderFromFiles(const std::string& shaderName, const std::string& vertexShaderFileName, const std::string& fragmentShaderFileName, const std::string& ZIPFileName, const std::string& vertexDefines);
|
||||
|
||||
void PushShader(const std::string& shaderName);
|
||||
void PopShader();
|
||||
void EnableVertexAttribArrays();
|
||||
|
||||
Reference in new issue
Block a user