Disco Ball in Blender

I’m trying to make a disco ball. I don’t care as much about the appearance of the disco ball itself (though it would be nice if you could tell it was a disco ball), but I would like it to have the correct effect on the scene (pieces of light dancing around the room.) Here’s an example:


I don’t really know where to begin, but I figured I’d try first to do it like in real life: a mirrored UV sphere with a spot lamp shining on it.

I’ve been able to make the ball reflect its surroundings, but unable to have it “shoot” the light rays off in different directions.

I looked into caustics a little bit, because I thought that might be the correct thing to use, but have come to the conclusion that Blender 2.48a Internal cannot do caustics. I’m going to experiment with YafRay to see if I can get some caustics going.

Am I on the right path? Does anyone know how I can achieve the desired effect? Thanks!

thre is a thread on this subject about 5 months ago



To correctly simulate that effect you would need to use a renderer that supports caustic reflections such as indigo or yafray.

With blender internal you need to fake it.

Ok, I’ve successfully gotten the caustic reflections with YafRay, and I’m very happy with the result. Here’s a quick video I made to show my results: http://www.vimeo.com/2103244
I was wondering, though, is there a good way to fake these caustics with blender internal renderer?

It would be nice to use the internal renderer because for part of my scene, I need to use textured spot lamps, which I couldn’t get to work with YafRay. Unless someone knows how to do that in YafRay?

if i remember well spots are one type of lamps compatible with yafray read the intro to yafray in wiki
and i think it sould be clealry indicated there

or go to the yafray site and look at some of the doc for lamps and it will show how to use it
also there is a doc on caustic effect


I would suggest trying a texture on a lamp!

Guiseppe, do you mean to add a texture to the lamp in order to enhance it, or as another way to get this effect?