Render artifacts!

   18038   30   1
User Avatar
Member
112 posts
Joined: July 2005
Offline
I have been trying to render a scene, but chronically get these black squares in my final mantra render. It's as if small chunks of the image simply don't get rendered, and I have noticed this is more common with when using VEX super material or sometimes glass material (though I do get it in layered surface too but not as much). Any thoughts? Or might this be some weird bug with mantra or some of the shaders? :?

www.tirgari.com
User Avatar
Member
4140 posts
Joined: July 2005
Offline
Are you running a displacement shader? If so, up the disp bound in the object being rendered. Can you repro on a primitive sphere? Have you upped the shading quality? Have you altered the mantra call with some params?

This is fixable - just need more info on what you're rendering. We use mantra in production every day and get nothing like this. It would also help if you can consistently repro with a specific shader, data and settings - you kind of infer that it's sporadic and happens all the time randomly. Try to simplify as much as possible. Anything you can provide like:

step A
step B
step C
*bingo* bug


would be very helpful.

Cheers,

J.C.
John Coldrick
User Avatar
Member
112 posts
Joined: July 2005
Offline
This particular file has been tweaked a good deal as far as shaders go. I have replaced and changed shader settings a hell of a lot, so I am not sure if that has contributed to confusing the renderer. The lamp, specifically, is using a vex layered surface with a JPG image to add grime and dirt.

my mantra render rez is 720x480 with 2 times super sample. No displacement shader.

Can you let me know what you mean by display bound for render or upping the render quality (do you mean rez)?

Also, what do you mean if “I have altered mantra call through some parameters”? I usually set up multiple mantra nodes for various purposes.
Thanks
www.tirgari.com
User Avatar
Member
543 posts
Joined: July 2005
Offline
talos72
I usually set up multiple mantra nodes for various purposes.

I assume you mean multiple machines right? I have seen similar kinds of problems when one node fails for some reason (runs out of swap) and mantra doesn't catch it to be able restart the render for that “patch”.

Does this happen when rendered on a single machine?


–Mark
========================================================
You are no age between space
User Avatar
Member
112 posts
Joined: July 2005
Offline
I am doing all my renders in one machine. I set up different mantra renders in the same file for variety of purposes: one for just rendering specific objects, one for rendering particles, one for quick rendering to check lighting, etc.

Again, the artifacts seem to occure for specific objects in the scene, not all the objects or the entire scene. That's why I was wondering if there is an issue between mantra and the specific shader being used for the specific object displaying the artifacts. :?:
www.tirgari.com
User Avatar
Member
412 posts
Joined: July 2005
Offline
going back to john coldrick's original post, are you using displacement shaders?

if so, then this looks like cracking due to your displacement bound..the disp. bound can be found at the obj level. go to the obj's parameters. in the render tab, there should be a box to check off for displace bound. bump that value up some and see if that fixes your problem…

also, shading quality can be found in a few different places. go to your mantra options (+ button next to render command), go to micropolygon tab and change your shading quality there. this will affect the shading quality of everything in your scene (be ready for some render time increases). You can also find shading quality under each individual object for more control over each obj in your scene. go to params->render->shading quality. also, there is a good explanation of shading quality in the objects pdf.

hth,
dave
Dave Quirus
User Avatar
Member
112 posts
Joined: July 2005
Offline
Thanks for all the help. deecue, increasing the shading quality seems to have done the trick. I isolated one of the problem objects and created a test mantra just to render that object and increased its render quality to 5 in the render command tab and rendered a 10 frame test, no black spots!
However, when I render the object with the rest of the scene, I still get the black spots but not as much as before.

Maybe I should render those objects separately and comp them in later in COPS.

But rendertime does increase dramatically with render quality, and looks like I will be rendering this scene for some days. 8)
www.tirgari.com
User Avatar
Member
941 posts
Joined: July 2005
Offline
talos72
However, when I render the object with the rest of the scene, I still get the black spots but not as much as before.

Maybe I should render those objects separately and comp them in later in COPS.

But rendertime does increase dramatically with render quality, and looks like I will be rendering this scene for some days. 8)

Hi Talos;

It's hard to tell without inspecting your setup, but….
Those things look like shader problems to me. Specifically, they look like some out-of-range or other illegal condition in some illumination-related bit of your shader. Things like division by zero, root of negative number, 0-length vectors, etc. Something that remains illegal for a whole micropoly (thus the square shape to the artifact).
If this is the case, then raising the shading quality will just make them smaller (not necessarily make them go away). And lowering the shading quality (a much more telling test), should make those squares larger. If this is the pattern, then time for some quality shader disection

Just a thought…
Mario Marengo
Senior Developer at Folks VFX [folksvfx.com] in Toronto, Canada.
User Avatar
Member
4140 posts
Joined: July 2005
Offline
Talos, just so you know, shading quality is on an object-by-object level so only the particular object will render at that level, so it won't slow down the entire render to do that.
Mario's right, though - it's not really the *answer* - something is wrong somewhere. First off - the issue of having changed params in a shop wouldn't have “confused” the renderer at all - again we do that all the time. What I'm finding confusing is the inference that you seem to be coming across this on prebuilt vex shaders semi-regularly. To go back to my original post: can you simplify all this and provide a step by step process? For example, if you're using the vex Glass shader, open the textport, type in

opcd /shop
opscript -b MyGlassShader

and cut and paste the results here? That tells us what params you're sending to your shader. This assumes you're using an existing Vex SHOP. Ensure that you can reproduce this on a simple sphere with a default light. If you *can't*, then something else is causing it and you should add, piece by piece, different elements to the pipeline until it breaks(lights, data, etc). That should give you information that will lead to the cuplrit.

Cheers,

J.C.
John Coldrick
User Avatar
Member
112 posts
Joined: July 2005
Offline
Ok here are parameters from two of the problem shaders. These are direct screen grabs from the textport.



www.tirgari.com
User Avatar
Member
112 posts
Joined: July 2005
Offline
Hey Mario, I am very curious about your explanation. Can you please explain further about the possible cause?
www.tirgari.com
User Avatar
Member
941 posts
Joined: July 2005
Offline
Hi Talos,

talos72
Hey Mario, I am very curious about your explanation. Can you please explain further about the possible cause?

It's just that I've seen these type of artifacts before; and in most of those cases it had to do with something going “illegal” inside the shader. When implementing some illumination models (most notably OrenNayar) for example, similar things would show up, and they had to do with vectors flipping sides, or becoming 0-length, or what have you. These things would only show up with a specific set of conditions, and only remain in the bad state for a couple of micropolys, leaving that distinctive black (or white) square behind.
Now; this could be due to something funky in the shader itself, or bad parameters to some auxiliary function, like fresnel() for example.

Unfortunately, you posted a screen dump instead of the actual text. With the text, I could copy-paste it to try and reproduce it; but with the screen dump, I'd have to type all that by hand, and I'm too lazy for that! Also; you copied the ogl part of the params; not the actual shader params, so it'd be useless to copy anyway

If you could post a minimal hip file that shows the artifact, then maybe I can have a look at it. This kind of stuff is hard to pinpoint by guesswork…

Cheers!

P.S. Incidentally… do you get these cute squares only when using that “v_layered” shader, or does it show up with all shaders?
Mario Marengo
Senior Developer at Folks VFX [folksvfx.com] in Toronto, Canada.
User Avatar
Member
112 posts
Joined: July 2005
Offline
So far I have seen the artifacts in layered shaders, super material and I think VEX glass, sometimes. Could my using JPG files in the shader's various channels to create the grimy/dirty look be causing some issues? In this particular file being rendred, when I don't use the JPGs in the shaders and do a straight render with supermaterial and layered surface, I don't notice the problem…at least on initial observation!
www.tirgari.com
User Avatar
Member
941 posts
Joined: July 2005
Offline
talos72
Could my using JPG files in the shader's various channels to create the grimy/dirty look be causing some issues?

I doubt it, but it is possible… too many variables. Again; the only way for anyone to try to help you is if you post a simplified hip file (one obj + one shader maybe) that shows the problem. Otherwise we could be guessing for a looong time

Cheers!
Mario Marengo
Senior Developer at Folks VFX [folksvfx.com] in Toronto, Canada.
User Avatar
Member
112 posts
Joined: July 2005
Offline
Here is a hip file with one object and two of the problem shaders. In the SOP level, I have set up two shader OPs (one for each shader). You can apply each shader separately by bypassing one shader op or another. Here is a link to the hip file:

http://users.adelphia.net/~atirgari/ShaderArtifact.hip [users.adelphia.net]
www.tirgari.com
User Avatar
Member
4140 posts
Joined: July 2005
Offline
Well that solves that one - didn't you try to use another map? I've tried no maps, rat maps and tif maps and I can't reproduce your problem. I assume all I had to do was render one or the other shader from main_cam and it should be apparent? Nothing here…

Let me know if it's super subtle or what part of the vase I should be looking at. Btw, we're running 6.1.208 here…

Cheers,

J.C.
John Coldrick
User Avatar
Member
639 posts
Joined: July 2005
Offline
Ditto John here. Looked at the alpha, everything is looking fine as far as I know… Tried jpg, nothing thus far.
User Avatar
Member
941 posts
Joined: July 2005
Offline
Sorry Talos… no luck

I tried JPG maps (and some *really* poor quality ones); each shader separately; both together, with/without micropolygon rendering; zoomed in *real* close, etc, etc. … nada.

What version are you using?
Mario Marengo
Senior Developer at Folks VFX [folksvfx.com] in Toronto, Canada.
User Avatar
Member
112 posts
Joined: July 2005
Offline
I had a feeling the prob would not reproduce. I am using the latest version of Houdini (build 208).

So JColdrick, you think using the same JPG file for both shaders may be causing some issues?

I will try to use different ones and test the render.

I know I am not imaginning the artifacts…

Again, I appreciate you guy's assistance.
Edited by - Jan. 28, 2004 13:44:13
www.tirgari.com
User Avatar
Member
639 posts
Joined: July 2005
Offline
Oddly enough, if I set to “render as subdivision surface” while rendering with texture, mantra caught signal 11 (SEGV??). Are you getting this, Mario?
  • Quick Links