Student Snapgrades Grading Website Login
Page For Lecture Notes
Grading:
Sign up at snapgrades.net now.
Software Used: Maya 8.5, Mental Ray, Photoshop, After Effects
Maya Help: Search for “Limitations”
To note current maya bugs/issues and sometimes how to work around them.
See the above link description for a discussion about render logs and the tail program.
To render in batch on the command line you first need a command line. To get a command line in windows goto the start menu then goto "Run..." and type "cmd" and hit enter. Welcome to the world of dos (a very poor substitute for linux). Now you need to navigate to your project directory where your maya scene file sits. If you don't know how to navigate in dos then read "DOS for dummies" or google "DOS commands" to see what to do. For example, you type the name of the drive like so "G:". Then type "cd development". That will get you to the "G:\Development" directory
Then to start a render you need to specify the proj and maya file. You might also want to specify the start frame with the -s option and the -log option to specify a special log file to write to.
render -s 702 -proj "G:\DEVELOPMENT\Fluids" -log logs/702_6_20_07.log "G:\Development\Fluids\scenes\FountainRender.20.mb"
If you're doing a hardware render you will have to put in the '-r hw' flag as well.
render -r hw -proj "G:\DEVELOPMENT\Fluids" -log logs/TestLogfile.log "G:\Development\Fluids\scenes\FountainRender.20.mb"
702 is the starting frame number.
To get nice output in your log file that contains time statistics for hardware renders then you can put this in your render settings "Pre render frame MEL" and "Post render frame MEL".
Pre render frame MEL: $startTime = `timerX`; print "Start Render Time::::::"; print(`date -format "hh:mm:ss MM/DD/YYYY"` + " ");
Post render frame MEL: $totalTime = `timerX -startTime $startTime`; print("Total Render Time: "+$totalTime+"\n");
Without these statements then your hardware render log will look like this:
Rendering frame 1 : E:/Shumaker/renders/Galaxy/TestGalaxy.1.1.iff
Rendering frame 2 : E:/Shumaker/renders/Galaxy/TestGalaxy.1.2.iff
Rendering frame 3 : E:/Shumaker/renders/Galaxy/TestGalaxy.1.3.iff
Rendering frame 4 : E:/Shumaker/renders/Galaxy/TestGalaxy.1.4.iff
Rendering frame 5 : E:/Shumaker/renders/Galaxy/TestGalaxy.1.5.iff
With the the pre and post mel statements your render logs will look something like this:
Start Render Time::::::17:54:53 06/28/2007 Rendering frame 1 : e:/shumaker/renders/Galaxy/TestGalaxy.1.1.iff
Total Render Time: 1.68
Start Render Time::::::17:54:54 06/28/2007 Rendering frame 2 : e:/shumaker/renders/Galaxy/TestGalaxy.1.2.iff
Total Render Time: 1.61
Start Render Time::::::17:54:56 06/28/2007 Rendering frame 3 : e:/shumaker/renders/Galaxy/TestGalaxy.1.3.iff
Total Render Time: 1.56
Start Render Time::::::17:54:58 06/28/2007 Rendering frame 4 : e:/shumaker/renders/Galaxy/TestGalaxy.1.4.iff
Total Render Time: 1.56
Start Render Time::::::17:54:59 06/28/2007 Rendering frame 5 : e:/shumaker/renders/Galaxy/TestGalaxy.1.5.iff
Total Render Time: 1.55
To calculate the maximum number of particles that your scene had, like we did in class here is what you do.
In the expression editor, set the Select Filter to "by Script Node name" and type in "particleCountNode" in the Script Node name entry box. Then enter this code in the Script section:
global float $particleMax;
float $ptMax;
if ( `currentTime -query` == 1 ) {
$particleMax = 0;
}
for ($particle in (`ls -typ particle`))
{
//print ($particle + "\n");
$ptMax = `particle -q -ct $particle`;
//print ($ptMax + "\n");
if ( $ptMax > $particleMax ) {
$particleMax = $ptMax;
}
};
print ("MAXIMUM NUMBER OF PARTICLES IN SCENE: = " + $particleMax + "\n");
If you play your scene from the beginning all the way through the end then you will see the max number of particles printed in the script editor at the end.
This could be done a bunch of different ways but this is a quick and simple method to get you started.
Final Project Issues:
Major problem in compositing with particles is that they can't take a holdout material assignment.
Ie. Software particles can not be held out from hardware renders and vice verse.
Nor, software from software or hardware from hardware.
Must test this. best you can do is assign black material and use a luminance matte in the comp. Or. assign instanced geometry to particles that same shape as particles ... bobbies with Matte Opacity -> Solid Matte = 0
Creating a soft body
Select object (can be nurbs or polys)
Dynamics Mode->Soft/Rigid Bodies -> Create Soft Body
Drip
Creating a drip: From Dyn 6 book.
Particle Shape Node -> Soft Body Attributes -> Enforce Count from History
Make a sphere into soft body.
Does soft body get updated if you change the construction history of the object.
increase emission rate. body filled faster.
set max count to be = to number of cvs of sphere.
Make goal a sphere on bottom.
Make goal of drip hanging from faucet.
Can make soft body drip go from one to the other by key framing the goal strength or using a expression using linestep.
Springs are contrains between soft body objects.
Examples Three speheres:
1. Soft body without.
2. Wrap deformer
3. Lattice made into soft body, then springs from cvs of
For first and second there are no springs to resist collapse.
pick mask particles.
Select top and bottom row of particles.
Add to springs -> all
creates springs to top and bottom of sphere.
Creating springs:
select soft body.
wireframe
wire walk length = 2
or min max: distance range.
Can delete individual springs by selecting and delete key.
Stiffness
Damping
When there is a huge difference between these then you get instability.
High stiffness > 500 causes exploding.
Could increase the oversampleing of the solver.
Solvers->edit oversampling. However will slow down evaluation. usually only adjust by increments of one.
AE->spring Attributes
component mode. -> only springs
component editor to change individual rest length and dampinging.
rest length.
end weight = how much contribute each side of spring will take.
Manage particle depth = if you kill a particle it will kill the spring too.
Example: Basket ball net.
Use poly geom to modify curves as wrap deformer. Then wrap deformer into soft body.
Select net curves.
Ctrl Select wrap object.
Deform -> Create Wrap
Make wrap into soft body:
Options:
Duplicate and make original soft.
Duplicate upstream graph
select ball
make active rigid body.
mass = 40
apply forces at applyforces at CVs
pick particles and rigid body: Make collide.
geoconnector bounciness = .2
add gravity. mag = 980
select particles
Soft Bodies->create springs
no duplicates
wireframe
stiffness = 20
dampeing = .05
Painting Goal Weights:
Select wrap object:
right mouse -> paint -> goalPP
modify -> attribute paint tool
value = .95
goal painted value gets multiplied against main goal parameter.
Each project will be graded on degree of difficulty, complexity, realism, artistry, and requirement completeness. REQUIREMENTS:
Suggestions & Tips:
All of the following assignments are cumulatively worth 25% of your grade.
Evaluate twelve of the following Gnomon DVDs. Write a 200 word review of the following Training DVDs. Render out two frames illustrating what you learned by using the technique that the disk went over. You can evaluate these in any order. No credit for images that are not your own. The library has all of these for you to check out and watch.
Submit one evaluation each week. Each evaluation needs to be printed out and should have your written words on the top and the two rendered images on the bottom of the page. Your evaluation must only be one page long. Single spaced 10 point font.
Answer some of these questions if you are not sure what to write about:
Using a turntable camera as explained in class render out a galaxy with a newton field at the center of one particle bucket and a vortex at the center of another particle bucket.
Use the batch rendering techniques described in class to record your render times.
Fill in the appropriate details in the described slate file in class. Render as high quality as possible.
Vanishing Object:
Make an object disappear with an animated texture mapped to the transparency channel and an animated texture rate and color like the gnomon tutorial in our class pickup directory:
W:\CA3D_480_1_Shumaker\The Gnomon Workshop – Gravity vs. Uniform.pdf
Animate a car doing a donut. Emit cloud particles from tires with surface emitters. Use cloud particles and raytrace the shadows so you get self shadows on the smoke. Software render the particles. Use the SmokinDonut.1.ma file provided for you in the student pickup directory. You must have the following layers using Maya's Render Layer Editor:
Use as many fields as you can to get the dynamics of the smoke to look real. You must at least use the following:
Render 400 frames of each layer and composite them together. Composite the layers together using After Effects or Shake.
Cumulatively these assignments are worth 65% of your grade.
Choose any THREE of the assignments listed below.
The due dates for the assignments are as follows:
You choose which assignment is due on which due date.
DAILIES REQUIREMENT:
In order to get credit for your assignment You must turn in your project twice before it is due. That means that you have to hand in your best version (take) of the assignment EVERY class meeting. If you do not turn in something each day you will not get credit for the full assignment. Your assignment will not be graded until the due date but you will get 10 points each time you hand in an assignment for dallies. Your assignment can be far from being finished when you hand it in before the due date. Just be sure to turn in something each week or it will severely hurt your grade.
EXTRA CREDIT:
You can get up to 5% extra credit points for doing composite breakdowns (like you would for a demo reel) for each one of your projects. These breakdowns should be pretty fast and should just show the layers that you have rendered for your assignment.
Do an avalanche.
You can record mountain footage yourself or capture it from some National Geographic documentary of some sort. (See the BBC series entitled "Planet Earth").
Or you can model a small mountain range with the 3D sculpt tool.
Extra-credit for using Terra-Gen program.
The snow must move some textured trees as rigid bodies. The avalanche must also move some instanced Rocks and debris.
Use the emit command to do particle emission into multiple buckets (multi-streak and spheres and instancing). Have large snow balls (ice chunks) collapse (die) when they hit the mountain side and then emit into a bucket of smaller snowballs.
Minmum Length 500 frames.
Cars Project:
Render out a car of your choosing that just runs perpendicular to the camera for the duration of the assignment. Using the software renderer or mental ray render out the car on it’s own layer.
Make the car go through one season on an imaginary infinite straight road. The car can interact with particles in the following manner:
Winter: The car needs to drive through a snow storm (perhaps with hail if you wish (add sphere particles)). Make the snow sprites that are white snow flakes or white clouds. You will want to use Mel to randomize the size of the sprites. You also need to use goals to make some of the falling snow stick to the car and accumulate (like the faucet assignment). You should also use flow to make some snow follow the contour of the car as it drives through the storm.
Spring: The car needs to drive through the rain. Use streak particles like in he rain assignment to do this. Also employ the collision event technique utilized in the rain assignment for rain hitting the car. Furthermore you are to use flow to make one of the rain layers flow over the car as it speeds through the storm. I will leave the lighting and texturing up to you. Bonus points for using the emit command to emit water (blobbies) when the car runs over small pot holes or rocks.
Summer: The fun starts here when you set the car on fire using the fire clip effect. After several frames of the car being on fire (bonus points for smoke sprites or clouds behind the car) you can put the fire out by making the wind blow it out and stop the emission with an animated texture that drives the emission.
Fall: Instance leaves to particles and have them flow over and around the car. It would be fun to have the car plough through a big pile of leaves as well.
Be sure to add plenty of turbulence and some drag to the particles to make it look like real weather effects. Hint: use a strong localized (bounded) turbulence behind the car.
Using goals and blobbies and some animated creature - render out a flubber like vfx shot.
You can use springs, pins and nails to render out bubbles that are inside the flubber creature. You can use other techniques as well.
You must use real video footage for this shot. It can be captured yourself with a video camera or captured from some movie that you like.
You can use mental ray if you wish.
Have the flubber creature do something (dance, sing, roll, walk, anything).
Minimum Length: 400 frames
Do shot from perfect storm.
http://www.howstuffworks.com/perfect-storm.htm
Do simple rain but also do an ocean and boat with splash curve emitters.
Page 69 in Maya : Professional Tips and Techniques.
Page 223 in Maya: Secrets of the Pros
I have both of these books that you can use and copy.
Do as many layers as you can. Everything must be rendered.
You must have:
Minimum Length of 500 frames.
Using the methods in the book do a pod-race scene and crash.
Page 384 in the Special Effects Handbook.
Page 247 in The Special Effects Handbook.
Scene length of at least 500 frames.
Sandman: using goals and software and hardware rendered particles and an animated character render out a sandman.
Use real video footage as background.
Minimum length of 400 frames.
Render out the exercise from Lesson 19 from the Special Effects Handbook.
Zoom in to reveal an asteroid belt in which a spaceship duel is taking place.
Show at least one lazer blast hit and explosion.
Use the Hubble space shuttle pictures as composited backgrounds.
You can also use the Galaxy paint effects brush in Maya for rendered out backgrounds.
Use as many of the techniques from the "Outter Space Environments" DVD as you can.
Minimum length: 500 frames.
<!--[endif]-->Your Name on Fire:
<!--[if !supportLists]-->a Page 562 in the Special Effects Handbook. <!--[endif]-->
Use the name writing goal assignment as a starting point and increase the quality of the look and the complexity of the effect and scene.
<!--[if !supportLists]-->b. <!--[endif]-->You can increase the quality and the complexity by adding any FIVE of the different things listed below:
<!--[if !supportLists]--> i. <!--[endif]-->Soft Bodies
<!--[if !supportLists]--> ii. <!--[endif]-->Rigid Bodies.
<!--[if !supportLists]--> iii. <!--[endif]-->Collision Events
<!--[if !supportLists]--> iv. <!--[endif]-->Collisions
<!--[if !supportLists]--> v. <!--[endif]-->Emit Functions
<!--[if !supportLists]--> vi. <!--[endif]-->Expressions
<!--[if !supportLists]--> vii. <!--[endif]-->Flow
<!--[if !supportLists]--> viii. <!--[endif]-->Goals
<!--[if !supportLists]--> ix. <!--[endif]-->Instancing
<!--[if !supportLists]--> x. <!--[endif]-->Fields
<!--[if !supportLists]--> xi. <!--[endif]-->Emitters ( Curve, Surface, Volume, Per Point, Directional, Particle Tool, Omni)
<!--[if !supportLists]--> xii. <!--[endif]-->Particle Types (MultiPoint, Point, Numeric, Streak, MultiStreak, Spheres, Clouds, Blobbies, Tubes, Sprites)
Minimum Length 500 frames.
Make a car jump through a wall of ice that is made up of rigid bodies. Shatter the wall of ice with the Shatter Clip Effect. Be sure to read through the rigid body optimization chapter to deal with collision and interpenetration errors. (Hint: Think different collision layers) . We are going for realistic looking collisions here but that doesn't mean you can not "cheat" by improving the shot with compositing and rendering tricks. (hint: Think layers)
You must have at least three particle passes rendered out to make this collision look real. These particle passes can be (but are not limited to) the following:
Finally, the ice needs to be raytraced to have proper fraction and reflection. Don't forget to use layers to optimize what gets raytraced and what doesn't. Just because the ice is raytraced doesn't mean the car or anything else has to be.
You must also use the emit function to emit particles when the car collides. Use the code from the book in chapter 23 to increase the number of particles that are emitted on collision.
Please vote on each of the TWO polls that are newly created.
I will gather the totals by Monday the 9th and announce them when we will meet. If I don't get any votes then I will decide myself.
Please vote now!!!