I made a realflow script! It's awesome. Or at least it's awesome because it's my first one. Anyway, trying to find places up upload it so here's a good place!
So what does it do? I'm glad you asked! So this little guy sets up initial velocities and rotations for rigid bodies. Basically if you just need to get you rigid bodies moving you are much better of just setting some initial values. But if you have more than 10 objects setting each one by hand can be a pain. So this script automates that process. To use this script import your rigid bodies. They must have translation values (don't import 'frozen' geometry).
1. Create an object that will be the center of you force.
2. Run the script.
3. In the dialouge box, select the objects you want to make rigid bodies.
4. In the dialouge box, select the object you want to make the center point.
5. Input a maximum speed for the regid bodies.
6. Input a maximum rotational speed for the rigid bodies.
7. Press OK.
I've only tested this in Realflow 2012, so I can't tell if it'll work in earlier versions. Anyway, download it and try it, before my mobileMe gets taken away from Apple, boo :(
rigid body script <------------------
09 May 2012
10 October 2011
Ok, I know I've promised a tutorial and I'm still going to do it. I've mostly been putting it off as I've been having issues with video recording software. Maybe I should just write it down in a PDF, but I guess video tuts are all the rage. Anyway, I guess the moral of the story is that free video capture software is terrible. I can't work on my Mac, which would be nice because I would have quicktime. (Maybe that is terrible too.) So, you'll have to wait until I get camtasia. And that's going to be a while.
15 September 2011
Ok so I've fixed my video card problems. So tutorial soon; at least as soon as I can get some good video capture software up and running. In the mean time, there's this neat little fluid test that this guy did. But better yet is the crit that one of my colleagues gave him in the comments. Worth its weight in gold.
http://vimeo.com/28519440
http://vimeo.com/28519440
01 September 2011
Delays
Wow sorry about the delays. I have been holding off posting due to my video card not being supported by maya. That's what I get for going with an ATI chip. My 6870 performs well for games, but I need nVidia drivers to run Maya. It's very difficult to work when your view port stops updating. Anyway, not sure what card to get. I don't want to give up my gaming abilities, and I don't want to have to switch out cards every time I want to work or play. I may end up with a 580 GTX or 590 GTX. Not sure yet. But that at least sounds like a better solution than a quadro 4000. Anyway, I'll get back to the tut soon enough.
24 August 2011
Portal Shot Film
Ok so not so much Fx related. Well, the portals are pretty neat, but yeah, check this video out. It's amazing.
09 August 2011
Tutorial Intro
Ok, I will get around to the good stuff. But I figure I should write it out clearly before I just start posting willy, nilly here. So, instead I'm going to give the outline for how I want to talk about this topic. I guess at the end I'll gather it all up and make a nice PDF or a video tutorial if I can get my hands on some nice recording software. For this tutorial I am going to make the following assumption. I assume that you can read. And since I can safely assume that, the I can also assume you can read maya's extensive documentation. If I talk about something that you don't understand, it will be most likely because you didn't read Maya's documentation on said topic. If you ask me about something that can be easily answered by pressing "F1", I will most likely ignore you. What I'd like to focus on are little tips or methods that I use with Maya's tools. We're going to write quite a few expressions, but nothing overly complex. You don't have to know mel to follow this tutorial but again a little RTFM doesn't hurt.
I want to cover basic particle emission, fields, PP attributes, and PSI shading. Finally, I want to be able to output a high quality render worthy of a demo reel. So we'll see how this goes.
I want to cover basic particle emission, fields, PP attributes, and PSI shading. Finally, I want to be able to output a high quality render worthy of a demo reel. So we'll see how this goes.
03 August 2011
Missile Trail Beginnings
Hey this will be the start of the missile trail tutorial. So now a disclaimer, I'm not an expert, at least not in the all knowing sense. I've worked on this type of effect but have not mastered it. I will be dispensing my knowledge here. I guess the thought is that in teaching I will learn more than soaking up knowledge from others. That said doing is important.
So yeah, this is a good starting point. Things to take note of are the length of the trails, the speed of dissipation, the colors of the smoke, turbulence in the trail, length of the fire, shadows and lighting. What will make the missile trail most believable is making it move correctly and shade it correctly. It is important to pay attention to how light interacts with the smoke trails.
I hope this gives you a good idea where to start. Technical stuff later.
-Calibrix
So where to start on the missile trail. Well for one, close Maya. We'll get to that part later. When starting a project you need to know where you are going before you start making a ton of particles. I know it sounds straight forward but it is really critical and most artists skip this step. So the first step is to look at reference. Now that we have google and youtube there really is no excuse for not doing this.
Here's what I found in less than 5 minutes.
So yeah, this is a good starting point. Things to take note of are the length of the trails, the speed of dissipation, the colors of the smoke, turbulence in the trail, length of the fire, shadows and lighting. What will make the missile trail most believable is making it move correctly and shade it correctly. It is important to pay attention to how light interacts with the smoke trails.
I hope this gives you a good idea where to start. Technical stuff later.
-Calibrix
02 August 2011
Tutorial Ideas
So I think I've settled on something to talk about. Particles. Particles are probably the most technical Fx. Technically most Fx work is just making something that looks cool. I once made an effect entirely out of blend shaped geometry, no dynamics required. It just requires you to think outside the box and explore some of the weird things in maya.
But yes particles. I remember one of the things that got me started was an old tutorial on missile trails. That was back in Maya 5 or something. Anyway, I thought it could use an update, so over the next few weeks I'll be talking about particles, and more than that, we'll be creating a missile trail while not using any of the built in ramps. It will be all expressions. Kill two birds with one stone I guess.
But yes particles. I remember one of the things that got me started was an old tutorial on missile trails. That was back in Maya 5 or something. Anyway, I thought it could use an update, so over the next few weeks I'll be talking about particles, and more than that, we'll be creating a missile trail while not using any of the built in ramps. It will be all expressions. Kill two birds with one stone I guess.
01 August 2011
Blogs?
Ok wow, I was totally going to post shit here, and be, you know helpful. Wow, 6 months later and I think I have two posts? I give those guys that take time to do this real Kudos man. After working with 3D software for 8-9 hours a day and then coming home only to work with it again to write up some tutorial... Yeah... or I'm unmotivated and lazy. That could be it too.
So lets see... what to say. I'm learning python/pyMel. That's a start. I guess, I'm suppose to be learning pythonQt, whatever that is. But I think just learning anything is important right now. Picking up Maya 2012, for no explicable reason. I mean there's a lot of new features, but it's not that new. I need to start cracking on Houdini again. I wonder if it will run on my new MacBook Air? Probably not. I need a new mouse for my desktop, the middle click is mushy and is annoying. Also, it's apparent that I need a different video card for 3D apps. My ATI 6800 doesn't cut it. So Quadro 4000 it is. Now, I know where my money is going...
Anyway, useful tips... That's what this was all about. Actually, I need to write up a tutorial on flamethowers. Maybe I'll do that this weekend, or I'll be in Vegas.
So lets see... what to say. I'm learning python/pyMel. That's a start. I guess, I'm suppose to be learning pythonQt, whatever that is. But I think just learning anything is important right now. Picking up Maya 2012, for no explicable reason. I mean there's a lot of new features, but it's not that new. I need to start cracking on Houdini again. I wonder if it will run on my new MacBook Air? Probably not. I need a new mouse for my desktop, the middle click is mushy and is annoying. Also, it's apparent that I need a different video card for 3D apps. My ATI 6800 doesn't cut it. So Quadro 4000 it is. Now, I know where my money is going...
Anyway, useful tips... That's what this was all about. Actually, I need to write up a tutorial on flamethowers. Maybe I'll do that this weekend, or I'll be in Vegas.
03 April 2011
2D Fire with Smoke
So I wanted to do a video tutorial on tips and tricks about maya fluid fire. It was going to be awesome, but I couldn't get the video capture software working. I was going to show you how to make this:
But alas it is not so.
If you are learning fluids I would suggest starting out in 2D. 2D boxes are much faster to sim and it's much easier to see what the parameters are doing. Once you understand the 2D fluids then taking it to 3D is just adding another dimension.Well at least, that's the simple way of saying it.
But alas it is not so.
If you are learning fluids I would suggest starting out in 2D. 2D boxes are much faster to sim and it's much easier to see what the parameters are doing. Once you understand the 2D fluids then taking it to 3D is just adding another dimension.Well at least, that's the simple way of saying it.
27 March 2011
Fluid Explosion Buoyancy
So explosions are fun. And it's something that everyone wants to start doing right when they start maya fluids. So let me share a tip that I've been using.
One of the most difficult things about fluids is getting them to move quickly. Explosions have a strong force and movement for about 1-3 frames and then act like a normal mass of heat and smoke. The problem with fluids is that if you apply say a strong radial field or volume axis field with turbulence and away from center force. The fluid destabilizes and the simulation breaks. Or it's nearly impossible to slow the fluids back down to normal speeds. The former being the bigger issue. Granted, I'm also using maya 2009 and don't benefit from the improvements for 2011, like gradient force, auto resize, general stability improvements.
So here's some of my tricks: I tend to not use fields with fluids. The use of a field usually produces unnatural movement. And as you know a strong force will break the fluid entirely. I find much of the first 3-5 frames are working on shaping the explosion. That could mean placing a cluster of fluid emitters to create interesting shapes. Keying the scale of the fluid emitters. Start small, then in one frame go really big then cut it back down to size over the next couple frames. Use emission turbulence.
So that will get you the basic shape of the fluid but the more important part is timing. There are two things I use to accomplish that. The 1st is fluid simulation scale. I usually write and expression but you can also keyframe it. I usually smoothstep the fluid sim scale from a high value (like 5 or 6) to a lower value (like 2 or 1.5) during the 1st 5-6 frames. This causes the blast to react very fast and then slow out rather naturally. It's like using damp but better. The next big trick is buoyancy. I usually control how my explosions rise with heat. So my density values are used to determine how long my smoke will last and my heat values determine how long my blast will last and how far and quickly the smoke plume will rise. You can set your density buoyancy to something rather small. Like 0.1 or even -0.1. Then set your heat buoyancy to something high, like 10 or 20, with a dissipation to match, like 3-5. You heat buoyancy controls hot fast the explosion will rise, and the dissipation will control how far the explosion will rise.
So go ahead and try it out. I hope these tips can help you get a handle on how to control your fluids.
One of the most difficult things about fluids is getting them to move quickly. Explosions have a strong force and movement for about 1-3 frames and then act like a normal mass of heat and smoke. The problem with fluids is that if you apply say a strong radial field or volume axis field with turbulence and away from center force. The fluid destabilizes and the simulation breaks. Or it's nearly impossible to slow the fluids back down to normal speeds. The former being the bigger issue. Granted, I'm also using maya 2009 and don't benefit from the improvements for 2011, like gradient force, auto resize, general stability improvements.
So here's some of my tricks: I tend to not use fields with fluids. The use of a field usually produces unnatural movement. And as you know a strong force will break the fluid entirely. I find much of the first 3-5 frames are working on shaping the explosion. That could mean placing a cluster of fluid emitters to create interesting shapes. Keying the scale of the fluid emitters. Start small, then in one frame go really big then cut it back down to size over the next couple frames. Use emission turbulence.
So that will get you the basic shape of the fluid but the more important part is timing. There are two things I use to accomplish that. The 1st is fluid simulation scale. I usually write and expression but you can also keyframe it. I usually smoothstep the fluid sim scale from a high value (like 5 or 6) to a lower value (like 2 or 1.5) during the 1st 5-6 frames. This causes the blast to react very fast and then slow out rather naturally. It's like using damp but better. The next big trick is buoyancy. I usually control how my explosions rise with heat. So my density values are used to determine how long my smoke will last and my heat values determine how long my blast will last and how far and quickly the smoke plume will rise. You can set your density buoyancy to something rather small. Like 0.1 or even -0.1. Then set your heat buoyancy to something high, like 10 or 20, with a dissipation to match, like 3-5. You heat buoyancy controls hot fast the explosion will rise, and the dissipation will control how far the explosion will rise.
So go ahead and try it out. I hope these tips can help you get a handle on how to control your fluids.
01 February 2011
New Comp
It's been awhile. Funny how time flies. Got a new computer. It's a Falcon Northwest Talon series. It's a great machine. I would recommend their products wholeheartedly. But on to more important things. FX. I want to make up a little fire tutorial. But I think that may be too ambitious. Fire's not something that is simple to understand and even I don't have the complete mastery of it. However, I would like to give some easy how-to guides on fluids. There seems to be a lack of good information on them, or at least the information is hard to find. It's tedious to sift through pages of forum posts to find the one gem of wisdom contained within. But alas, I will try my best. So now that I have a new computer to run Maya on; fluids, sometime soon.
22 October 2010
Silly Questions
So if you've ever been on a forum like CG Talk or the Unofficial Realflow Forum. You'll notice these questions: "I'm new to Maya and am thinking of going into FX, I would like to start by making an explosion. How do you make this effect?" Or "I would like to make the effect of water forming into a shape. I'm new to realflow how should I make this?"
This is like saying, "Hi, I'm thinking of becoming a Doctor; I just bought a few knives. How do I preform brain surgery?" Now that sounds complete absurd, but it's essentially the same question, just in a different profession. It's the same reason to you should ask an artist to paint you a picture for free, or give you a great deal on web design. I don't ask my contractor friend for free remodeling. That's just common sense.
Don't be that guy.
This is like saying, "Hi, I'm thinking of becoming a Doctor; I just bought a few knives. How do I preform brain surgery?" Now that sounds complete absurd, but it's essentially the same question, just in a different profession. It's the same reason to you should ask an artist to paint you a picture for free, or give you a great deal on web design. I don't ask my contractor friend for free remodeling. That's just common sense.
Don't be that guy.
18 October 2010
Hidden Particle Attributes
So I want to tell you about some particle attributes that you may not know existed. Maya's help docs are lacking in this area. If you want to add a Per Particle Attr, you can look at the built in particle Attrs, like radius. You'll notice some collision attribute, but if you search for them in the documentation you won't find them. It's like autodesk forgot to mention them. Which so irritating since they are so useful. But I'd like to tell you about something that is even more secret. There are 2 attributes that don't appear on this list or in the docs. They are "ageNormalized" and "event". These two are special because not only are they undocumented; they don't even show up in a default particle! You have to force maya to create these attributes for you. So I'll tell what they do and how to make them.
First is ageNormalized. Most of you use this guy without knowing it, but you probably don't script him. Everytime you create a ramp and map it to age Maya actually creates and adds it to the ageNormalized attribute. This attribute shows how long a given particle will live in values between 0 and 1. A normalized age. It's useful any time you want to change something based on age. Like say radius.
The 2nd one is event. This one tells you how many times a particle has collided. So you can use it as a collision counter. You can use this to trigger expressions at specific collisions. To set it up you have to go in the particle menu and create a particle event. Then go ahead and delete the event. Now you have an "event" attribute.
First is ageNormalized. Most of you use this guy without knowing it, but you probably don't script him. Everytime you create a ramp and map it to age Maya actually creates and adds it to the ageNormalized attribute. This attribute shows how long a given particle will live in values between 0 and 1. A normalized age. It's useful any time you want to change something based on age. Like say radius.
The 2nd one is event. This one tells you how many times a particle has collided. So you can use it as a collision counter. You can use this to trigger expressions at specific collisions. To set it up you have to go in the particle menu and create a particle event. Then go ahead and delete the event. Now you have an "event" attribute.
16 October 2010
Noise
So I really need to let you in on a little tip. This is something that I found so amazingly helpful. So you made your sim. You're emitting particles or fluids or whatever; and it looks pretty good. But it's missing something. It just looks a little off or fake. It doesn't feel quite organic. Well, let me tell you about something that will help you solve that problem.
Do a little research, you'll see that everything moves. This might sound self-evident, but it's also important. I'll use fluids as an example, since I've been applying the technique most with them. Say your making a fire. (Yeah, I talk about fire a lot, I like fire; deal with it.) And you've got some nice turbulence and swirl and emission and all that good stuff, but there's something wrong with just playing with the sliders, finding something you like, and simulating. The sliders don't change. Think about it. In nature, fire burns from fuel, which is converted into heat. But the heat being converted is never constant. And the fuel being used up is never constant. It's always changing. Your fluid needs to replicate this behavior.
Enter expressions: These guys are life savers. Now you could keyframe all your attributes, but what you want is randomness, and managing keyframes is sooo incredibly tedious. So I'll teach you a little expression that will save you tons of time. This isn't a make awesome button, it's just a little tweaking that adds character to your already good sim. If you didn't guess from the title: Noise. This function is awesome. Think of it like a sin wave, but with randomness built into it. It's basically like mapping a noise texture to your attribute and animating it over time. The expression works like this:
fluidShape1.attr = currentValue + amountScalar * noise(time * frequencyScalar)
Now this formula might not make sense. Hopefully, you've taking some math classes in college. Really, this is just preCalc level stuff so don't be too scared. Anyway it works like this: Noise generates a wave-like curve. Time tells us where to look on the noise function. The frequencyScalar is a float value that compresses the noise function. Or in layman's terms: makes it go faster. The amountScalar tells you how much you want the noise to effect your attribute. A value of zero means it will do nothing. A value of 1 means it will change your attribute by a range of -1 to 1. The currentValue is the value you want your attribute to be centered on. Here's a diagram of the noise function (or more accurately a sin function but it works the same way):
So here's what it might look like on an attribute:
fluidEmitterShape.heatEmission = 2 + 0.3 * noise(time*10);
So I want my temperature to emit at about 2 and vary by 0.3. So my values for temperature emission will be between 1.7 and 2.3. The noise function will change based on time given in seconds. So at 12 frames, time = 0.5. And time is then multiplied by 10 to speed it up.
So I hope I've explained this well enough. So now you have a new mel function to call and how and where you can use it.
Do a little research, you'll see that everything moves. This might sound self-evident, but it's also important. I'll use fluids as an example, since I've been applying the technique most with them. Say your making a fire. (Yeah, I talk about fire a lot, I like fire; deal with it.) And you've got some nice turbulence and swirl and emission and all that good stuff, but there's something wrong with just playing with the sliders, finding something you like, and simulating. The sliders don't change. Think about it. In nature, fire burns from fuel, which is converted into heat. But the heat being converted is never constant. And the fuel being used up is never constant. It's always changing. Your fluid needs to replicate this behavior.
Enter expressions: These guys are life savers. Now you could keyframe all your attributes, but what you want is randomness, and managing keyframes is sooo incredibly tedious. So I'll teach you a little expression that will save you tons of time. This isn't a make awesome button, it's just a little tweaking that adds character to your already good sim. If you didn't guess from the title: Noise. This function is awesome. Think of it like a sin wave, but with randomness built into it. It's basically like mapping a noise texture to your attribute and animating it over time. The expression works like this:
fluidShape1.attr = currentValue + amountScalar * noise(time * frequencyScalar)
Now this formula might not make sense. Hopefully, you've taking some math classes in college. Really, this is just preCalc level stuff so don't be too scared. Anyway it works like this: Noise generates a wave-like curve. Time tells us where to look on the noise function. The frequencyScalar is a float value that compresses the noise function. Or in layman's terms: makes it go faster. The amountScalar tells you how much you want the noise to effect your attribute. A value of zero means it will do nothing. A value of 1 means it will change your attribute by a range of -1 to 1. The currentValue is the value you want your attribute to be centered on. Here's a diagram of the noise function (or more accurately a sin function but it works the same way):
So here's what it might look like on an attribute:
fluidEmitterShape.heatEmission = 2 + 0.3 * noise(time*10);
So I want my temperature to emit at about 2 and vary by 0.3. So my values for temperature emission will be between 1.7 and 2.3. The noise function will change based on time given in seconds. So at 12 frames, time = 0.5. And time is then multiplied by 10 to speed it up.
So I hope I've explained this well enough. So now you have a new mel function to call and how and where you can use it.
14 October 2010
Fast to track to becoming a better FX artist
So, I know learning FX can be pretty tough. No one really teaches it and there usually little to no documentation. Add to that it's hard to have a good eye for what you are trying to create. But I do have a tip for giving yourself more technical skills. CG Talk. Now this sounds kinda weird but stay with me for a bit. Most people go to CG Talk with their problems. Like "how do I make fire?" Or "maya crashed what do I do?" Which by the way, don't post those questions, they're annoying and show that you haven't done any ground work and want someone to just hold you hand and feed you the answer. Which is not how art works. But there is a much better way to use the forums. Look for posts where people ask legitimate questions or have some problems with their setups and instead of thinking, "Oh, no one has an answer, I'll just move on." Go and find an answer for them. It's not for them, it's for you. Just digging around will teach you so much. I can't tell you how many tricks I've added to my skill set just by looking at some guys crazy weird problem. They may not help you right now, but any knowledge here is good. And if you can't fix the problem the very least you can do is recreate it. Life's not going to hand you a magic skill set when you get out of college. No on in born an artist, you have to work at it. Anyway, thought I would share some exercises that I do with you.
05 October 2010
Windy fluids
So those of you that are new to fluids and fire in particular my have noticed this odd behavior of fluids. If you turn the boundaries of your fluid box off and run the sim your fluid will fall over like it's be pushed by a wind force. Like so:
This might seem really strange and it is. But it's pretty easy to fix. Under the dynamic simulation tap, you'll see a damp slider. Give it a value of something like 0.01. This stabilizes your sim. So now your fire won't be blown over by some crazy non-existent wind storm.
This might seem really strange and it is. But it's pretty easy to fix. Under the dynamic simulation tap, you'll see a damp slider. Give it a value of something like 0.01. This stabilizes your sim. So now your fire won't be blown over by some crazy non-existent wind storm.
31 August 2010
New Job
Well, I got a job a Nickelodeon. This is exciting. LA here I come. Going to be working on a show called Robot and Monster. Going to be driving down next week, get settled and then I start. This will be awesome.
17 August 2010
Nickelodeon Test Completed
I finished my test for Nickelodeon. It was fun and amazing. I've never worked with an FX rig before. They really hyped it up like this would be something that would be nearly impossible to finish. I completed all aspects of it as best I could and even add some feature of my own. The feature I added was the functionality to have the geometry land on any surface. From what I saw of their videos, the particle instance had preset rest positions and only worked when they landed on a flat surface. I came up with a way to orient the instance to land on any surface and complex geometry. This gives the rig a much greater flexibility. This was a by product of figuring out how to make the instance ease in to it's resting pose, which proved to be the really difficult part of the exercise. I first went out using a preset position that the instance rotated into, but this seemed pretty unnatural. Zach mentioned that it would be better to find the instance orientation and then rotate that into a predefined vector. He then showed me how he would go about doing that with geometry. It seemed like a workable idea so I adapted it for use with particles. It works almost perfectly with flat surfaces and is pretty darn close with complex surfaces. The premise is that you know your rotation vector. This must be turned into a point relative to a origin. Then you find the axis to rotate said point into a predefined vector, in this case the collision normal. Using the "angle between" command in mel you can get the axis, angle, and euler values of your rotation. Which tells you how far you have to rotate your object to get from where you are to where you want to be. The only thing that would make this effect better is to query the velocity at impact and make sure that the instance always rotates in the direction of the velocity.
At any rate I hope they love what I like what I've done and are impressed with my skills.
At any rate I hope they love what I like what I've done and are impressed with my skills.
11 August 2010
Nickelodeon Test
So my explosion is still rendering. But more importantly I got a call from Nickelodeon and I'm working on an FX test. It's a debris rig with nParticles. Fun times. Very technical with lots of mel scripting. This will be fun. Have a week to work on it and I have most of it down in the 1st day. It's been a really fun challenge so far.
Subscribe to:
Posts (Atom)





