Commit graph

349 commits

Author SHA1 Message Date
167f979285 Deferred renderer: support choosing between 16-bit and 32-bit floats for position representation 2020-12-09 18:18:32 +03:00
67c6e18ef0 Add framebuffer::read_pixels 2020-11-10 13:23:17 +03:00
d4d463c699 Remove obsolete includes 2020-11-04 10:52:02 +03:00
8d4e29eb35 Support loading index-only data in gfx::mesh 2020-11-04 10:31:28 +03:00
6f33c85c8c Remove TODO's from deferred renderer 2020-10-28 18:29:24 +03:00
149555889e Update gl generator config (windows fixes) 2020-10-28 10:54:35 +03:00
fe5cd6510c Use the new OpenGL Loader Generator for the gl loader 2020-10-27 23:14:12 +03:00
98a015fbed Implement directional & point light shadows in deferred renderer 2020-10-26 18:39:45 +03:00
226192e264 Support cubemap textures as framebuffer attachments 2020-10-26 18:39:25 +03:00
6b6d7687a9 Add cubemap textures 2020-10-26 18:38:47 +03:00
1b8ef017ad Compress normals to 32-bit integers in deferred renderer 2020-10-25 22:06:53 +03:00
e7427e1d58 Add integer pixel formats & restructure pixel.hpp 2020-10-25 21:29:07 +03:00
2e0da621d1 Add fxaa effect implementation 2020-10-25 20:07:11 +03:00
356aabf3ab Texture linear filtering doens't use mipmaps + add mipmapped filtering 2020-10-25 16:09:05 +03:00
9f76575be4 Add simple gamma correction effect 2020-10-25 15:46:05 +03:00
cc1cb13487 Use render_target in deferred renderer 2020-10-25 15:45:53 +03:00
0206ebc2cb Add gfx::render_target helper struct 2020-10-25 15:44:43 +03:00
9940dd19a0 Internal linkage for deferred renderer shaders code 2020-10-25 15:43:56 +03:00
68d70e3d96 Reduce deferred renderer fill rate by using light influence bboxes 2020-10-24 19:41:56 +03:00
131f06b012 Support binding gfx::mesh 2020-10-24 19:39:35 +03:00
9f12d27502 Add basic deferred renderer & usage example 2020-10-24 14:37:26 +03:00
13595864fd Add various normalized & floating-point image formats 2020-10-24 14:33:28 +03:00
da445a869a Fix rectangular matrix uniforms 2020-10-23 17:14:54 +03:00
9cea478859 Add bool uniforms 2020-10-23 17:14:54 +03:00
ec36942f7d Support merging attrib descriptions 2020-10-23 17:14:54 +03:00
e5c869f27b Add color lighting & darkening functions 2020-10-23 17:14:54 +03:00
4d9b8dde29 Add lerp for generic_color 2020-10-23 17:14:54 +03:00
ea13bba49a Add generic_color::as_color_Xf 2020-10-23 17:14:54 +03:00
440fa3777e Refactor attribute specification: move to a separate file + standalone function for use in vertices 2020-10-23 17:14:54 +03:00
08c62d6e3f Add macro-based pimpl & use it everywhere 2020-10-23 17:14:54 +03:00
77125540e6 Implement texture rendering in gfx::painter 2020-10-16 07:44:13 +03:00
fb9dceea5e Support texture depth attachments & depth-stencil attachments 2020-10-16 07:43:52 +03:00
c6caf491ab Null framebuffer is returned by reference 2020-10-16 07:41:46 +03:00
c9ee47a79b Add depth & depth-stencil pixel formats 2020-10-16 07:40:41 +03:00
2898e2a2c3 Fix getting texture pixels into pixmap 2020-10-16 07:38:52 +03:00
d807d5c74b Refactor mesh setup & properly disable old attribs on re-setup 2020-10-04 17:35:21 +03:00
e9af93b747 Refactor meshes: single unified mesh class 2020-10-04 17:22:38 +03:00
726b8486c7 Add explicit bool cast for OpenGL objects 2020-10-04 17:22:16 +03:00
8040d5e1d2 Fix painter text rendering 2020-10-04 17:20:31 +03:00
b0ecc6c056 Add OpenGL array class 2020-10-04 12:23:01 +03:00
6709792abf Move pixel_traits to a separate header 2020-10-04 12:22:45 +03:00
b1afa3dbc1 Uniformize GL objects' interface & add texture extern templates 2020-10-04 11:44:16 +03:00
db0f7915cf Refactor textures: add generic template, remove copypaste 2020-10-04 11:20:53 +03:00
daeba8674a Support vector, point & interval uniforms of unknown floating-point/integral types 2020-10-04 11:18:01 +03:00
d8069308ee Support all texture types for framebuffer color target 2020-10-03 20:42:16 +03:00
5e344c408f Add 2D array textures 2020-10-03 20:41:52 +03:00
2771564b94 Add instanced_indexed_mesh class 2020-10-03 15:36:26 +03:00
23de4a520e Support rendering part of a mesh 2020-10-02 19:18:35 +03:00
3c215d6abb Rename indexed_mesh::count -> indexed_mesh::index_count 2020-10-02 19:13:54 +03:00
d4a7611ee5 Refactor mesh vertex size check 2020-10-02 19:13:17 +03:00