This is not necessarily a "HELP!!!" kinda thread, i may say some new things to somebody, at least would be cool
I've been thinking about this one for a couple weeks, and can't say i haven't come up with solutions, but of course, i would need the most reliable still the fastest way.
Two solutions i came up with and feel they would somewhat work:
1.: Give the light source (or its center / or a limb attached, whatever...) some not so common color, then check the pixel's color at 'object screen X,Y' and if it is that special color it means the light source is visible, otherwise hide the glare. Downsides are like if something also with the 'special color' comes in front of the light, it will still be visible. Also the pixel color checking commands are horribly slow.
2.: Been thinking of the built in "intersect object" command to check any collision from the light to the camera's position, and it would hide the glare, if anything crosses its way.
Have been struggling with a hidden matrix to be used as a collision surface under my 3dMax made level, but then left it alone for a while when i realized there was a command like it. However i quickly came back to my collision matrix since the slowdown was horribly massive, on the other hand with the matrix i can check thousands of height datas without slowing, which let's me make some awesome ground effects around my characters.
Uh this became a little long. Anyway, so this intersect object command seems slow as hell, however with some tricks like 'only used once in a second' or a timed usage of 'one light source per one frame' could help it out, and seems for now i'm gonna stick to it, but if anybody has other solutions and experiences, could you share it please?..
(are the 'intersect' kinda commands in user made DLL's faster than the built in command?)
Also, the method for displaying the actual glare, what do you suggest would be the most beautiful (assuming i use a nice glare texture of course, so i mean here, a method which doesn't decrease the quality) and speedy? If i recall correctly once i rushed over the forum just for fun and i spotted somebody talking about sprites to be used for this. Is this a good idea? Are sprites basically 3d elements now?
If you know a shader for this topic, that's nice and well appreciated to be shared, but i'm making my game for a large audience having low-end to high-end machines, and i want to give the most in the non-shader scene as well.