Hi All,
I finally feel that Blendgraph is ready for a public test. This is my first major script and has not been tested on a Mac or Linux. It also requires Blender 2.48a or better because I am using some of the new methods introduced in the Text object after 2.47.
If you get script errors, consult the console. I would think the most common error would be that Blendgraph can not find its own library. The library is included in the attached BLEND file and is a text object called “Blendgraph_LIB_v02”. Save this file in a folder that is in the PYTHONPATH and call it “BlendgraphLib_v02.py”
You should not experience this library failure error, however because I have written a detection mechanism that will look for the library and try to recreate it in the system path automatically. I have used OS independent path concatenation, so, Linux/Mac users, offer up some feedback if this does not work. It worked fine on one test under Windows.
The script examines a video texture and generates objects that vary in height, rotation and scale based upon information in the RGBA channels of the video. Kind of a mix between C4D Mograph and After Effects Card Dance. All animation is automatic except for the camera movement.
Because Blender does not support packing of image sequences, all I can give you is a single still image. But don’t stop there! Supply Blendgraph with an animated RGBA image sequence to see the objects change over time. I have found that quicktime RGBA movies do not work well with Blendgraph and I never tried an AVI file. You have been warned, just use image sequences.
Even a still image produces animated results. In the example file I have the alpha channel mapped to the z-scale of the Blendgraph units.
Blendgraph allows pixel information and LFOs (low frequency oscilators) to control the various parameters of all Blendgraph units.
The sample rates control how often the image is sampled in the X and Y direction. The included sample image is 64x64. The sample rate is 32x32 so every other pixel is considered as a candidate for producing a Blendgraph unit. Total possible units in this case is 1024. The pixel threshold sliders can reduce this number and filter out units based upon pixel values. Consult the console as you scrub for more detailed feedback about how many units are actually being generated, linked and unlinked from the scene on the fly.
The spread buttons allow you to control the spacing of the units in relationship to one another. To move the whole grid you can move the parent object. “bgObject”
Using an animated image map will cause the pixel information to change over time. Using the LFOs, values will change over time and you can map the LFO output to scale, rotation and position. To remove an LFOs or Pixel Channel influence over a parameter simply set it’s amplitude to zero.
In the example BLEND file, LFO3 is being used to animate the X,Y postion of the Blendgraph units. While LFO2 is used to rotate the Blendgraph units along the Z-Axis. LFO1 is adding a random amount of Z-Scale to the Blendgraph units.
Pixel mapped information is applied first and is absolute, after that LFO modification is applied and is cumulative.
In the supplied example BLEND file all units are tracking another camera that is moving along a path.
Standard Blendgraph units are generated from an internal Blender group. The objects in this group are located on another layer. These objects are cycled through, sequentially, as distribution occurs.
There is also a “Hero” object that you can link to a specific colored pixel in an image map. While the interface suggests that you can pick a color that is different than CYAN, this is not the case. This is a known bug and may be fixed in a later release. For now, simply use the CYAN color (RGB 0.0,1.0,1.0) to position the hero object.
ToDo:
Make the wiggle function work more like After Effects wiggle.
Allow color picking for Hero object.
I know this is a lot to read and take in, but after you get used to the concept, it is fun and easy to make a bunch of objects move all over the place.
I hope people try it out and I hope it works!
PS: I have added my official test driver PNG sequence to ShareCG.com.
Use this sequence with the attached BLEND file.
http://www.sharecg.com/v/31608/Texture/Blendgraph-Release-Driver
–>Original post.
Posting a link to my first encouraging output from the Blendgraph script.
http://www.vimeo.com/2318644
Attachments
Blendgraph_v02.blend (806 KB)