fluid batch rendering fails


#1

I did a fluidsim, cached the sim and and used it to drive my bump. The preview in the viewport is fine, rendering single frames in the RenderView are as expected. But as soon as I start batchrendering (locally on my machine), the cache and the fluidTexture aren´t updated any longer. It seems, Maya doesnt read the cache. Rendering without a cache doesnt update neither.
Anyone else who had this strange behaviour?


#2

Hmm thats kinda strange. Just a thought, im guessing the bump is linked to some kind of shader, have you tried enabling hardware texturing in the shader, to force an update? Its probably not the reason but give it a try.


#3

turning on “bump map” doesnt work, because the shading network for the bump is combined with other textures… But I turned on “combined textures” - no succes.


#4

If the fluid shape is hidden the cache does not seem to be getting updated during batch render. I think this is a side effect due to optimizations for normal volume shaded fluids, which do not affect the render when they are invisible. You can work around the problem by making your fluid visible. (if it already is visible, then I’m not sure what the cause is)

Duncan


#5

I’ve had batch fail for me before on fluids.
Do you receive a message saying this scene contains an uncached fluid…?

A few things to check
Make sure your scene is saved on the first frame of your fluid evaluation.
sometimes turning off fluid eval in modify->evaluated nodes helps.
check to see if the entire pathway is shown in your cache node, sometimes it isnt and ive found this to be problematic.

good luck


#6

Thanks for your suggestions! I tested the following tasks, all without the desired success:

  • fluid container visible (by the way, they were before)
  • disable evaluation
  • absolute cache path
  • only cache files local
  • started rendering with timeline on first frame
  • complete project on my local machine

I think I simply have to force maya to evaluate the fluidcontainer before starting the framerendering. So using any preFramerenderScript might do the trick…


#7

When I pump the outColor of my fluidTexture2D into the incandescence of a lambert, I can batchrender. When I pump the outColorR into a bum2d node and this one into the bumpSlot of my lambert, the fluid isnt´t updated any longer…


#8

Use the outAlpha, not the colorR. The pull on the color multi works, but I think you may have problems just pulling on individual R,G,B. If you really want to use the color it might work better to connect outColor to a luminance utility node… then connect that to your bump value.

I’m not sure if that would do it, but I’ve seen problems with dirtying of the out channels at render time like this.

If not you might try something like doing “dgdirty -a” inside an expression, or perhaps a getAttr fluidShape1.outColor to help trigger an update.


#9

Duncan,

A little off topic but…

Is it possible you think to get a utility in Maya for those of us only rendering on a single machine to bypass the batch render?

I used something like this:

http://www.creativecrash.com/maya/script/render-window-viewport-batch-render-script

Which is of course kind of a hack to sort of macro-automate the preview render.

But couldn’t we just get a feature within the preview render to also render as a sequence of frames?

Similar to other apps I use that don’t use a separate utility necessarily to render image sequences.

Seems like there are a lot of issues with batch render. I understand it is a complex/robust utility to handle demading render jobs. But for a lot of us we really don’t need it when just rendering a sequence is all we need.

Seems like a lot of issues come up with google search for batch render problems and a lot of solutions offered in the way of scripts to bypass it altogether.

Seems to me in Softimage For example which has a “render current pass” does not have nearly the issues I have seen with Maya’s implementation. At least from my experience. Coming over to Maya I immediately could not render a series of frames without it stopping and I had to do a lot of research just to get it to work.

Is it a Maya/ Mental Ray thing?

In 20 years of using 3D apps for rendering animation I have never run across this. And Maya being a premier app for animation… just saying. I do understand it is robust and complex, but some of us don’t seem to need it.

Is it possible to add a more simple utility as an option?


#10

Thank you so much, Duncan! You solved my topic!
It´s indeed the outColorR, that obviously can´t be used as a bumpValueInput during batchrendering. I often use the outColorR as bumpInputs for you have a visual feedback of what you are doing, sometimes in combination with a colorRemap (map the ramp via outColorR and vCoord). But in the special case of fluidTextures it didn´t do the trick.
So instead of the outColorR I piped the outAlpha of the fluidTexture in my bumpNetwork and voila!
But what´s still confusing me, why is the bump updated, when you render the sequence in the RenderViewWindow…


#11

I guess it’s the way Maya evaluates its nodes. Batchrendering calls mayabatch.exe (or the batch-command), the Renderview works inside Maya. Maybe batch just handles differently what gets dirty and need to be evaluated/updated and whats not.

Still interesting why outAlpha works and outColor not.


#12

This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.