Is there a glowing (i.e. emitting light) effect for objects?

Hello,

I was wondering if it’s possible to add a ‘glowing effect’ to objects, such as glyphs. I saw this image on a Kitware tweet (https://twitter.com/kitware/status/1029769512558768128), where it seems like the streamlines are emitting light. Is this done with ParaView? Or was some external renderer used for this glowing effect?

If you zoom in, you can see that the light emitted from the streamlines is actually reflected off of the surrounding, which is pretty cool! :

image

Any tips or tricks would be much appreciated!

Best,
Ahmad

1 Like

You can do this with the path tracers. To do so:

  1. turn on ray tracing
  2. switch the “back end” to either either “OSPRay path tracer” or “OptiX path tracer”.
  3. Select an object in the pipeline browser and increase the “Luminosity” to anything more than the 0 default.

The color emitted is that of the object’s Solid Color (White is the Default). Note that the above image was made with a prototype that had material level controls that are not yet in ParaView master, but would be really fun to polish and integrate.

1 Like

Thanks for your reply! Luminosity does the job of emitting the light well :slight_smile:

The only thing is that the object itself will be uniformly its Solid Color (albeit illuminated). For example:

It would be really great if I could somehow make the inner sphere (which is the object with a non-zero luminosity) appear to be glowing. In the tweeted image I see that effect working out really nicely for the yellow streamline (it has a bit of a faded glow around it):

image

Is there a way to get this effect either through the GUI or programatically? You mentioned that the prototype had certain material level controls. Do you have any pointers on which controls these were? I am working anyways with the ParaView C++ API to create my objects, so if there is an API for creating this glow effect, I would love to hear it.

@Michael

I think what is missing currently is to hook up the Luminous material’s translucency control. I’ll push a patch to VTK shortly.

That should do it, but if not perhaps @tbiedert has some suggestions on how we might regain the fantastic animated illuminated streamlines he made back in the day with the VTK/OptiX prototype.

Not sure if we can do this easily with what’s currently in VTK/ParaView.

For that SIGGRAPH’18 demo, we had a special code path for “animated paramerization”, where the emission would be computed based on streamline integration time, current wall time, and streamline surface normal.

This code is in fact in VisRTX: SetAnimatedParameterization, and can be seen in the basic sample (need to unpause the animation).

But that’s not hooked up anywhere in VTK.

@Senui The “glow” effect around the yellow line is mostly depth of field.

If you’re up for some hacking, a screen-space bloom filter could be used to simulate a glowing effect.

2 Likes

Opacity does not do the the trick. Interestingly it has kind of the oposite effect in that the edges appear brighter. I suspect this is because where the grazing angle is low we accumulate more color from the emitter.

We should still hook up the control, and extend the material library with luminous material specifications so that luminous shows up as a material choice and more people start to try it.

@senui see focal disk and focal distance controls on the Adjust Camera dialog. image

MR for the translucency change is here: https://gitlab.kitware.com/vtk/vtk/merge_requests/6491

1 Like

Thanks for your input, and the quick MR!

@Dave_DeMarle thanks for trying out with the opacity. I would however still like the object to be solid at the core (i.e. not see-through), but having the possibility to tweak that setting is very nice nevertheless :slight_smile: I was playing around with the Luminosity setting in combination with the material (e.g. water), but it seems like the material selection cancels out the luminosity and object’s color.

@tbiedert, ah fair point. I didn’t know there was a video, but it seems like it’s indeed a visual artifact. I could probably use the camera settings to change the depth of field as @Dave_DeMarle suggests, but I would have really liked to have this glow effect regardless of the depth of the object. I am not familiar with the term “screen-space bloom filter”. Is this a built-in filter in ParaView? If so, I can’t seem to find it.

I don’t think ParaView has built-in bloom support. That’s why I said if you’re up for some hacking :slight_smile: (at the VTK code level)

2 Likes

Ah, gotcha. Sounds like a fun project, but I’m not sure if I will have enough time to get my hands dirty with that :wink:

Maybe a simpler target is to try to get the inner part of my object to be brighter than the outer part (without having a (transparent) outer glow) with a (variable) gradient to try to mimic a glow effect. You mentioned that you achieved that in the video with the RTX framework. In my case, I just have a static image where I want to illuminate certain objects (so no animation). Is this something I can achieve with what’s currently in VTK / ParaView? Or was your point that even this is not possible without hacking around at the VTK level?

Any experiences with importing the VTK objects into other rendering software that maybe have exposed more parameters to get this effect?