Commit graph

133 commits

Author SHA1 Message Date
96652584a9 Turn gfx::buffer to a templated gfx::basic_buffer to support different buffer types 2021-07-13 11:44:23 +03:00
39855a5d84 Make gfx::load_mesh return structured data instead of a tuple 2021-07-11 11:38:00 +03:00
b97e7bc26c Support setup attrib description without a mesh object 2021-07-07 16:50:23 +03:00
fe4dd717f1 Add mipmap calculation function 2021-07-05 12:18:15 +03:00
25153001c0 Proper move, reset & null-construct for gfx::program 2021-07-04 23:17:33 +03:00
6994b23fdb Support interpolated line color in gfx::painter 2021-06-20 15:53:08 +03:00
4ab4788eca Support drawing quadratic besier lines in gfx::painter 2021-06-13 14:14:37 +03:00
ebda20ff9c Support drawing multi-color triangles in gfx::painter 2021-06-13 14:14:25 +03:00
ed41bc6583 Explicit circle quality parameter for gfx::painter::circle 2021-06-13 12:30:18 +03:00
ae8fa3579b Fix texture pixels retrieval for non-zero lods 2021-06-05 10:23:19 +03:00
b8bf80e84e Support binding a texture to a specific texture unit 2021-06-04 13:58:22 +03:00
99e72c552b Support printing context to gfx::check_error 2021-05-29 18:38:28 +03:00
eecc054870 Use io::stream for png input 2021-04-20 15:11:41 +03:00
75d1526bdd Fix uint16_t pixel traits 2021-04-02 11:05:08 +03:00
bb1df4599d Add coloru16 converters 2021-04-02 11:04:50 +03:00
05cffcdc73 Support quaternion attribs 2021-03-13 14:30:22 +03:00
9baa91b7e3 Map buffer data as shared_ptr<T[]> 2021-03-13 14:30:11 +03:00
3e4cea25e7 Make gfx::load_mesh return data instead of loading mesh directly 2021-03-07 19:05:13 +03:00
5255abd66a Implement loading meshes from binary format 2021-03-07 18:31:20 +03:00
697de5c422 Add gfx::mesh::load_raw for loading buffers from raw data 2021-03-07 18:30:00 +03:00
e4f0675a1d Refactor gfx attribs: store vertex & instance size in attrib description 2021-03-07 18:29:25 +03:00
9dc95c797c Make gfx::renderbuffer::storage support template pixel types 2021-03-06 18:30:35 +03:00
6661299573 Support reading grayscale pngs 2021-02-27 19:44:17 +03:00
08d6469311 Support png image loading 2021-02-27 19:09:14 +03:00
f8d127d700 Support blending textures with a color in painter 2021-02-17 14:55:17 +03:00
74ba55257f Textures bugfix: copy & reset size on move 2021-02-17 14:43:07 +03:00
1b9e769b3f Support quaternion uniforms 2021-02-15 22:38:30 +03:00
fe873209c6 Support buffer loading from std::array and C array 2021-01-28 20:17:57 +03:00
9995f38ab0 Primitives of dynamic dimension, part 1: make vector, point & matrix dimensions retrievable via non-static functions 2021-01-16 23:26:57 +03:00
e558799702 Fix gfx::light/dark: shouldn't affect color alpha 2021-01-15 17:59:25 +03:00
7cf2a1d5ca Add 10-10-10-2 pixel type 2020-12-15 09:45:41 +03:00
42afb1692b Deferred renderer: support retrieving depth buffer 2020-12-14 14:12:43 +03:00
f10f301443 Deferred renderer: support a background generation callback 2020-12-13 23:20:41 +03:00
c06c1b5155 Deferred renderer: specify that clear color alpha is ignored 2020-12-13 19:02:10 +03:00
953544718c Implement bump-mapping in deferred renderer 2020-12-13 16:11:00 +03:00
ed4d75c498 Support setting cascade map splits in light options 2020-12-13 13:24:55 +03:00
4dbfa40d77 Deferred renderer: implement cascaded shadow maps 2020-12-13 00:48:18 +03:00
65bab34304 Support retrieving texture target from texture class 2020-12-12 23:44:42 +03:00
9606c0feb7 Support texture array as framebuffer depth & stencil 2020-12-12 23:30:40 +03:00
59888bd5eb Deferred renderer: make shadow map size an explicit rendering parameter 2020-12-12 18:30:26 +03:00
68cdd22083 Deferred renderer: sort objects into a grid & use grid-based occlusion queries 2020-12-12 16:19:01 +03:00
fdef1d6018 Mark query_scope as maybe unused 2020-12-12 16:18:14 +03:00
0c00505d44 Add OpenGL query helper 2020-12-12 16:04:10 +03:00
82817304e2 Deferred renderer: remove explicit diffuse material property 2020-12-10 23:34:00 +03:00
91650cb4ac gfx::texture::pixels: support different lods & outputting to existing pixmap 2020-12-10 23:33:25 +03:00
5cb74583a4 Deferred renderer: accept material by pointer, casts_shadow is a property of material 2020-12-10 21:57:26 +03:00
6690e23037 Support direct access to buffers from gfx::mesh 2020-12-10 21:56:31 +03:00
28b4bad3a7 Support mapping gfx::buffer (write-only) 2020-12-10 21:56:13 +03:00
77a32e444a Fix padding in instanced attribs 2020-12-10 21:55:55 +03:00
c8c5e874da Implement SSAO in deferred renderer 2020-12-10 10:41:40 +03:00