fixed m4x3 mul, rendering works
[csRadar.git] / csRadar.c
index de19eba919c9411a9f523d53fd010ececf517b82..9c8c0b4d0f08e8922896ef1911554a2ba8c6e78a 100644 (file)
--- a/csRadar.c
+++ b/csRadar.c
@@ -39,6 +39,36 @@ int main( int argc, char *argv[] )
                
                vmf_map *map = vmf_init( argv[1], 1 );
                
+               // TODO: Make init/free codes
+               csr_target target = 
+               {
+                       .x = 1024, .y = 1024,
+                       .fragments = (csr_frag *)csr_malloc( 1024*1024*sizeof(csr_frag) ),
+                       .bounds = { -1000.f, -1000.f, 1000.f, 1000.f }
+               };
+               csr_rt_clear( &target );
+               
+               draw_vmf_group( &target, map, map->root, 0, NULL, NULL );
+               
+               float *rgba_test = (float *)csr_malloc( 1024*1024*sizeof(float)*3 );
+               
+               for( int l = 0; l < 1024; l ++ )
+               {
+                       for( int x = 0; x < 1024; x ++ )
+                       {
+                               float *dst = &rgba_test[ (l*1024+x)*3 ];
+                               csr_frag *src = &target.fragments[ ((1023-l)*1024+x) ];
+                               
+                               dst[0] = src->co[0];
+                               dst[1] = src->co[1];
+                               dst[2] = src->co[2];
+                       }
+               }
+               
+               csr_32f_write( "hello.pfm", 1024, 1024, rgba_test );
+               
+               free( target.fragments );
+               free( rgba_test );
                vmf_free( map );
                fs_exit();