Cascade Shadow Mapping Volumes fix#364
Conversation
This also adds custom keyvalue support in Hammer for all entities (only bms for now). It adds detour for CBaseEntity::KeyValue to prevent CSMVolumeMode. It's done in this way because removing and recreating will not work, due to the very spawned CSM sets Manual mode for all other CSM ents, this can't be fixed with edt as well. It also adds hook on inputs to prevent console spam (and maybe inconsistent behavior). We SHOULD NOT remove csm volumes by auto delete in edt, because some of them contain inputs for map logic (not only csm volume set).
|
Which maps in the official campaign am I able to test this PR against? |
i guess any ? i was doing tests on bm_c2a5a, make sure to set cl_csm_qualitymode 2. |
Alienmario
left a comment
There was a problem hiding this comment.
Why aren't you using the virtual hook setup for CBaseEntity::KeyValue ? The detour would produce an unnecessarily large amount of calls I'm guessing.
|
gonna do some tests, i'll rework in this way if it will work |
Done, you may also want to review snarks fix. |
Alienmario
left a comment
There was a problem hiding this comment.
Consider moving to Black Mesa's entitypatch include, even though the entity exists in CSGO, it looks like BM's impl is more customized.
Fixes #272
This also adds custom keyvalue support in Hammer for all entities (only bms for now).
It adds detour for CBaseEntity::KeyValue to prevent CSMVolumeMode. It's done in this way because removing and recreating will not work, due to the very first spawned CSM sets Manual mode for all other CSM ents, this can't be fixed with edt as well.
It also adds hook on inputs to prevent console spam (and maybe inconsistent behavior). We SHOULD NOT remove csm volumes by auto delete in edt, because some of them contain inputs for map logic (not only csm volume set).