Automatically clamp vertex texture coords between 0.0~1.0

origin
Joshua Sigona 3 years ago
parent 46f41f2c86
commit 21e2e19e67
  1. 11
      models/staircase.mtl
  2. 85
      models/staircase.obj
  3. BIN
      models/staircase.wings
  4. 5
      src/sig/utils/OBJReader.java

@ -0,0 +1,11 @@
# Exported from Wings 3D 2.2.6.1
newmtl Cube1_auv
Ns 19.999999999999996
d 1.0
illum 2
Kd 1.0 1.0 1.0
Ka 0.0 0.0 0.0
Ks 0.19 0.19 0.19
Ke 0.0 0.0 0.0
map_Kd Cube1_auv.png

@ -0,0 +1,85 @@
# Exported from Wings 3D 2.2.6.1
mtllib staircase.mtl
o Cube1
#14 vertices, 24 faces
v -1.00000000 0.0000000e+0 -1.00000000
v -1.00000000 0.0000000e+0 1.00000000
v -1.00000000 1.00000000 -1.00000000
v -1.00000000 1.00000000 1.00000000
v 1.00000000 0.0000000e+0 -1.00000000
v 1.00000000 0.0000000e+0 1.00000000
v 1.00000000 1.00000000 -1.00000000
v 1.00000000 1.00000000 1.00000000
v -1.00000000 1.00000000 0.0000000e+0
v 1.00000000 1.00000000 0.0000000e+0
v -1.00000000 2.00000000 -1.00000000
v -1.00000000 2.00000000 0.0000000e+0
v 1.00000000 2.00000000 0.0000000e+0
v 1.00000000 2.00000000 -1.00000000
vt -3.3222222e-3 -3.8777778e-3
vt -3.3222222e-3 0.49612222
vt -2.1666667e-3 3.5555556e-3
vt -2.1666667e-3 0.50355556
vt -1.5888889e-3 6.4011111e-2
vt -1.5888889e-3 0.56401111
vt -1.5888889e-3 1.06401111
vt 1.3530843e-16 3.2959746e-17
vt 1.3530843e-16 0.50000000
vt 5.7777778e-4 3.3888889e-3
vt 5.7777778e-4 0.50338889
vt 2.0539683e-3 -2.5777778e-3
vt 2.0539683e-3 0.49665556
vt 2.0539683e-3 0.99588889
vt 2.2111111e-3 0.49387778
vt 2.2111111e-3 0.99387778
vt 5.5222222e-3 5.0888889e-3
vt 5.5222222e-3 0.99548889
vt 0.50000000 0.50000000
vt 0.50000000 1.00000000
vt 0.50128730 0.49665556
vt 0.50128730 0.99588889
vt 0.99592222 5.0888889e-3
vt 0.99592222 0.99548889
vt 0.99667778 -3.8777778e-3
vt 0.99667778 0.49612222
vt 0.99783333 3.5555556e-3
vt 0.99783333 0.50355556
vt 0.99841111 6.4011111e-2
vt 0.99841111 0.56401111
vt 0.99841111 1.06401111
vt 1.00000000 3.2959746e-17
vt 1.00000000 0.50000000
vt 1.00000000 1.00000000
vt 1.00052063 -2.5777778e-3
vt 1.00052063 0.49665556
vt 1.00057778 3.3888889e-3
vt 1.00057778 0.50338889
vt 1.00221111 0.49387778
vt 1.00221111 0.99387778
g Cube1_Cube1_auv
usemtl Cube1_auv
s 1
f 1/17/ 5/23/ 2/18/
f 1/12/ 9/21/ 3/13/
f 2/18/ 5/23/ 6/24/
f 2/15/ 6/39/ 4/16/
f 2/35/ 9/21/ 1/12/
f 3/6/ 5/31/ 1/7/
f 3/6/ 14/29/ 7/30/
f 4/16/ 6/39/ 8/40/
f 4/36/ 9/21/ 2/35/
f 4/10/ 10/38/ 9/11/
f 5/32/ 10/19/ 6/8/
f 6/8/ 10/19/ 8/9/
f 7/30/ 5/31/ 3/6/
f 7/33/ 10/19/ 5/32/
f 7/33/ 14/34/ 10/19/
f 8/37/ 10/38/ 4/10/
f 9/21/ 12/22/ 3/13/
f 10/25/ 12/2/ 9/1/
f 11/14/ 3/13/ 12/22/
f 11/5/ 14/29/ 3/6/
f 12/2/ 10/25/ 13/26/
f 12/3/ 14/28/ 11/4/
f 13/20/ 10/19/ 14/34/
f 13/27/ 14/28/ 12/3/

Binary file not shown.

@ -1,6 +1,5 @@
package sig.utils; package sig.utils;
import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.regex.Pattern; import java.util.regex.Pattern;
@ -21,7 +20,9 @@ public class OBJReader {
vertices.add(new float[]{Float.parseFloat(split[1]),Float.parseFloat(split[2]),Float.parseFloat(split[3])}); vertices.add(new float[]{Float.parseFloat(split[1]),Float.parseFloat(split[2]),Float.parseFloat(split[3])});
} else } else
if (split[0].equalsIgnoreCase("vt")) { if (split[0].equalsIgnoreCase("vt")) {
texs.add(new float[]{Float.parseFloat(split[1]),Float.parseFloat(split[2])}); float u=Math.min(1,Math.max(0,Float.parseFloat(split[1])));
float v=Math.min(1,Math.max(0,Float.parseFloat(split[2])));
texs.add(new float[]{u,v});
} else } else
if (split[0].equalsIgnoreCase("f")) { if (split[0].equalsIgnoreCase("f")) {
if (textured) { if (textured) {

Loading…
Cancel
Save