Archive for the ‘Hardware/Software’ Category

It’s been a while…

Tuesday, June 21st, 2011

Well it’s been a while since I’ve done a blog post, the last I wrote I was trying to keep a daily blog up and failed on the second day. I must say, blogging doesn’t come natural to me, but when I have lots of ideas to think about I need a repository to store these ideas, so it’s definitely something I need to get into…

I had the urge to write a post a few weeks ago regarding folio preparation, but didn’t get around to doing it. It’s definitely something I want to write about soon as I think it’s an important topic. A little update about what’s going on with myself… I’m working as a 3D and Multimedia tutor at Curtin University in Perth, Western Australia. Have been doing that for a couple of years and I’m settling in pretty well and enjoying the education aspect. Other than that, my freelance is just heating up. I have some decent size jobs going on and some sizzling clients and contacts that will definitely propel my business in the right direction. Enough about that!

The experiment

When working on a lot of work related things, it’s good to procrastinate sometimes to relax, and what better thing to procrastinate with than playing around with some 3D dynamics. Not particle, or cloth or anything like that. I’ve always wanted to play around with audio driven 3d animation, so I gave it a go on the weekend. This is my result:

As you can see, the line bounces to the audio track. It’s not perfect, but its a start, and a decent result for one days messing around. It’s actually a cool starting point and I can imagine what cool stuff I can animate to a wav file. Currently that’s just an extrude based on the value output from the audio file, mapped over time, but imagine using the output values for colour changes, other animation changes, particle emission changes etc.

How it’s done

It’s driven off the plugin downloadable off area.autodesk.com called ‘audiowave.mll’. Here’s the basic set-up…

  • Install the plug-in, import the audio file. Time to link everything up via MEL.
  • Create an audio node & attach the wav file to the node – note the file HAS to be a wav file not an mp3. Use the following code.
  • createNode audioWave;
    - This creates a node called audioWave1. It’s what you hook the wav file into. I just executed each MEL script after each line to make sure it was done correctly.
    connectAttr soundNode.filename audioWave1.audio;
    - Where ‘soundNode’ is the file name of the audio clip. You can find this out if you aren’t sure by right clicking on the timeline where the audio is placed, and hovering over the sound option. It should tell you the audio file reference name.
    connectAttr time1.outTime audioWave1.input;
    - This hooks the audio wave up to the timeline, so the value changes over time.

    From here you’ve hooked up the audio to the audioWave node, and also hooked it up to the timeline. What this will do is it will output various values ranging from 0-1 for the wave sign position in the timeline. You can now use this value to animate different elements of a model or texture. It’s the driver for the animation. For the animation you see above, I have animated the subcurve extrusion attribute. This is how it was hooked up:
    connectAttr audioWave1.output object.attribute;
    - Use whatever attribute you want to animate. If you are unsure of the attribute name specifically, you can right click on the attribute and go to create an expression, and nab the attribute name in that window. The only reason I did it this way is because I am pretty much clueless about MEL.

    The most noteworthy thing is, once you are happy with the animation produced from linking the attributes up, I noticed that you had to bake the keys for it to render in batch render. Not sure if this is supposed to be part of the process, but I found that this allowed it to be rendered. I noticed the bake only worked if the object baked was the one directly affecting the animation, so in this case the subcurve value.

    All that aside, you have now linked up the audio to a wave control node, and now hooked the wave results into an animated attribute. Another quick note is you can use nodes to amplify the results. For example, I hooked an audio clip up to the luminance value which isn’t easily seen, but the luminance value isn’t effective in casting light/shadows at low values which are output by the wave node (eg. 0.75 etc), so by putting a multiplier node and multiplying the value by 10 or 15, you get more of an effect.

    What’s the use of it?

    So as you can see, now you’re getting a result from the audio peaks/troughs, what’s animatable is only left to your imagination. My next thought was splitting audio waves into highs, mids and lows and animating different elements, such as colour, size, even particles. Set driven keys, anything you can think of. Could be useful for audio decoding and even initial mouth/character animation based off voice.

    The animation has LOTS to be refined on, such as motion blur etc, but the concept is there…

    I intend to tweak this and play with this a lot more in the near future with different animated elements, so hopefully I’ll keep this blog updated with progress.

    Home Renderfarm Research.

    Friday, April 3rd, 2009

    Now, i’m nowhere near a computer hardware nerd, but I know how to build a computer so i’m ready to tackle this task head on. I’ve done some research trying to build a system as cheap as I can from all new components (some being incredibly limited only to local sources) – I don’t mind spending the money as its all for work and is tax deductable… Anyway the plan is to build a custom case, network all the computers together in one box, and hopefully distribute jobs wirelessly… See how we go with that. Anyway I did some quick price checking on components to build a basic system… Here are some that I’ve decided to chase due to low costings.

    Intel Dual Core E1400 2.0G CPU – 2 cores 2.0Ghz = $69.00

    ASUS P5KPL-CM Motherboard – Max 4GB RAM = $89.00

    2048 DDR2 800 HYNIX Hyundai generic ram stick = $26.90 x 2 == $53.80

    Basic 400W Power Supply = $49.00

    160gb HDD Western Digital = $60.00

    TOTAL = $$320.80 for the core basics for the system. In summary, this is a Dual Core celeron 2ghz, 4gb 800 RAM system with on board graphics. I’m open to feedback on this rig, I have yet to do detailed research to see if it will all work together but I don’t see any problems as both the processor and motherboard chipset are LGA775. If I build this, depending on how many boards I can fit in a custom tower, I may range from 5 computer tower to potentially 10, so upwards of $3,200 for all of them, 5 = 10 cores 10ghz 20gb RAM, 10 is double that obviously…

    I’m in need of this setup to be able to be made instantly, so if you know anywhere thats cheaper and has stock and can express post while still being cheaper, i’m all ears. I’m in Perth, Western Australia so postage may be a killer – let me know!

    Off to research render distribution programs and linux setups to be used on each node…

    To google!!!

    - Jarrad