3
$\begingroup$

I'm still not an animator in any way but I have to find a way to animate something...

In a way resembling to what is achieved in this video, I have to create a grid of light bulbs which intensity and color will depend on the position of an empty. https://www.youtube.com/watch?v=nsHQuAaL8d0

This post (Use an Empty to control a property) enabled me to set up the intensity of all the lights depending of an empty's Z position.

But I wish the empty would define the intensity and color of the lights around itself... I wonder if it's clear? :s

Anyway, if anyone can understand the goal of this and help me, I would be immensely grateful!

Thank you for reading and have a nice day! Nicolas

$\endgroup$
1
  • 1
    $\begingroup$ Consider the answers to this question.. where all the lights share a material partially controlled by a gradient texture in the object space of your empty. It gets a bit more tricky if you want no gradation within the diameter of your lights... $\endgroup$
    – Robin Betts
    Feb 12, 2019 at 19:27

1 Answer 1

2
$\begingroup$

If you want each light to be a single color, and respond to the distance between itself and an Empty, one option is to create your lights as a particle system.

  • In this example, the particle system is static (there is no physics, all the particles are emitted on frame 1).
  • Here, the particles are randomly scattered, but you could arrange them geometrically, per face of the emitter
  • Set up an input to your shader for the dupli object used to render the particles, (the Combine XYZ,) driven by the location of your empty. ( This means assigning drivers to its X,Y and Z entries)
  • Add a Particle Info node, using its 'Location' field, and a group of nodes to return the distance between particles and the empty.

enter image description here

Here, the distance is used as an input to a Color Ramp node

This is the scene, with an empty:

enter image description here

This is the result:

enter image description here

$\endgroup$
5
  • $\begingroup$ Hi, First, I want to thank you a lot for your help: I'm still amazed that someone on Earth would be empathic and competent to help a complete stranger... Thanks a million times for that! Then, I downloaded your file with passion (I doubt any piece of digital information ever produced more feelings than your . blend... :). I must admit I doubt I can ever come up with the material node tree you created. But my main remaining issue is I can't find the driver setup for the empty in the Graph editor with the drivers option selected in the dropdown menu. Can you tell me where to find it? $\endgroup$
    – leminilab
    Feb 13, 2019 at 7:55
  • $\begingroup$ @leminilab My apologies. I didn't put too much detail in the written answer, I thought it would be too long... Open a Graph Editor window, switch its mode to 'Drivers' from 'F-Curve'. Hit 'N' to open the properties region on its right. Select the region's 'Drivers' tab. There is an object 'Icosphere', from which all the particles are instanced, just to the +X of the emitter plane. Select it, and you should see the 'DistanceFromEmpty' drivers displayed on the left, to be selected. Could I have left that window open for you? .. Probably .. I'll go back and fix when I can get to it. $\endgroup$
    – Robin Betts
    Feb 13, 2019 at 9:01
  • $\begingroup$ Please also recommend any ways I can change the file to make it clearer. $\endgroup$
    – Robin Betts
    Feb 13, 2019 at 9:04
  • $\begingroup$ Hi, This project is going in so many directions I couldn't take the time to reply to you... I noticed you have to select the coordinates node in order to see the driver attached to it. I don't know if it's a common behavior or if it's specific to 2.8 though... $\endgroup$
    – leminilab
    Feb 15, 2019 at 14:35
  • $\begingroup$ Ahh... I'm not using 2.8 in anger yet .. I would have difficulty finding everything.. I'm surprised that file runs at all $\endgroup$
    – Robin Betts
    Feb 15, 2019 at 14:57

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .