|
@@ -330,6 +330,10 @@ def normalize(v):
|
|
# #####################################################
|
|
# #####################################################
|
|
# MTL parser
|
|
# MTL parser
|
|
# #####################################################
|
|
# #####################################################
|
|
|
|
+def texture_relative_path(fullpath):
|
|
|
|
+ texture_file = os.path.basename(fullpath)
|
|
|
|
+ return texture_file
|
|
|
|
+
|
|
def parse_mtl(fname):
|
|
def parse_mtl(fname):
|
|
"""Parse MTL file.
|
|
"""Parse MTL file.
|
|
"""
|
|
"""
|
|
@@ -383,27 +387,27 @@ def parse_mtl(fname):
|
|
# Diffuse texture
|
|
# Diffuse texture
|
|
# map_Kd texture_diffuse.jpg
|
|
# map_Kd texture_diffuse.jpg
|
|
if chunks[0] == "map_Kd" and len(chunks) == 2:
|
|
if chunks[0] == "map_Kd" and len(chunks) == 2:
|
|
- materials[identifier]["mapDiffuse"] = chunks[1]
|
|
|
|
|
|
+ materials[identifier]["mapDiffuse"] = texture_relative_path(chunks[1])
|
|
|
|
|
|
# Ambient texture
|
|
# Ambient texture
|
|
# map_Ka texture_ambient.jpg
|
|
# map_Ka texture_ambient.jpg
|
|
if chunks[0] == "map_Ka" and len(chunks) == 2:
|
|
if chunks[0] == "map_Ka" and len(chunks) == 2:
|
|
- materials[identifier]["mapAmbient"] = chunks[1]
|
|
|
|
|
|
+ materials[identifier]["mapAmbient"] = texture_relative_path(chunks[1])
|
|
|
|
|
|
# Specular texture
|
|
# Specular texture
|
|
# map_Ks texture_specular.jpg
|
|
# map_Ks texture_specular.jpg
|
|
if chunks[0] == "map_Ks" and len(chunks) == 2:
|
|
if chunks[0] == "map_Ks" and len(chunks) == 2:
|
|
- materials[identifier]["mapSpecular"] = chunks[1]
|
|
|
|
|
|
+ materials[identifier]["mapSpecular"] = texture_relative_path(chunks[1])
|
|
|
|
|
|
# Alpha texture
|
|
# Alpha texture
|
|
# map_d texture_alpha.png
|
|
# map_d texture_alpha.png
|
|
if chunks[0] == "map_d" and len(chunks) == 2:
|
|
if chunks[0] == "map_d" and len(chunks) == 2:
|
|
- materials[identifier]["mapAlpha"] = chunks[1]
|
|
|
|
|
|
+ materials[identifier]["mapAlpha"] = texture_relative_path(chunks[1])
|
|
|
|
|
|
# Bump texture
|
|
# Bump texture
|
|
# map_bump texture_bump.jpg or bump texture_bump.jpg
|
|
# map_bump texture_bump.jpg or bump texture_bump.jpg
|
|
if (chunks[0] == "map_bump" or chunks[0] == "bump") and len(chunks) == 2:
|
|
if (chunks[0] == "map_bump" or chunks[0] == "bump") and len(chunks) == 2:
|
|
- materials[identifier]["mapBump"] = chunks[1]
|
|
|
|
|
|
+ materials[identifier]["mapBump"] = texture_relative_path(chunks[1])
|
|
|
|
|
|
# Illumination
|
|
# Illumination
|
|
# illum 2
|
|
# illum 2
|