question

Simon Allan avatar image
Simon Allan asked ·

Reflected volumetric light

Hi All,

I am trying to see a light beam that is being reflected in a volumetric atmosphere. Basically like a mirror ball effect.

I tried to get it working in C4DtoA but had no success. I can see the beam hitting the mirror surface (between light source and mirror) in the atmosphere but the bounced light is not visible in the atmosphere.

Is this possible?

Any ideas much appreciated.

volumetricslighting
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Stephen Blair avatar image
Stephen Blair answered ·

Not possible, afaik. I've tried a few times and asked around too.


Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Mads Drøschler avatar image
Mads Drøschler answered ·

You can make it work in certain cases.
What you need to do is to calculate the beam direction, hit point and derive a dynamic adapting bouncer, so whenever you move your light a new bouncer is calculated and send to framebuffer.
That will also work for like a really thin lazor beam.

Distance to point, take a measure of hit normal, correct 1st bouncer, set 1st bouncer to cast single ray which shoots in some other direction, distance to point, rinse and repeat.



qqq.png (142.2 KiB)
5 comments Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Thanks for taking the time to reply Mads.

I must admit that I don't have a clue what you mean though. I am new to Arnold and just testing it to see if it is the way forward. How do I go about achieving what you said?

Thanks

0 Likes 0 · ·

You need to fabricate, through a particle engine a pseudo raytrace mechanism that can auto spawn new lights along the ray distance, scale and orient them so you cast the area affected into a new direction where the spread and start intensity and possible over-distance falloff features are respected. So its not exactly trivial, and it wont work in all cases. But your shiny sphere and stuff of that nature with just 1-3 "bounce" should be doable. Bouncing things around based on initial angle.

This is a - relay system - You relay hits.

0 Likes 0 · ·

You can visualize the R&D process by making the particle engine fabricate a spline with 2 vertices, 1 connected to the initial light source and the other end keeps hit testing on mesh in the scene that passes by the spline, and you dynamically move the second vertex to the closests hitpoint. From this hitpoint you add a new point on the spline or make a new spline that starts at vertex 2 and hit tests seen from the bounce angle. So you need to incorporate an angle calculation based on the surface normal hit and the vector direction.

0 Likes 0 · ·

For area you can sum area of world normal not some single point hit, you need to add in, I guess a cone tracing mechanism. done from hitisurface side in a naive way.
Cone tracing sends out a single ray and blurs it over distance.

0 Likes 0 · ·
Show more comments
Mads Drøschler avatar image
Mads Drøschler answered ·

Relay bounce.


2 comments Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Thanks Mads. Nice to see something is potentially possible. Did you do that in 3DS Max or do you have a C4D file you can share so I can see how it is achieved? The explanation makes sense from a technical perspective but me achieving it in C4D is another thing entirely :-)

0 Likes 0 · ·

I dont normally operate with the interface you use, so cant assist directly unfortunatly.

0 Likes 0 · ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Welcome to the Arnold Answers community.

This is the place for Arnold renderer users everywhere to ask and answer rendering questions, and share knowledge about using Arnold, Arnold plugins, workflows and developing tools with Arnold.

If you are a new user to Arnold Answers, please first check out our FAQ and User Guide for more information.

When posting questions, please be sure to select the appropriate Space for your Arnold plugin and include the plugin version you are using.

Please include images, scene and log files whenever possible as this helps the community answer your questions.

Instructions for generating full verbosity log files are available for MtoA, MaxtoA, C4DtoA, HtoA, KtoA, and Kick.

If you are looking for Arnold Documentation and Support please visit the Arnold Support site.

To try Arnold please visit the Arnold Trial page.

Bottom No panel present for this section.