4coder/test_data/lots_of_files/jam_graphics.h

68 lines
1.0 KiB
C
Raw Normal View History

2018-03-16 18:19:11 +00:00
/*
* Overreact - Mr. 4th Dimention
* Allen Webster
* 03.21.2015 (mm.dd.yyyy)
*
* Graphics Layer.
*/
struct Image{
u32 *data;
i32 width, height, pitch;
i32 img_width, img_height;
};
#pragma pack(push, 1)
struct Bitmap_Header{
u16 type;
u32 size;
u16 res1, res2;
u32 offset;
u32 struct_size;
i32 w, h;
u16 planes;
u16 bits_per_pixel;
u32 compression;
u32 image_size;
i32 xppm, yppm;
u32 colors_used;
u32 colors_important;
};
#pragma pack(pop)
struct Bitmap_File{
File file;
Bitmap_Header header;
i32 byte_pitch;
};
#define STB_TRUETYPE_IMPLEMENTATION
#include "stb_truetype.h"
struct Glyph_Data{
bool32 exists;
real32 advance;
};
struct Font{
Glyph_Data glyphs[128];
stbtt_bakedchar chardata[128];
i32 height, ascent, descent, line_skip;
i32 advance;
u32 tex;
i32 tex_width, tex_height;
};
struct Blit_Rect{
i32 x_start, y_start;
i32 x_end, y_end;
};
struct Sub_Rect{
real32 x_start, y_start;
real32 x_end, y_end;
};