PDA

View Full Version : Dissolve without seeing the back of object?



bill_britt
05-21-2010, 12:23 PM
I have used LW for many years intermittently, though I never have felt confident in my knowledge of it so I may be asking a dumb question.

I want to make items dissolve or "fade" without seeing the back side of the geometry or overlapped areas. I've attached a picture with the problem areas circled or pointed out.

My goal is to fade out each system of the body one at a time. Is there a way to render only front visible polygons during a dissolve? I'd prefer not to render out each object individually fully opaque and composite them in the Avid where the dissolve would be created.

Does anyone have a solution?

FYI I use Mac Pro, 3.2 GHz, quad core Intel Xeon, dual processor, 26GB Ram, Cintiq 20WSX and Cinema HD display, NVIDIA GeForce 8800 GT graphics card
OS X 10.6.3
Lightwave 9.5 Mac 32

probiner
05-21-2010, 02:54 PM
Separate different fading objects by layers and then use in Object Properties>Render>Object Dissolve on each one.

bill_britt
05-21-2010, 03:27 PM
Actually dissolve does not solve the problem. Please take a look at the image and you can see areas that are circled which exemplify the problem.
A partially dissolved object is able to see the back "inside" of the object. Is there a way to not see the opposite side's interior?

4dartist
05-21-2010, 04:00 PM
Hum.. dissolve works for me. You can see the other object behind the one dissolved but not the polygons from the same object that are behind it. Even with the normal facing the camera.

I'm not sure what's causing you to see something different. I am using 9.6 public release.

Most likely has to do with the combination of your incidence angle transparency and the dissolve.

shrox
05-21-2010, 04:09 PM
Turn off two sided, see if that helps.

4dartist
05-21-2010, 04:18 PM
2-sided didn't seem to effect my test. But adding any sort of transparency to the object using the transparency channel instead of dissolve does reveal polygons on the backside who's normal faces the camera, which is well.. normal.

To get it to still conceal polygons of the same object, but polygons of other objects, via transparency is beyond me. It's possible someone has a node that'll do it, that you would plug into the transparency channel in the node editor.

Honestly, doing it in post wouldn't be all that bad. At least not with after effects or something similar. Just render each layer with what ever sexy incidence angle transparency with alpha channels. Put em all together then animate your dissolves. *shrug*

probiner
05-21-2010, 04:38 PM
Anyway it would be cool if there was a nodal way to get the info on what can the camera see. So that what is seen by the camera is 0%transparent and whats not seen, 100%transparent, so that when you add the transparency to the whole surface the back face don't show up, because the ray already hit a sruface once.

(i have no idea what im talking about, but its soemthing like this :D )

Cheers

bill_britt
05-21-2010, 04:49 PM
4D artist, you are correct, it must have to do with the incidence angle undergoing a dissolve. I may have to bite the bullet and do the fades in post. I just thought I was making a mistake.

BTW, I'm rendering these frames out in HD 1920x1080 and they are taking about 25 minutes each. Does that sound reasonable to you guys? I have a dome light at 50% and a distant light at 50%. These times are about normal for me, but I just wondered if there is a trick I'm ignorant of?

Dexter2999
05-21-2010, 05:48 PM
I would do the dissolves in post anyway. You have more control over the rate and you can even get a little crazy with matts and have even more flexibility.

Lightwolf
05-21-2010, 05:53 PM
I'd do the dissolves in post as well. It also has the advantage of giving you more control, and dissolves can also take quite some time to render.

There's basically two way to go about it, the first one being easier.

One is two just render the complete object as is once.
Then you disable the first 3D item you want to fade away, render a second sequence.
Disable the next 3D item, render a new sequence.
Repeat until you're done.

Then just fade from one sequence to the next. One advantage is that the lighting will also more or less fade properly.

The other method involves matte objects but is not really needed in your case by the looks of it.

Cheers,
Mike

Danner
05-23-2010, 03:59 PM
had your problem before, ended up making a scene for each transparency level and fading the renders in post.

Lightwolf
05-23-2010, 05:39 PM
had your problem before, ended up making a scene for each transparency level and fading the renders in post.
It's usually the quickest way anyhow.
My ex-colleague at the studio used to set up scenes with loads if dissolved fades on items. I've seen cases where the render of a frame with a dissolve took longer to render than the other 100s of frames in the animation without dissolves.

Cheers,
Mike

probiner
05-24-2010, 02:41 AM
Sure this task done in post is better. You can easly control the time composition better there without having to re-render everything.

But even so it could be nice to have some kind of 'Visibility Node', no? (if there isn't already).
Meaning, it would shade things black and white, concerning what would show up in the render.

Example. i used Dpont's Shadow Node (http://pagesperso-orange.fr/dpont/plugins/nodes/nodes/Shadows.html#Shadows) and a Point Light at the Camera to get this effect.
Strange thing is... when i put it in 'Diffuse Shading it works', but when i put it in 'Transparency' the shadows no longer affect the result, so i baked it =\.
Anyway... in the bottom images you can see the object 50% Transparent, witouth the baked map and with the map.

http://i153.photobucket.com/albums/s202/animatics/Lightwave/Visibility-Node.png

Will not argue that the particular case, post is better option, but it could be nice if such a Node was around :rolleyes:


Cheers

Lightwolf
05-25-2010, 12:17 AM
Will not argue that the particular case, post is better option, but it could be nice if such a Node was around :rolleyes:
Ah, I see what you mean. Basically ignore all subsequent rays that hit the same item that the last ray hit. Well, or just give you a value of 1 if the current ray is shot from the same item.

Cheers,
Mike

probiner
05-25-2010, 01:06 AM
Ah, I see what you mean. Basically ignore all subsequent rays that hit the same item that the last ray hit. Well, or just give you a value of 1 if the current ray is shot from the same item.

Cheers,
Mike
Images talk better hun? :D
Yup, but it could be better if it was per surface and not per item, so that you don't need to separate the object by layers, i think. But i guess that is kind of strange to do since the whole mesh in the item would have to be evaluated no? =P

Cheers

Lightwolf
05-25-2010, 01:15 AM
Images talk better hun? :D
Yup, but it could be better if it was per surface and not per item, so that you don't need to separate the object by layers, i think. But i guess that is kind of strange to do =P


Well, it's next to impossible to do (not completely though) because a node knows which item the current ray has been shot from - but not which object.

It would also lead to funny (as in: not ha ha funny) rendering artefacts with items that consist of more than one surface.

Edit: And it either way it'd likely be still very slow to render.

Cheers,
Mike

JonW
05-25-2010, 02:20 AM
25 minutes!

Your computer X5482 CPUs I guess, is a bit faster than my E5450, both being similar speed to an over clocked 920.


What camera & it’s settings are you using? Classic camera can be a lot slower.

Ray Recursion Limit # ? Only needs to be 1 number higher than the number of transparent or translucent layer it’s looking through. A higher figure, things will look slightly more accurate, but in general no one will notice, render times can go up a lot.

lertola2
05-25-2010, 06:39 PM
probiner,

This is a great technique. Thanks. It is coming in handy on a job I am working on now.

-Joe


Sure this task done in post is better. You can easly control the time composition better there without having to re-render everything.

But even so it could be nice to have some kind of 'Visibility Node', no? (if there isn't already).
Meaning, it would shade things black and white, concerning what would show up in the render.

Example. i used Dpont's Shadow Node (http://pagesperso-orange.fr/dpont/plugins/nodes/nodes/Shadows.html#Shadows) and a Point Light at the Camera to get this effect.
Strange thing is... when i put it in 'Diffuse Shading it works', but when i put it in 'Transparency' the shadows no longer affect the result, so i baked it =\.
Anyway... in the bottom images you can see the object 50% Transparent, witouth the baked map and with the map.

Will not argue that the particular case, post is better option, but it could be nice if such a Node was around :rolleyes:


Cheers

probiner
05-26-2010, 05:25 PM
This is a great technique. Thanks. It is coming in handy on a job I am working on now.

Hey Joe
just be aware it probably won't be PERFECT.
85203



I did not know about Dissolve. This is the second time today that you have taught me something.
Felt the a same about some posts of yours, one about how to make joint morph and another one :thumbsup:


@Lightwolf.
This is something that looks quite simple and at the same time it isnt hun?
It's looks as simple and preprocess the alpha channel and then front project it to the mesh. But wait, front projection will affect back and forward... I quit :D

Lightwolf
05-26-2010, 05:44 PM
@Lightwolf.
This is something that looks quite simple and at the same time it isnt hun?
It's looks as simple and preprocess the alpha channel and then front project it to the mesh. But wait, front projection will affect back and forward... I quit :D
I was thinking even without the front projection, rendering it natively depending on where the current ray comes from. But once you add intersections into the mix... or objects within objects, then things start to get complicated.

But basically the idea is to render any visible surface of an item only once.

Cheers,
Mike

Dodgy
05-26-2010, 07:12 PM
How about giving the transparent surface an IOR of 1.0001 and set the object itself to unseen by rays, with Raytrace refraction on? That means when the ray passes through it, it never sees itself.

lertola2
05-26-2010, 07:46 PM
How about giving the transparent surface an IOR of 1.0001 and set the object itself to unseen by rays, with Raytrace refraction on? That means when the ray passes through it, it never sees itself.

Wow, that works. Thanks,
-Joe Lertola

probiner
05-26-2010, 08:10 PM
How about giving the transparent surface an IOR of 1.0001 and set the object itself to unseen by rays, with Raytrace refraction on? That means when the ray passes through it, it never sees itself.

Ding ding ding ding!!! We have a winner!
That's so fast and simple that... :foreheads. Thanks.

PS: but for cases like the opening post, where there are several transparent body parts, "Unseen by Rays" will cause the inner parts to be unseen.

4dartist
05-27-2010, 08:04 AM
How about giving the transparent surface an IOR of 1.0001 and set the object itself to unseen by rays, with Raytrace refraction on? That means when the ray passes through it, it never sees itself.

Holy smokes, nice solution.. :)

lertola2
01-17-2012, 02:52 PM
How about giving the transparent surface an IOR of 1.0001 and set the object itself to unseen by rays, with Raytrace refraction on? That means when the ray passes through it, it never sees itself.

Every once in a while I need to come back to this thread to find out how to hide the back side of transparent objects. Thanks again Dodgy.

probiner
10-24-2012, 10:04 PM
And today is my turn lertola. I always put it 0.0001 instead of 1.0001 and forget the unseen by rays. :D