4
$\begingroup$

enter image description here

I have a simple piece of geometry with a cloth simulation on it (a tube). I have a second piece of geometry rigged to it with a bone chain. I need the cloth simmed piece to not render, so I made it fully transparent. However, in areas where the two pieces intersect, I get black lines. How do I prevent this?

Normally I would use a mask modifier to hide the simmed geometry, but that causes the bone chain constrained to it to get messed up as the geometry it is constrained to no longer exists.

Disabling rendering of the cloth object entirely isn't an option as other parts of it need to render, and it's running off a mesh cache, so I can't alter the object.

$\endgroup$
4
  • 2
    $\begingroup$ You can send that part as an example file here for much better diagnosing. $\endgroup$ Jan 22 '16 at 8:30
  • $\begingroup$ No backface culling in Cycles, and setting the backface to be transparent as well is redundant with just having the whole thing transparent. $\endgroup$
    – Ascalon
    Jan 24 '16 at 10:29
  • 1
    $\begingroup$ Seems and impossible task with out at least a pic of the cycles node tree for both the tube and the cloth... can you please post? a pic of these node trees? $\endgroup$
    – norvman
    Jan 27 '16 at 1:34
  • $\begingroup$ I don't think the problem is with the number of light bounces. I created a character using Make Human and imported it into blender. The part of the hair and eyebrow (that have alpha channels) that intersect with the main body of my character actually allows me to see inside his head (that should be completely opaque). I put on a point lamp inside of his head and sure enough the parts where I was getting dark edges now glow white. I think that the intersecting shells actually confuse the renderer somehow and make wrong parts of the mesh transparent. I also have no idea how to fix this if someon $\endgroup$
    – user85051
    Dec 7 '19 at 3:06
1
$\begingroup$

It is definitely a small bias of cycles. I believe that it is caused by cycles internal unit system. I tested the same thing in 3ds max with Arnold renderer and it works fine without black lines. Blender's default unit is meter which could lead to precision issues in close shot rendering. However you just cannot tweak this. The only fix to this is that you scale everything up 100X then the black lines will not be apparent in your renders however the downside is that lighting will be a big trouble. If you only want to hide some part of the mesh, then you can use vertex group and mask modifier to mask out some part of the mesh. This has been an issue for years but no one from Blender tried to fix because most of people didn't notice this. It probably not a problem for most of the case but if you render close shot of transparent objects intersect with each other, it is a huge problem. Hope it get fixed in the future. I think it is not hard like eevee has alpha cut out, cycles deserve a cut out shader as well.

$\endgroup$
5
+50
$\begingroup$

Up the Max bounces under Render > Light Paths > Transparency to a high number, even numbers like 48 or higher. The more overlapping transparent surfaces there are the more likely to get black artifacts if the transparency bounces isn't high enough. If that doesn't work, perhaps check the normals aren't getting inverted mid-way, but it's likely the former.

You could also disable the cloth rendering completely by unticking everything under the Object Panel > Cycles Settings, which should speed up the render.

$\endgroup$
5
  • $\begingroup$ Turning up the transparent bounces does not change anything. The normals are fine :( $\endgroup$
    – Ascalon
    Jan 24 '16 at 4:29
  • $\begingroup$ Mmm... maybe the Blend file would be useful. But on a side-note, if the cloth (assuming it's the object seen behind the tube) is set to fully transparent (full white), why is it visible in the render? I'm trying to simulate it, but whenever I get artifacts, upping the Max/Min bounces on transparency fixes it on both full render & ambient occlusion pass. I haven't tried your full bone rig. $\endgroup$
    – Volk
    Jan 24 '16 at 22:35
  • $\begingroup$ The material isn't on the whole object, only on the part I need to hide. The cloth object is brought in from Marvelous Designer with a .mdd cache. Some of it needs to render, some of it doesn't. MD can only do cloth and doesn't handle things like cables or other items that you don't want to wrinkle very well. $\endgroup$
    – Ascalon
    Jan 24 '16 at 23:30
  • $\begingroup$ Is the image an Ambient Occlusion render, or normal render? I'm asking because of that shadow bleeding out on both sides of the relatively narrow tube. If you can't share the blend, perhaps post an image showing the viewport or such so we can see where/how the transparent cloth is positioned. $\endgroup$
    – Volk
    Jan 25 '16 at 0:26
  • $\begingroup$ @Drudge Again, why not uploading the example file here? It would be much much helpful for others to help you. It is enough to send the problematic objects only. $\endgroup$ Jan 27 '16 at 5:43
1
$\begingroup$

Seems like it's just the AO doing what it does. Maybe disable transparent shadows on the visible material?

$\endgroup$
1
$\begingroup$

I do confirm having same issues with transparent meshes intersecting. And the more meshes intersect the more artefacts we get. Cranking up the Max value for Transparency Light Paths gives no effect with these complex scenes. I've tried up to 900 with no luck in my scene.

Solution for my situation was moving from Transparent Shader to switching off the rendering for the objects in the Outliner. I can still use them and they are visible in the viewport. However, they do not have any effect on the final render. This may seem the same as transparent shading but it's different for the Cycles engine.

$\endgroup$
-1
$\begingroup$

I am speaking for Blender 2.82. Under Render Prop.>Light Pass>Max Bounces I raised the transparency bounces a bit and it cleans the artifects well for the hair meshes I am working on.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.