Advertisement
Guest User

Untitled

a guest
Feb 26th, 2020
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.83 KB | None | 0 0
  1. static void write_matrix_to_buffer(struct d3d10_effect_variable *variable, float *buf,
  2.         struct d3d10_effect_matrix *matrix, BOOL transpose)
  3. {
  4.     unsigned int row, col;
  5.     BOOL major;
  6.  
  7.     if (variable->type->type_class == D3D10_SVC_MATRIX_COLUMNS)
  8.         major = 1;
  9.     else
  10.         major = 0;
  11.  
  12.     if (transpose)
  13.         major = !major;
  14.  
  15.     if (major)
  16.     {
  17.         for (col = 0; col < variable->type->column_count; col++)
  18.         {
  19.             for (row = 0; row < variable->type->row_count; row++)
  20.                 buf[(col * 4) + row] = matrix->m[row][col];
  21.         }
  22.     }
  23.     else
  24.     {
  25.         for (col = 0; col < variable->type->column_count; col++)
  26.         {
  27.             for (row = 0; row < variable->type->row_count; row++)
  28.                 buf[(row * 4) + col] = matrix->m[row][col];
  29.         }
  30.     }
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement