+ l = fmaxf( dx, dy ) * .5f;
+
+ cx = (rt->bounds[1][0] + rt->bounds[0][0]) * .5f;
+ cy = (rt->bounds[1][1] + rt->bounds[0][1]) * .5f;
+
+ rt->bounds[0][0] = cx - l - padding;
+ rt->bounds[1][0] = cx + l + padding;
+ rt->bounds[0][1] = cy - l - padding;
+ rt->bounds[1][1] = cy + l + padding;
+
+ rt->scale = l + padding;
+
+ csr_update_subsamples( rt );
+}
+
+void csr_write_txt( char const *path, const char *name, csr_target *rt )
+{
+ FILE *write_ptr;
+
+ write_ptr = fopen( path, "w" );
+
+ fprintf( write_ptr, "\"%s\"\n\{\n", name );
+ fprintf( write_ptr, "\t\"material\" \"overviews/%s\"\n", name );
+ fprintf( write_ptr, "\t\"pos_x\" \"%.8f\"\n", rt->bounds[0][0] );
+ fprintf( write_ptr, "\t\"pos_y\" \"%.8f\"\n", rt->bounds[0][1] );
+ fprintf( write_ptr, "\t\"scale\" \"%.8f\"\n", rt->scale / (float)rt->x );
+ fprintf( write_ptr, "}\n" );
+
+ fclose( write_ptr );
+}
+
+void simple_raster( csr_target *rt, vmf_vert tri[3] )
+{
+ // Very very simplified rasterizing algorithm