Lighting + surfaceparm nodraw, _min*light, decals


(Makro) #1

I have three small requests:

a) right now it seems that shaders using surfaceparm nodraw can’t emit light, even if they have q3map_surfacelight set. Any way this could be changed in a future release ? Right now I’m using a shader with blendFunc GL_ZERO GL_ONE, which in the end looks just the same, but surfaceparm nodraw would be cooler, heh.

b) another thing I’ve noticed is that the _min*light keys are global settings, but IMO they would be a bit more useful if we were able to use them locally (on a per-entity basis, just like _lightmapscale for example).

c) last request is actually an older one… it’s about non-lightmapped transparent surfaces - they can’t have decals on them, could you make it so that they’re turned into MST_TRIANGLE_SOUP only if the shader has surfaceparm nomarks in it ?

Thanks for your time.

Cheers !


(ydnar) #2

Drawsurfaces using a shader with nodraw set are purged. They never make it into the BSP–except patch meshes, which might be necessary for collision.

Per-entity _minlight could be useful. I’ll look into that.

The decal code in Quake 3 doesn’t handle nonplanar surfaces other than patches. I’m sorry, but unless Id releases a patch to Quake 3 (unlikely) with the decal code from Enemy Territory (pretty improbable), it well, won’t happen. :slight_smile:

y