Commit graph

159 commits

Author SHA1 Message Date
e939d59a79 Export default 9x12 monospace font as public gfx resource 2021-02-25 09:07:15 +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
e2bcab4f89 Fix shader source line numbering 2021-01-30 19:19:35 +03:00
e8c0d9492b Show source lines when reporting shader compilation errors 2021-01-29 10:34:40 +03:00
fe873209c6 Support buffer loading from std::array and C array 2021-01-28 20:17:57 +03:00
5e7aa7601d Pimpl declaration macros now define a make_pimpl(...) static helper function 2021-01-23 10:42:14 +03:00
a8aef622a1 Fix bug in deferred renderer 2021-01-18 20:09:19 +03:00
c37fc1f614 Fix shader version in deferred renderer 2021-01-18 20:03:51 +03:00
b6cb3576a5 Show full shader source on compilation failure 2021-01-18 20:03:24 +03:00
07924aa0d5 Various clang compilation issues 2021-01-18 20:02:35 +03:00
b2996f426b Add khtplatform.h and use it in case no system-provided one was found 2021-01-18 19:18:06 +03:00
b53dc0a14a Fix compiler-specific diagnostic in painter.cpp 2021-01-18 18:18:52 +03:00
f0611657ac Generate empty source file for libraries with no sources 2021-01-18 18:10:35 +03:00
e7cac4a618 Clang compilation fixes 2021-01-18 18:01:03 +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
b0b2975efc Use shadow blurring in deferred rendering 2020-12-19 22:39:04 +03:00
bd5622fc3b Use previous frame's transform for depth pre-pass in deferred renderer 2020-12-19 22:39:04 +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
271a3d1b6e Deferred renderer: clear dest buffer before rendering 2020-12-14 14:12:09 +03:00
2b1e772870 Make gfx::painter set up OpenGL state 2020-12-14 13:44:25 +03:00
ffd3c6a6e8 Fix bump mapping 2020-12-13 23:45:17 +03:00
f10f301443 Deferred renderer: support a background generation callback 2020-12-13 23:20:41 +03:00
f3184a0f62 Deferred renderer: don't fill pixels with no geometry unless clear color was set 2020-12-13 19:06:19 +03:00
ac3ab3b0c6 Fix comment typos 2020-12-13 19:02:20 +03:00
c06c1b5155 Deferred renderer: specify that clear color alpha is ignored 2020-12-13 19:02:10 +03:00
eb64c00a02 Add debug shadow cascades highlighter 2020-12-13 18:45:32 +03:00
deba82adee Deferred renderer: ssao tweaks 2020-12-13 18:37:57 +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
0cf44f532a Deferred renderer: add proper frustum culling 2020-12-12 20:49:50 +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
cf311b4993 Remove obsolete code 2020-12-11 19:43:30 +03:00
0517609b8b Add util/hash header 2020-12-11 17:58:36 +03:00
f4908f2368 Deferred renderer: sort objects by distance to camera 2020-12-11 17:51:08 +03:00
72e0681521 Deferred renderer: bucket objects by material 2020-12-11 17:40:28 +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
f4c94e318f Deferred renderer: implement primitive camera clipping 2020-12-10 22:28:48 +03:00
22f1dde2dc Refactor deferred_renderer::render 2020-12-10 22:15:44 +03:00
5cb74583a4 Deferred renderer: accept material by pointer, casts_shadow is a property of material 2020-12-10 21:57:26 +03:00