Commit Graph

78 Commits

Author SHA1 Message Date
veclavtalica
48f63fc9df deferred skybox, fixes to use of ARB_depth_clamp extension usage, have TextureKey explicitly in QuadBatch 2024-10-22 09:30:14 +03:00
c49789f1f4 make deferred space triangles work 2024-10-19 20:02:39 +03:00
a7b09b9f39 fix circle rendering over new impl 2024-10-19 19:16:18 +03:00
b683594013 proper size of build_vertex_buffer for circle indices 2024-10-18 18:45:17 +03:00
7e409fc14a work towards DeferredCommandDraw being universal, support for DeferredCommandDepthRange, rework of cirlce mesh (has a bug still), get_quad_element_buffer() now more general, as it should be with gl_any 2024-10-17 21:01:35 +03:00
aa3cab87d2 skip switching texture modes when they're the same as the last used 2024-10-16 22:52:10 +03:00
1dc0dea762 no need for packed types no more 2024-10-16 03:31:02 +03:00
119b706638 minor optimizations over sprite path 2024-10-15 19:32:42 +03:00
f2bbc1863e cache sprite srcrects 2024-10-15 18:43:02 +03:00
768daf1f54 move pipelines and texture modes to deferred commands 2024-10-15 18:35:08 +03:00
139394c6de partial implementation of double buffered render 2024-10-15 15:29:45 +03:00
446402c2e0 don't write unused color to vertices, utilize flat shading for only 2 important edges 2024-10-14 21:23:44 +03:00
f7a718003e send vertex data packed 2024-10-14 20:19:18 +03:00
f087bf1f7f fix depth clearing, ghostly modes not using depth layers, ortho with 0..1 2024-10-14 16:00:27 +03:00
19bf88d44e finally properly implemented depth optimization for 2d 2024-10-14 15:31:56 +03:00
3535a185df don't use depth range hack in rect case 2024-10-14 12:16:23 +03:00
d34516c4ee Merge branch 'main' of https://git.poto.cafe/wanp/townengine 2024-10-14 11:48:46 +03:00
b295c5920c rendering: use sprite batching techniques for rect primitives, unite their render path 2024-10-14 11:46:07 +03:00
f7f27119e1 use static, fixed arrays for circle geometry data instead of allocating for each one 2024-10-13 22:32:59 -03:00
ffab6a3924 cache font _files_ as well to avoid duplicate buffers 2024-10-13 21:34:05 -03:00
da98c0941b effort to have no warnings once again 2024-10-13 21:32:31 +03:00
f96d521af2 CMakeLists.txt: don't precompile stb_ds.h, precompile SDL.h 2024-10-13 18:14:36 +03:00
1a7322dccf twn_util.h: separate internal things away, remove indirect includes in places 2024-10-12 21:16:25 +03:00
e70366f82f rework to context: now there's engine and user code copies, renaming of fields, most things that shouldn't be there are hidden 2024-10-12 20:24:47 +03:00
667b599c19 remove /include/twn_config.h, move defauls to relevant headers 2024-10-11 20:21:02 +03:00
7c0107704d twn_gl_any_rendering.c: describe possible micro optimization 2024-10-08 10:22:31 +03:00
aef3f6444e revert accidental commits, assert for zero-sized build_vertex_buffer(), explain the TODO on no-clear on skybox present 2024-10-08 08:30:26 +03:00
5c91423fbb clang-format on /apps/demos/bunnymark files 2024-10-08 01:21:31 +03:00
fd642171a4 twn_draw.c: clear after swap 2024-10-08 00:55:40 +03:00
1f8a225f89 twn_gl_15_rendering.c: only disable color array for sprite batch if it was used 2024-10-08 00:51:46 +03:00
f1e2fa090b twn_gl_15_rendering.c: re-enable depth write after text function 2024-10-08 00:42:15 +03:00
ac74f39c03 twn_text.c: discard empty inputs 2024-10-07 23:40:57 +03:00
b0e6dd78b2 fix ratio 2024-10-07 20:29:03 +03:00
ade1af12ca twn_rendering -> twn_draw 2024-10-07 17:53:09 +03:00
60a9307ce3 twn_util: separate internal c-only features from public header 2024-10-07 10:44:18 +03:00
dbbf6e25f0 add the long awaited push_9slice 2024-10-02 14:18:07 -03:00
452ecd72fe twn_sprites.c: fix texture region 2024-10-02 19:39:27 +03:00
0dc3cf4160 twn_rendering: have triangle uvs represented by floating vectors 2024-10-01 20:52:32 +03:00
b75ff20014 twn_gl_15_rendering.c: fix endlessly generating display lists 2024-10-01 18:38:54 +03:00
ad0438849e twn_fog.c: fog added! 2024-10-01 16:10:36 +03:00
9efcd79ba6 twn_gl_15_rendering.c: don't assume seethrough triangle textures, infer actual usage 2024-10-01 15:23:06 +03:00
d163e0f7ae twn_gl_15_rendering.c: better caching of pipelines 2024-10-01 15:18:05 +03:00
2ebb2ba53b twn_gl_15_rendering.c: disable depth writes for skybox 2024-10-01 15:17:51 +03:00
aa5ff1edf1 twn_gl_15_rendering.c: use display lists to cache common series of calls 2024-10-01 14:58:00 +03:00
9ab7d1edff twn_gl_15_rendering.c: fix memory leak in finally_render_skybox() 2024-10-01 13:22:20 +03:00
57fe5e8946 implement game configuration file
this integrates https://github.com/cktan/tomlc99 into the repo as a dependency
2024-10-01 12:48:42 +03:00
078e68387b replace per-tick allocations in push_text with an arena/bump allocator 2024-09-27 15:02:24 -03:00
c0dcdf8c0a twn_skybox.c 2024-09-26 21:02:56 +03:00
0fe1023667 use SDL stdlib where possible 2024-09-25 19:42:34 -03:00
34a081fccd rename get_text_width() to text_get_width() 2024-09-23 15:06:58 -03:00