taisei/src
Andrei Alexeyev 9b3779ebb4
Some renderer refactoring (mostly API and GLES preparations) (#144)
* Refacor uniforms API:

    - More complete and consistent
    - Type-safety
    - Usage correctess assertions missing for now, planned

* Redesign texturing API: texunits gone, assign textures to sampler uniforms directly

r_texture_create now allocates memory and returns an opaque Texture
pointer; similar changes to the other renderer APIs will follow.

* Framebuffers: make _create return an opaque pointer, add debug label APIs (unused for now)

* opaque pointers and debug label APIs for vertex arrays and buffers

* fix null renderer

* Refactor glsl preprocessing into an independent module

* Separate shader resource management from renderer backend

This makes it possible to add more shading languages and/or include a
transpiler, which will be useful for the GLES backend.

* refactor r_clear into a stateless API

* add r_texture_clear API; fix gl33_framebuffer_clear

* Replace deprecated glsl_objects with objects in all *.prog files

* fix missing texture_clear implementation in null renderer

* remove some dead code in null renderer

* fix GLES segfault

* GLES 3.0 actually has glVertexAttribDivisor

* Query GL for supported GLSL versions (preparing to add shader transcompilation)
2018-09-14 10:37:20 +03:00
..
dialog Add Reimu Hakurei as a playable character (#106) 2018-08-11 22:13:48 +03:00
menu fix #136 2018-08-31 05:34:44 +03:00
plrmodes Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
projectile_prototypes Add Reimu Hakurei as a playable character (#106) 2018-08-11 22:13:48 +03:00
renderer Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
resource Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
rwops fix _POSIX_C_SOURCE define in that one place that needs it 2018-06-20 23:18:50 +03:00
stages Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
util Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
vfs Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
aniplayer.c use "anchored" lists for most game objects 2018-06-01 21:40:18 +03:00
aniplayer.h use "anchored" lists for most game objects 2018-06-01 21:40:18 +03:00
assert.h attempt to refactor the util disaster into several smaller disasters 2018-05-15 03:27:25 +03:00
audio.h add/remove some comments 2018-06-12 21:10:46 +02:00
audio_common.c possibly fix ingame menu cursor sound not playing while shooting 2018-07-29 16:39:33 +02:00
audio_mixer.c attempt to fix shot loop silence by unregistering all effects 2018-06-28 19:55:32 +02:00
audio_mixer.h Rendering system rewrite, tons of refactoring, optimizations, and other cool stuff (#116) 2018-04-12 17:08:48 +03:00
audio_null.c Happy New Year! 2018-01-04 19:14:31 +02:00
boss.c draw boss overlay on top of everything else 2018-08-31 05:46:37 +03:00
boss.h draw boss overlay on top of everything else 2018-08-31 05:46:37 +03:00
cli.c add replay verification mode: taisei --verify-replay file.tsr 2018-04-18 02:48:28 +03:00
cli.h add replay verification mode: taisei --verify-replay file.tsr 2018-04-18 02:48:28 +03:00
color.c Premultiplied alpha (#133) 2018-07-23 20:07:59 +03:00
color.h Premultiplied alpha (#133) 2018-07-23 20:07:59 +03:00
config.c Refactor framebuffer-related stuff (#130) 2018-07-04 11:36:16 +03:00
config.h Add optional FXAA for the 3D views; fix nasty rendering bug 2018-08-17 01:32:58 +03:00
credits.c Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
credits.h Rendering system rewrite, tons of refactoring, optimizations, and other cool stuff (#116) 2018-04-12 17:08:48 +03:00
dialog.c Text rendering rewrite and optimizations; some refactoring (#129) 2018-06-30 00:36:51 +03:00
dialog.h refactor dialog selection logic 2018-07-15 18:48:22 +03:00
difficulty.c Premultiplied alpha (#133) 2018-07-23 20:07:59 +03:00
difficulty.h Premultiplied alpha (#133) 2018-07-23 20:07:59 +03:00
drawlayers.inc.h fix various bugs in elly spells; draw baryons below other stuff 2018-05-19 03:46:32 +03:00
ending.c Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
ending.h Add Reimu Hakurei as a playable character (#106) 2018-08-11 22:13:48 +03:00
enemy.c My take on the Marisa bombs. Also blur shaders, minor fixes, etc. 2018-08-27 10:08:14 +03:00
enemy.h basic entity damage generalization 2018-07-30 10:04:39 +03:00
entity.c Add Reimu Hakurei as a playable character (#106) 2018-08-11 22:13:48 +03:00
entity.h basic entity damage generalization 2018-07-30 10:04:39 +03:00
events.c fix various issues discovered by scan-build 2018-07-31 11:50:04 +03:00
events.h Refactor framebuffer-related stuff (#130) 2018-07-04 11:36:16 +03:00
framerate.c Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
framerate.h Rendering system rewrite, tons of refactoring, optimizations, and other cool stuff (#116) 2018-04-12 17:08:48 +03:00
gamepad.c Refactor framebuffer-related stuff (#130) 2018-07-04 11:36:16 +03:00
gamepad.h Rendering system rewrite, tons of refactoring, optimizations, and other cool stuff (#116) 2018-04-12 17:08:48 +03:00
global.c Refactor framebuffer-related stuff (#130) 2018-07-04 11:36:16 +03:00
global.h Refactor framebuffer-related stuff (#130) 2018-07-04 11:36:16 +03:00
hashtable.c Text rendering rewrite and optimizations; some refactoring (#129) 2018-06-30 00:36:51 +03:00
hashtable.h Text rendering rewrite and optimizations; some refactoring (#129) 2018-06-30 00:36:51 +03:00
hashtable.inc.h this is why we need CI 2018-06-30 01:02:32 +03:00
hashtable_incproxy.inc.h Text rendering rewrite and optimizations; some refactoring (#129) 2018-06-30 00:36:51 +03:00
hashtable_predefs.inc.h Text rendering rewrite and optimizations; some refactoring (#129) 2018-06-30 00:36:51 +03:00
hirestime.c Threading improvements (#125) 2018-05-25 09:01:07 +03:00
hirestime.h Happy New Year! 2018-01-04 19:14:31 +02:00
item.c fix delete_items not properly unregistering entities 2018-08-31 06:20:47 +03:00
item.h use "anchored" lists for most game objects 2018-06-01 21:40:18 +03:00
laser.c Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
laser.h Allow projectile rules to delete other projectiles; add stage_clear_hazards enhancements 2018-08-05 20:58:50 +03:00
list.c use "anchored" lists for most game objects 2018-06-01 21:40:18 +03:00
list.h use "anchored" lists for most game objects 2018-06-01 21:40:18 +03:00
log.c Rendering system rewrite, tons of refactoring, optimizations, and other cool stuff (#116) 2018-04-12 17:08:48 +03:00
log.h Threading improvements (#125) 2018-05-25 09:01:07 +03:00
main.c fix -t segfault 2018-07-25 07:46:04 +03:00
meson.build Add build option to disable object pools (for debugging) 2018-08-31 05:59:47 +03:00
objectpool.c fix various issues discovered by scan-build 2018-07-31 11:50:04 +03:00
objectpool.h Rendering system rewrite, tons of refactoring, optimizations, and other cool stuff (#116) 2018-04-12 17:08:48 +03:00
objectpool_fake.c Add build option to disable object pools (for debugging) 2018-08-31 05:59:47 +03:00
objectpool_util.c Remove the obsolete objpool_release_[a]list functions 2018-08-31 06:23:29 +03:00
objectpool_util.h Remove the obsolete objpool_release_[a]list functions 2018-08-31 06:23:29 +03:00
player.c Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
player.h Add Reimu Hakurei as a playable character (#106) 2018-08-11 22:13:48 +03:00
plrmodes.c Add Reimu Hakurei as a playable character (#106) 2018-08-11 22:13:48 +03:00
plrmodes.h Add Reimu Hakurei as a playable character (#106) 2018-08-11 22:13:48 +03:00
progress.c Rendering system rewrite, tons of refactoring, optimizations, and other cool stuff (#116) 2018-04-12 17:08:48 +03:00
progress.h Rendering system rewrite, tons of refactoring, optimizations, and other cool stuff (#116) 2018-04-12 17:08:48 +03:00
projectile.c Fix preloading issues again 2018-08-14 03:56:16 +03:00
projectile.h Allow projectile rules to delete other projectiles; add stage_clear_hazards enhancements 2018-08-05 20:58:50 +03:00
projectile_prototypes.c Improve (totally rewrite) projectile collision detection and graze mechanics (#122) 2018-05-13 16:08:58 +03:00
random.c remove outdated/broken tests 2018-04-18 18:23:24 +03:00
random.h remove outdated/broken tests 2018-04-18 18:23:24 +03:00
refs.c Consistent indentation: indent with tabs, align with spaces (#104) 2018-01-12 20:26:07 +02:00
refs.h Consistent indentation: indent with tabs, align with spaces (#104) 2018-01-12 20:26:07 +02:00
replay.c Improve filename timestamps (screenshots, replays) 2018-05-28 12:03:14 +03:00
replay.h Improve filename timestamps (screenshots, replays) 2018-05-28 12:03:14 +03:00
stage.c Special stages for DPS testing 2018-08-14 02:42:27 +03:00
stage.h Special stages for DPS testing 2018-08-14 02:42:27 +03:00
stagedraw.c Some renderer refactoring (mostly API and GLES preparations) (#144) 2018-09-14 10:37:20 +03:00
stagedraw.h Add Reimu Hakurei as a playable character (#106) 2018-08-11 22:13:48 +03:00
stageobjects.c Consistent indentation: indent with tabs, align with spaces (#104) 2018-01-12 20:26:07 +02:00
stageobjects.h Consistent indentation: indent with tabs, align with spaces (#104) 2018-01-12 20:26:07 +02:00
stagetext.c revamp stagetext effect 2018-07-25 01:33:01 +03:00
stagetext.h Premultiplied alpha (#133) 2018-07-23 20:07:59 +03:00
stageutils.c Refactor framebuffer-related stuff (#130) 2018-07-04 11:36:16 +03:00
stageutils.h Rendering system rewrite, tons of refactoring, optimizations, and other cool stuff (#116) 2018-04-12 17:08:48 +03:00
taisei.h attempt to refactor the util disaster into several smaller disasters 2018-05-15 03:27:25 +03:00
taisei.rc.in Consistent indentation: indent with tabs, align with spaces (#104) 2018-01-12 20:26:07 +02:00
taskmanager.c exterminate the most annoying and least useful debug messages 2018-07-24 19:42:11 +03:00
taskmanager.h Threading improvements (#125) 2018-05-25 09:01:07 +03:00
transition.c Premultiplied alpha (#133) 2018-07-23 20:07:59 +03:00
transition.h Rendering system rewrite, tons of refactoring, optimizations, and other cool stuff (#116) 2018-04-12 17:08:48 +03:00
util.h Refactor framebuffer-related stuff (#130) 2018-07-04 11:36:16 +03:00
version.c Consistent indentation: indent with tabs, align with spaces (#104) 2018-01-12 20:26:07 +02:00
version.h Consistent indentation: indent with tabs, align with spaces (#104) 2018-01-12 20:26:07 +02:00
version_auto.c.in Happy New Year! 2018-01-04 19:14:31 +02:00
video.c Let's not try reading screenshots from the front buffer. 2018-08-30 14:58:58 +03:00
video.h Refactor framebuffer-related stuff (#130) 2018-07-04 11:36:16 +03:00