Re: _wateralpha and other worldspawn keys proposal
Posted: Wed Aug 20, 2014 8:55 pm
I second that.leileilol wrote:I still don't think this kind of thing needs any QuakeC-based intervention at all.
I second that.leileilol wrote:I still don't think this kind of thing needs any QuakeC-based intervention at all.
I'm fine with removing that; I can see that it forces hacking the engine's cvar system. The intent was to support using quoth's trigger_command (for example) to change r_wateralpha while still using these new worldspawn keys. In hindsight, having a mod/map that changes wateralpha during a map is definitely a fringe feature, and mappers can avoid using the worldspawn keys in the 1% of cases where they really need to change r_wateralpha through qc during the map.LordHavoc wrote:Please not this one specific detail, I can support the rest of this extension in darkplaces, but I do not want to have to do latched cvars and other black magic.ericw wrote:[*] If the player changes the “r_wateralpha” cvar while the map is running, the engine should switch to using that value until the map is reloaded. This allows for interactive tweaking by a mapper, or lets the player override the value if they don't like the mapper's choice.
It's true. I was talking to onetruepurple about this and he mentioned some teleport textures just don't start with *tele, like *starfluid in knave.wad, so if you wanted to take advantage of the "_telealpha" worldspawn key you'd have to rename the texture.LordHavoc wrote:I'm a little unsettled by the distinction of _wateralpha, _slimealpha, _lavaalpha, _telealpha as this is subject to the engine's determination of what is or is not a given type of liquid (darkplaces for what it's worth also recognizes *rift as a special prefix, which is fullbright and opaque in all cases, because this is used at the end of hipnotic), furthermore it would be nicer for level designers if they can set different alpha for each water texture in their map.
this is sort of a tangent, but current DP doesn't seem to use r_wateralpha at all for brush entities with water textures, it just uses the entity alpha. Fitz engines only use r_wateralpha when the entity alpha is 0, otherwise they use the entity alpha. Do any engines multiply r_wateralpha by entity alpha?LordHavoc wrote: Regarding func_illusionary - there is nothing special about the inward faces vs the outward faces, both would be affected proportionately by the entity alpha (that is to say, it would take the user cvar r_wateralpha, and then multiply it by the entity alpha).
QUAKESPASM_GFX_WATERALPHA sounds fine. I can make a little explanation along the lines of DP_GFX_FOG and DP_GFX_SKYBOX.LordHavoc wrote: P.S. Who wants to own the extension spec for this? Or am I expected to write up a suitable explanation when I add it to dpextensions.qc like many other vague proposals in the community which were never properly defined as extensions? And what name should the extension be for qc to checkextension() to detect this? QUAKESPASM_GFX_WATERALPHA ?
this sounds good to me. "sky" and "fog" work the same way in fitz and dp, and I assume others as well?Spike wrote:I would say to officially advertise it as _foo but to accept both _foo and foo.
Well, in that case, I can understand.leileilol wrote:also the whole "compatibility with glquake and other old engines" goosechase reason is silly since this was suggested from a mapping place where vanilla engines and their limits don't exactly apply.