@@ -475,7 +475,8 @@ SimpleRaytracer::parse_scene_xml(const std::string& scenefile)
475475 if (auto it = shadermap.find (name); it != shadermap.end ()) {
476476 int shaderID = it->second ;
477477 if (shaderID >= 0 && shaderID < int (shaders ().size ())) {
478- fprintf (stderr, " Updating shader %d - %s\n " , shaderID, shadertype.c_str ());
478+ print (stderr, " Updating shader {} - {}\n " , shaderID,
479+ shadertype);
479480 // we already have a material under this name,
480481 Material& m = shaders ()[shaderID];
481482 // TODO: could we query the shadertype directly from the ShaderGroup?
@@ -1234,13 +1235,15 @@ SimpleRaytracer::prepare_render()
12341235 // Loop through all triangles and run displacement shader if there is one
12351236 // or copy the input point if there is none
12361237 std::vector<Vec3> disp_verts (scene.verts .size (), Vec3 (0 , 0 , 0 ));
1237- std::vector<int > valance (scene.verts .size (), 0 ); // number of times each vertex has been displaced
1238+ std::vector<int > valance (scene.verts .size (), 0 );
1239+ // ^ number of times each vertex has been displaced
12381240
12391241 OSL::PerThreadInfo* thread_info = shadingsys->create_thread_info ();
12401242 ShadingContext* ctx = shadingsys->get_context (thread_info);
12411243
12421244 bool has_smooth_normals = false ;
1243- for (int primID = 0 , nprims = scene.triangles .size (); primID < nprims; primID++) {
1245+ for (int primID = 0 , nprims = scene.triangles .size (); primID < nprims;
1246+ primID++) {
12441247 Vec3 p[3 ], n[3 ];
12451248 Vec2 uv[3 ];
12461249
@@ -1261,13 +1264,13 @@ SimpleRaytracer::prepare_render()
12611264 }
12621265
12631266
1264- Vec3 Ng = (p[0 ] - p[1 ]).cross (p[0 ] - p[2 ]);
1267+ Vec3 Ng = (p[0 ] - p[1 ]).cross (p[0 ] - p[2 ]);
12651268 float area = 0 .5f * Ng.length ();
1266- Ng = Ng.normalize ();
1269+ Ng = Ng.normalize ();
12671270 if (scene.n_triangles [primID].a >= 0 ) {
1268- n[0 ] = scene.normals [scene.n_triangles [primID].a ];
1269- n[1 ] = scene.normals [scene.n_triangles [primID].b ];
1270- n[2 ] = scene.normals [scene.n_triangles [primID].c ];
1271+ n[0 ] = scene.normals [scene.n_triangles [primID].a ];
1272+ n[1 ] = scene.normals [scene.n_triangles [primID].b ];
1273+ n[2 ] = scene.normals [scene.n_triangles [primID].c ];
12711274 has_smooth_normals = true ;
12721275 } else {
12731276 n[0 ] = n[1 ] = n[2 ] = Ng;
@@ -1283,18 +1286,16 @@ SimpleRaytracer::prepare_render()
12831286
12841287 // displace each vertex
12851288 for (int i = 0 ; i < 3 ; i++) {
1286- ShaderGlobals sg = {} ;
1287- sg.P = p[i];
1288- sg.Ng = Ng;
1289- sg.N = n[i];
1290- sg.u = uv[i].x ;
1291- sg.v = uv[i].y ;
1292- sg.I = (p[i] - camera.eye ).normalize ();
1289+ ShaderGlobals sg;
1290+ sg.P = p[i];
1291+ sg.Ng = Ng;
1292+ sg.N = n[i];
1293+ sg.u = uv[i].x ;
1294+ sg.v = uv[i].y ;
1295+ sg.I = (p[i] - camera.eye ).normalize ();
12931296 sg.surfacearea = area;
12941297 sg.renderstate = &sg;
1295-
12961298 shadingsys->execute (*ctx, *m_shaders[shaderID].disp , sg);
1297-
12981299 p[i] = sg.P ;
12991300 }
13001301 disp_verts[scene.triangles [primID].a ] += p[0 ];
@@ -1319,7 +1320,8 @@ SimpleRaytracer::prepare_render()
13191320 if (has_smooth_normals) {
13201321 // Recompute the vertex normals (if we had some)
13211322 std::vector<Vec3> disp_normals (scene.normals .size (), Vec3 (0 , 0 , 0 ));
1322- for (int primID = 0 , nprims = scene.triangles .size (); primID < nprims; primID++) {
1323+ for (int primID = 0 , nprims = scene.triangles .size ();
1324+ primID < nprims; primID++) {
13231325 if (scene.n_triangles [primID].a >= 0 ) {
13241326 Vec3 p[3 ];
13251327 p[0 ] = scene.verts [scene.triangles [primID].a ];
0 commit comments