Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[Manta] r2342 - trunk/scenes


Chronological Thread 
  • From:
  • To:
  • Subject: [Manta] r2342 - trunk/scenes
  • Date: Fri, 24 Oct 2008 17:15:47 -0600 (MDT)

Author: aek
Date: Fri Oct 24 17:15:46 2008
New Revision: 2342

Modified:
   trunk/scenes/triangleSceneViewer.cc
Log:
Extend OBJ mesh writing to handle meshes with no per-vertex normals.

Modified: trunk/scenes/triangleSceneViewer.cc
==============================================================================
--- trunk/scenes/triangleSceneViewer.cc (original)
+++ trunk/scenes/triangleSceneViewer.cc Fri Oct 24 17:15:46 2008
@@ -170,13 +170,27 @@
         mesh->texture_indices[i+0] == Mesh::kNoTextureIndex ||
         mesh->texture_indices[i+1] == Mesh::kNoTextureIndex ||
         mesh->texture_indices[i+2] == Mesh::kNoTextureIndex)
-      fprintf(output, "f %d//%d %d//%d %d//%d\n",
+      if (mesh->normal_indices.size() < i+3)
+        fprintf(output, "f %d %d %d\n",
+                mesh->vertex_indices[i+0]+1,
+                mesh->vertex_indices[i+1]+1,
+                mesh->vertex_indices[i+2]+1);
+      else
+        fprintf(output, "f %d//%d %d//%d %d//%d\n",
+                mesh->vertex_indices[i+0]+1,
+                mesh->normal_indices[i+0]+1,
+                mesh->vertex_indices[i+1]+1,
+                mesh->normal_indices[i+1]+1,
+                mesh->vertex_indices[i+2]+1,
+                mesh->normal_indices[i+2]+1);
+    else if (mesh->normal_indices.size() < i+3)
+      fprintf(output, "f %d/%d %d/%d %d/%d\n",
               mesh->vertex_indices[i+0]+1,
-              mesh->normal_indices[i+0]+1,
+              mesh->texture_indices[i+0]+1,
               mesh->vertex_indices[i+1]+1,
-              mesh->normal_indices[i+1]+1,
+              mesh->texture_indices[i+1]+1,
               mesh->vertex_indices[i+2]+1,
-              mesh->normal_indices[i+2]+1);
+              mesh->texture_indices[i+2]+1);
     else
       fprintf(output, "f %d/%d/%d %d/%d/%d %d/%d/%d\n",
               mesh->vertex_indices[i+0]+1,


  • [Manta] r2342 - trunk/scenes, aek, 10/24/2008

Archive powered by MHonArc 2.6.16.

Top of page