 |
Frequently Asked Questions
I've created some environments in Maya - trees, grass, bushes etc, and want to animate them with local force. It seems to me, that the only way to animate them is to go to each strokes' attribute editor and set the animation. Is there any way to animate all strokes as a whole, instead of animating them individually?
There are a few different methods:
1. If you used the same brush when creating several of the strokes,
you can select those strokes and then paintEffects->ShareOneBrush.
This will allow you to modify one brush for the group.
2.If the strokes have brushes with different settings(except for the
parameters you wish to
animate), then you could bind the parameters to animate together using
connectAttr. You can make a single brush drive all the others, ie.
connectAttr brush1.globalForceX brush2.globalForceX
connectAttr brush1.globalForceX brush3.globalForceX
connectAttr brush1.globalForceX brush4.globalForceX
etc.
Then you need only animate brush1. One could make a simple mel
script to automate doing this sort of thing. The connections above
are in a "fan out" layout, but one could also use a "daisy chain".
3. You could use a single animated nurbs curve to animate the strokes.
Create a vertical curve with the first cv at the bottom(near the ground
plane).
Select this curve and the strokes you wish to animate, then
paintEffects->setStrokeControlCurves. Make curveAttract = 0,
curveMaxDist = 0, and curveFollow a suitable value on the brushes
you wish to affect. Now wiggling and bending the curve will affect all
the various strokes( trees, grass, etc. ).
I've been trying to render paint effects clouds through a moving camera. When the camera penetrates the clouds, the clouds seem to jump and
translate every frame. I've tried turning off auto render clip plane in camera
attributes and adjusting the near clip plane, but these do not seem to
work. Is there a way to stop the movement of the clouds as the camera is flying
through them?
If you are using clouds with the brushStart mapMethod, then the texture
behaves as though mapped on a plane with its center at the start of the
brush stroke and facing the camera. As the camera moves to a point where
the start of the stroke is behind the eye, this projection no longer works well.
You can get better results with this projection if you keep the brushstrokes
fairly short. Perhaps the tube 2D map method with a fractal texture might
work better, although the painting would take more skill.
Paint effects tubes do not currently thin out when the eye moves through
them but rather pop off. This can exaggerate the texture problem you are
having. There is a runtime brush function "makeCameraFade" that fixes this
in the highend3d melscripts section.
Is it possible to have PaintFX tubes react individually to dynamic forces/fields?
You can create a small control curve for your grass strokes, then make the curveFollow zero, curveAttract negative, and the curveMaxDist = distance
of effect from your camera. Use the curve as you would a point force.
The main problem here is that the attraction, etc, is defined on the brush and not the curve, so you can't use some curves for shaping and
others for repulsion.
You can also create runTime paint effects functions to repell and shape paint effects strokes. Look at paintCollideFunc.mel
and leafDroop.mel in your maya distribution.
Paint Effects doesn't recognise my pressure-sensitive tablet.
Try the following:
- Check that "Use Stylus pressure" is ticked in the Paint menu in the Paintfx view
- Click the Reset button in the Paint Effects Tool options menu
Geometry in front of my Paint Effects strokes exhibits strange antialiasing artifacts.
- Turn on farthest depth on your camera's depth method.
This causes the renderer to use the depth of the sample in the
pixel that is farthest from the camera. When paint effects renders
there will no longer be a white fringe, but the edge of the
forground object may appear aliased in places. I'm not sure,
but I believe that you can get a result that is sort of inbetween
this extreme and your current result by using the transparency
depth threshold with transparency based depth.
- Another method is to simply turn off antialiasing altogether
so that you only have one sample per pixel, then render the scene at
double or greater resolution. The resulting images are then resized
down with filtering. The fringe will be gone, and the edge will
look smooth. Also this has the advantage of improving the quality
and stability of very thin paint effects lines.(note. do not
turn off the antialiasing flag on the paint effects brushes) It
need not be too much slower to render this way, because antialiasing
is turned off.
- Render the background with paint effects and then
composite the foreground objects on top. This can be more problematic
for scenes where the objects are immersed in paint effects. In some
cases you could render the objects with the paint effects against
a color that is either black, or close to the object.s color, and then
composite this against your background.
|
|
|