Jump to content

Motion Blur Behind Transparent Objects


Recommended Posts

Since it's my first post on OdForce i would like to greet the members of the community!

My question is, how could i do motion blur behind transparent objects?

Here is what i get with standard shaders (vex_glass for the transparent object):

post-2183-1172850805_thumb.jpg

Is this behaviour caused by some wrong settings, or i shoud write or build a custom

shader to reach the expected result?

I don't want to loose the distorsions of refraction, thats why i don't want to do it in composition.

Thanks in advance:

bmt

Link to comment
Share on other sites

Hi bmt,

The problem is with the VEX Glass shader. If you replace the shader with the VEX Super Material without any refraction, for example, you'll see that motion blur works.

Unfortunately, you'll have to either write your own shader or do a comp trick. Someone else might have a solution for you but I can't think of any at the moment. Sorry.

Cheers!

steven

Link to comment
Share on other sites

Since it's my first post on OdForce i would like to greet the members of the community!

My question is, how could i do motion blur behind transparent objects?

Here is what i get with standard shaders (vex_glass for the transparent object):

post-2183-1172850805_thumb.jpg

Is this behaviour caused by some wrong settings, or i shoud write or build a custom

shader to reach the expected result?

I don't want to loose the distorsions of refraction, thats why i don't want to do it in composition.

Thanks in advance:

bmt

Don't know exactly what is causing it, but it has something to do with raytracing. Maybe the depth of rays, because for one thing the shadow from the glass should be much more transparent, and since it is not you are either using depthmap shadows, or your raytracing settings have something missing. That is definately has nothing to do with shaders, so play with render settings rather. 100% it is raytracing issue!

Link to comment
Share on other sites

Something is funky with the refractlight() or reflectlight() functions maybe?

reflectlight(....) works fine.

Something wrong with refractlight(...) function (as well as raytrace(...))

Color channel renturns colors without MB....

while opacity channel returns mixed opacity (wihtout MB over motion bluried)

Link to comment
Share on other sites

thanks for the fast responses, unfortunately i wasn't able to check your ansvers yet,

but as i do it now, i see that i have to dig a bit deeper to resolve this..

if i find a solution i gonna post it here.

but anyway thanks again.

cheers

bmt

Link to comment
Share on other sites

You might be able to work around this by extracting the two geometry (the refractive plane and the refracted objects) into seperate geometry nodes. Mantra in H8 has a shortcoming that requires raytrace motion blur to be disabled when the rays are traced against the same object.

Andrew

Link to comment
Share on other sites

Hi Andrew,

The tests I did were with a box & not a plane which is why motion blur didn't work. I split out the box into six separate Geometry objects & it works now (File attached and using Mario's Glass shader Pt 4). I guess users have to be aware of the shortcoming & plan their render carefully if they want raytraced motion blur.

Thanks for letting us know about this.

Cheers!

steven

glass_mb.hip.gz

Link to comment
Share on other sites

I just saw this. (hey Ed, thanks for the plug! :))

Yes, separate objects, like Andrew and Steven said.

Here's a test with houdini's built-in shader:

post-148-1173209651_thumb.jpg

And here with the custom shader:

post-148-1173209689_thumb.jpg

And the hipfile (sorry for the redundancy Steven, I was in the middle of making the test when you posted... you beat me to it :))

testMB1.hip

Link to comment
Share on other sites

Hey Mario,

I like your setup better though. :) Thanks for posting your file because I haven't had much chance to use your Glass shader & that looks like a good setup for lots of render tests! :)

Cheers!

steven

PS I know you're busy but please try to finish up the glass shader eh? :P

Link to comment
Share on other sites

After looking at Mario's file, I realised my folly in the file I posted. I literally split the box into 6 faces/planes & put them into 6 separate objects. I did that because I was using micropolygon rendering which didn't give me the result. I should have used raytrace (mantra -r) rendering to test. I don't know why my earlier tests didn't give me the result I got today. I'll put this down to user error but many thanks to Andrew for highlighting a small shortcoming of mantra (which is easy to deal with) and Mario for showing the right way!

Cheers!

steven

Link to comment
Share on other sites

  • 2 weeks later...
is there something extra that i was meant to do that i have missed?

Hi there,

Which build of 8.1 are you using? I just spotted a fix on the Journal:

Thursday, Febuary 8, 2007

Houdini 8.1.872: Fixed a bug where mantra would reset the time for secondary rays to 0 in raytracing only mode (mantra -r). This change should fix self-occlusion artifacts that appear in secondary lighting when rendering with motion blur in this mode.

...it speaks about self-occlusion artifacts, but having the correct time on seconday rays sounds like it should be very important for this too.

Could you download a build post-8.1.872 and give it another bash?

Cheers,

Jason

Link to comment
Share on other sites

Hi there,

Which build of 8.1 are you using? I just spotted a fix on the Journal:

...it speaks about self-occlusion artifacts, but having the correct time on seconday rays sounds like it should be very important for this too.

Could you download a build post-8.1.872 and give it another bash?

Cheers,

Jason

could be i am using build 8.1.704 right now. i will have a check. thanks.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...