diff --git a/io_scene_obj/export_obj.py b/io_scene_obj/export_obj.py
index 5c24fbf7aeec67bdce1b1599ed5994009a443a9f..03a866cab2eb3b16dfe5e7bee10325340b9d66c4 100644
--- a/io_scene_obj/export_obj.py
+++ b/io_scene_obj/export_obj.py
@@ -78,7 +78,14 @@ def write_mtl(scene, filepath, path_mode, copy_set, mtl_dict):
         file.write('newmtl %s\n' % mtl_mat_name)  # Define a new material: matname_imgname
 
         if mat:
-            file.write('Ns %.6f\n' % ((mat.specular_hardness - 1) * 1.9607843137254901))  # Hardness, convert blenders 1-511 to MTL's
+            # convert from blenders spec to 0 - 1000 range.
+            if mat.specular_shader == 'WARDISO':
+                tspec = (0.4 - mat.specular_slope) / 0.0004
+            else:
+                tspec = (mat.specular_hardness - 1) * 1.9607843137254901
+            file.write('Ns %.6f\n' % tspec)
+            del tspec
+
             file.write('Ka %.6f %.6f %.6f\n' % tuple(c * mat.ambient for c in worldAmb))  # Ambient, uses mirror colour,
             file.write('Kd %.6f %.6f %.6f\n' % tuple(c * mat.diffuse_intensity for c in mat.diffuse_color))  # Diffuse
             file.write('Ks %.6f %.6f %.6f\n' % tuple(c * mat.specular_intensity for c in mat.specular_color))  # Specular