Spot light cone

I have a request for a new feature in Blender. I know there is another forum for that but I have tried to do it myself with the code and couldn’t find the right place for it.

First an explanation:
I want to be able to create a better spotlight cone (halo in blender terms) so it has a controllable fade off from the light, softer edges and perhaps even the ability to apply a noise texture to it to fake lighting through fog or haze. Basically, I would like it to work more like the one in Cinema 4d. I have version 6 and it looks great and is just what I want. i know you can do this a little bit by using the new smoke/volumetric texture stuff but that really slows down the render and I don’t want the halo to affect anywhere but where that light shines. I would much rather fake it.

The question:
I downloaded the source code and compiled it successfully so that is all good. I was browsing through it to try and find where the spot halo code is and see calls to renderspothalo() in rendercore.c. and I think I found that in shadeoutput.c where it also has a call to spothalo() but I can see where it is actually rendered. It seems there are a lot of places where it is popping all around.

As a test, I was able to alter it to be total white and to have a ‘noise texture’ (not perlin type but the random dots type).

Can anyone give me a hint here? I’m not a pro programmer by any stretch of the imagination, just more of a hack who knows a little about C++, C# and the like.

Has anyone else tried to make progress in this area?

Thanks.

I am adding exactly this feature for BGE and viewport shading, but I think “halo” button should enable it for Blender Internal render.

Here is an example of what i am trying to do. This was done in Cinema 4d version 6.


Blender’s spot halo looks like this:


I figured if Cinema 4d version 6 (they are on what, 13 now?) can do something like that then surely Blender can.

reopened …