How do I put a cookie on a lamp in cycles?

Hello world.

I would like to place a cookie or mask on a lamp/emissions shader. So that the light it casts is only shining on places the cookie has holes. I would like to use a texture or procedural texture that I can animate. examples:

Am I using the right search terms for this process?

You only want the white parts of the image to be emitting light, and the gray parts to not have any effect?

Yes. I want the light to cast shadows based on a cookie or mask.

Watch the video you link to and do the same ;). Adjust light’s diameter to vary the sharpness of the shadows. Meshlights might be not so useful for this.
Btw, what was the plant @3:29 ??

I don’t want to use a physical cookie. I should be able to place a mask on the emissions texture. the question is how?

Use that texture to control either the color or the intensity, the same way you would apply a texture to any other object.

Did that work well for you Ovnuniarchos? :slight_smile:

I can’t think of another way than to use a physical cookie. Texture based directly controlled in a light setup would be ideal for faking, but Cycles isn’t that keen on allowing us to fake stuff. Might have to use the light paths on this one, not sure, haven’t really toyed with this stuff yet.

I finally got it to work a bit. Will need to tweak for best results. I had to map the UVs of the texture to the normal. Then use the alpha as a factor for the mixed shader.

Well, this works, up to the point. Point, Spot, Area lamps would work, coordinates Normal or Reflection. Area lamp - only Reflection.
You do not need transparency: for the lights getting invisible it’s enough to be black - holdout is fine for that. Not involving alpha allows to use any type of video instead of static image - video formats with alpha channel are not so popular.
Projections do not follow light direction x, y whatever coordinates you’d use; moving lamp z direction kinda works though. For the x and y drivers on light’s mapping node could be used - here is some approximation example:
Test video

Thanks for the link and the info. I figured someone would come up with a better way than I could.