Facepunch / garrysmod-requests

Feature requests for Garry's Mod
86 stars 24 forks source link

Introduce $notint $allowdiffusemodulation to block $color2 #2162

Closed gonzalologorg closed 1 year ago

gonzalologorg commented 1 year ago

Details

As seen at $notint and $allowdiffusemodulation this flag on materials it's useful so you can disable color tinting in some materials without disabling it on other sub materials on your model

This can be dealt with by creating a proxy and tinting it from there, but honestly a flag like this would save the need to create a new proxy to handle this issue

This is how the model would look with this flag (Right now i've spawned and removed the bodygroups, but this would require 2 models) gPaLdOMs

https://github.com/perilouswithadollarsign/cstrike15_src/blob/f82112a2388b841d72cb62ca48ab1846dfcc11c8/materialsystem/stdshaders/phong_dx9_helper.cpp#L772

robotboy655 commented 1 year ago

$notint and $allowdiffusemodulation are both implemented in CS:GO, and are implemented differently.

$allowdiffusemodulation disables the per-model-instance tint (i.e. color tool), but what $notint does I am not sure. Reading its code, I think it is meant to disable effects of $blendtintbybasealpha specifically?

Given internal differences in shaders between CS:GO and GMod, as well as the parameter descriptions on the wiki, I have made $notint 1 do the same thing as $allowdiffusemodulation 0.