Lighting Questions

Discussion for Level editing, modeling, programming, or any of the other technical aspects of Quake
Post Reply
KillPixel
Posts: 49
Joined: Sun Jun 22, 2014 7:35 pm

Lighting Questions

Post by KillPixel »

Coming from Quake, lighting in Quake3 feels awkward. My main issue is that the light is just so intense. In other words, there is not much distance between the lights brightest point and its darkest.

Is there a way to increase/decrease the lights radius without effecting its brightness? It would be nice to use a few large, soft lights to fill a room and use small brighter ones for more detail.

I've messed around with scale, but that seems to boost the brightness as well as the size.

I know there are several options compiler-side (which I take advantage of), but that effects every light entity. Ideally, I would like to have the option to utilize dim lights with a large radii, or bright lights with a small radii. I feel like the ability to adjust the radius independently of brightness most certainly exists and I'm just not seeing it.

I could use some enlightenment, thanks.
[url=https://www.youtube.com/user/KillPixel]KillPixel@YouTube[/url]
Fjoggs
Posts: 2555
Joined: Fri May 03, 2002 7:00 am

Re: Lighting Questions

Post by Fjoggs »

I find pointlights in general to be awkward in Quake 3. I usually rely on shaders for most of my light, and add low value pointlights with soft colors to help. Try looking at Sock's POM map. He knows his business. :)
KillPixel
Posts: 49
Joined: Sun Jun 22, 2014 7:35 pm

Re: Lighting Questions

Post by KillPixel »

Thanks Fjoggs, I'll look into using shaders.

Do you mean applying a light value to your geometry or having a light emitting brush with nodraw that can be used like a pointlight?

...also, I take it there is no way to control radius and brightness with pointlights in Q3?

EDIT:

Wow, so I made this following shader and works really well. Is this a bad idea for some reason? I'm sure there are many other parameters that I don't have yet that would make this better, but this is a good start (I think).

Code: Select all

textures/test/teehee
{
	q3map_surfaceLight 200
	q3map_lightsubdivide 64
	surfaceparm nonsolid
	surfaceparm trans
}
It seems that the bsp tool ignores the brush. However, collision brushes are still generated. The brush also leaves a big hole in the lightgrid :/
[url=https://www.youtube.com/user/KillPixel]KillPixel@YouTube[/url]
Fjoggs
Posts: 2555
Joined: Fri May 03, 2002 7:00 am

Re: Lighting Questions

Post by Fjoggs »

Yea, that's a shader. To make it look more naturally, you apply this to textures that would emit lighting. Like a light fixture, or a skybox etc.
You can control radius kinda by increasing and decreasing the value of the point light. Hit "n" to see the entity panel.
KillPixel
Posts: 49
Joined: Sun Jun 22, 2014 7:35 pm

Re: Lighting Questions

Post by KillPixel »

hrm. Ok. So pointlight radius and brightness can't be controlled independently, that's actually pretty surprising.

I was thinking of using light emitting shaders in this manner:

http://www.killpixel.com/test/ls_ed.jpg

Which ends up looking like this in game:

http://www.killpixel.com/test/ls_g.jpg

It provides a large, even light... which is what I'm looking for. It's also pretty flexible, the brush can be resized and placed anywhere. However, I have a feeling this is a poor way to achieve this...
[url=https://www.youtube.com/user/KillPixel]KillPixel@YouTube[/url]
obsidian
Posts: 10970
Joined: Mon Feb 04, 2002 8:00 am

Re: Lighting Questions

Post by obsidian »

Surfacelights can take longer to compile, but there isn't any difference at run-time. What you're doing works, but it doesn't look very natural. Most people use surface lights with an actual light texture, so whenever you apply some sort of a light texture to a surface, that surface emits light. It creates the impression that the texture is creating some kind of natural light source rather some kind of light source coming out of nowhere.


Lights in Q3 generally (there is a linear flag on point lights) obey the inverse-square law which is consistent with how lights work in the real world:

brightness = 1/radius^2
[size=85][url=http://gtkradiant.com]GtkRadiant[/url] | [url=http://q3map2.robotrenegade.com]Q3Map2[/url] | [url=http://q3map2.robotrenegade.com/docs/shader_manual/]Shader Manual[/url][/size]
KillPixel
Posts: 49
Joined: Sun Jun 22, 2014 7:35 pm

Re: Lighting Questions

Post by KillPixel »

I see. Yeah, I agree this does look very unnatural, however this is just an exaggerated demonstration.

hrm, I guess the only really viable method of raising the ambient light level on a case by case basis is by using many weak lights. Floodlights effect the entire map so that's a no go.

This shader method I'm using would be great in some situations, aside from the fact that the lightgrid within the brush itself is unaffected.

I could use large pointlights to fill large areas if I was able to make that light not effect the lightgrid, so character models passing through wouldn't turn white. Then, I could use lights to that only effect the lightgrid to get the appropriate light level... if that is even a possibility.

Meh. I'll figure it out. Many people have made very pretty lighting with the same tools I have available to myself.

Thanks for the help.
[url=https://www.youtube.com/user/KillPixel]KillPixel@YouTube[/url]
Post Reply