Page 1 of 1

Q3Map2 Shader Manual Revisions

Posted: Wed Oct 19, 2005 5:44 pm
by ^misantropia^
...that rgbGen and alphaGen have two undocumented parameters, namely:

rgbGen const ( R G B )

Keep vertex color constant. RGB components are normalized between 0.0 and 1.0.

rgbGen exactVertex

Like vertex but not affected by identity lighting.

Posted: Wed Oct 19, 2005 6:23 pm
by obsidian
Thanks for the heads up.

Incidently, I do have them documented in the newest (local) revision which is a complete overhaul competely rewritten in xhtml and css.

They weren't included in the original id Software version of the Shader Manual.

I do appreciate the attention to detail that you have. Thanks again.

Posted: Wed Oct 19, 2005 7:30 pm
by ^misantropia^
You're welcome, obsidian. Here's one more (but you probably know this one as well):

videoMap movie.cin

Maps a .cin movie onto a surface. Movie needs to have the .cin suffix and be located in the 'video' directory.

Posted: Wed Oct 19, 2005 9:58 pm
by ^misantropia^
clampTime x

Freezes shader animation after x seconds (can be fractional). Useful for one-time effects, I suppose.

Posted: Wed Oct 19, 2005 10:24 pm
by obsidian
videoMap: Which games use .cin formats, specifically. IIRC, Q3A only uses .roq.

clampTime x: Didn't know this existed, I suppose it's used by some other Q3-engine game? "One-time effects" does this imply that you have to trigger it somehow?

Posted: Wed Oct 19, 2005 11:22 pm
by ^misantropia^
obsidian wrote:videoMap: Which games use .cin formats, specifically. IIRC, Q3A only uses .roq.
Brain hickup. The associated function names all start with CIN so that's what did me in. The suffix must be '.roq' indeed.
obsidian wrote:clampTime x: Didn't know this existed, I suppose it's used by some other Q3-engine game? "One-time effects" does this imply that you have to trigger it somehow?
No idea what it is doing there. No Q3A shader uses it apparently and a Google search didn't turn up anything. It doesn't need to be triggered, it starts counting as soon as the map has loaded until x seconds have past, after which it just freezes the shader. Might be useful for an in-map countdown or intro animation.

Posted: Wed Oct 19, 2005 11:27 pm
by ^misantropia^
entityMergable (takes no arguments)

From tr_shader.c:
// entityMergable, allowing sprite surfaces from multiple entities
// to be merged into one batch. This is a savings for smoke
// puffs and blood, but can't be used for anything where the
// shader calcs (not the surface function) reference the entity color or scroll
Not really useful for mappers but might come in handy for modders to optimize, say, particle systems. Some of the shaders in gfx.shaders use it (waterBubble, smokePuff, etc).