Advertisement
atm959

a

Aug 17th, 2018
367
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.73 KB | None | 0 0
  1. void drawText(char* text, int x, int y, int color){
  2.     struct Vertex* __attribute__((aligned(16))) vertices;
  3.  
  4.     vertices = malloc((strlen(text)*6)*sizeof(struct Vertex));
  5.  
  6.     int i;
  7.     for(i = 0; i < strlen(text); i++){
  8.         vertices[(i * 6)].x = i;
  9.         vertices[(i * 6)].y = 0;
  10.         vertices[(i * 6)].z = 0;
  11.         vertices[(i * 6)].color = color;
  12.         vertices[(i * 6)].u = 0;
  13.         vertices[(i * 6)].v = 0;
  14.  
  15.         vertices[(i * 6)+1].x = i + 1;
  16.         vertices[(i * 6)+1].y = 0;
  17.         vertices[(i * 6)+1].z = 0;
  18.         vertices[(i * 6)+1].color = color;
  19.         vertices[(i * 6)+1].u = 1;
  20.         vertices[(i * 6)+1].v = 0;
  21.  
  22.         vertices[(i * 6)+2].x = i + 1;
  23.         vertices[(i * 6)+2].y = 1;
  24.         vertices[(i * 6)+2].z = 0;
  25.         vertices[(i * 6)+2].color = color;
  26.         vertices[(i * 6)+2].u = 1;
  27.         vertices[(i * 6)+2].v = 1;
  28.  
  29.         vertices[(i * 6)+3].x = i;
  30.         vertices[(i * 6)+3].y = 0;
  31.         vertices[(i * 6)+3].z = 0;
  32.         vertices[(i * 6)+3].color = color;
  33.         vertices[(i * 6)+3].u = 0;
  34.         vertices[(i * 6)+3].v = 0;
  35.  
  36.         vertices[(i * 6)+4].x = i + 1;
  37.         vertices[(i * 6)+4].y = 1;
  38.         vertices[(i * 6)+4].z = 0;
  39.         vertices[(i * 6)+4].color = color;
  40.         vertices[(i * 6)+4].u = 1;
  41.         vertices[(i * 6)+4].v = 1;
  42.  
  43.         vertices[(i * 6)+5].x = i;
  44.         vertices[(i * 6)+5].y = 1;
  45.         vertices[(i * 6)+5].z = 0;
  46.         vertices[(i * 6)+5].color = color;
  47.         vertices[(i * 6)+5].u = 0;
  48.         vertices[(i * 6)+5].v = 1;
  49.     }
  50.  
  51.     sceGumMatrixMode(GU_MODEL);
  52.     sceGumLoadIdentity();
  53.  
  54.     ScePspFVector3 scale = {16, 16, 0};
  55.     ScePspFVector3 pos = {x, y, 0};
  56.  
  57.     sceGumTranslate(&pos);
  58.     sceGumScale(&scale);
  59.     sceGumDrawArray(GU_TRIANGLES,GU_TEXTURE_32BITF|GU_COLOR_8888|GU_VERTEX_32BITF|GU_TRANSFORM_3D,strlen(text)*6,0,vertices);
  60.     sceGumLoadIdentity();
  61.    
  62.     sceGumMatrixMode(GU_VIEW);
  63.     sceGumLoadIdentity();
  64.  
  65.     free(vertices);
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement