graphics

PhD Website Announcement » read article

posted by ian grant on July 29, 2010 at 6:26 pm | in announcement, creative code, digital puppetry, graphics, installation, performance, physical computing | 1 comment

After some time off blogging, I am back with an announcement of a major piece of ongoing work in the form of a PhD!

PhD Website

Link: http://www.daisyrust.com/phd/

PhD Title

Expressivity and the Digital Puppet:
Mechanical, Digital and Virtual Objects
in Games, Art and Performance

PhD Summary: The aims of the investigation

The current PhD study explores the interface between traditional puppetry and emerging computer technologies, through historical, theoretical enquiry, case studies and practical experiments. The thesis will evaluate and test with users (puppeteers, audiences, animators and programmers) the expressive qualities of innovative interactive systems.

shadows_and_surfaces_phd_poster_small_thumb.png

In this context ‘innovative’ means both emerging, new, technology or established technologies that are being re-defined by their communities of use and are finding new applications within the performing arts, particularly puppetry performance.

(1) I aim to explore the related contexts of digital puppetry, real-time animation, mimetic and non-mimetic kinetic objects, automata, ‘cybernetic sculpture’, performance systems and the technological interfaces to such phenomena.

(2) I aim to create evaluate and create puppet/object theatre performances/installations that use original software and hardware systems that are designed to explore ‘performance expressivity’, with reference to relevant historical, art, entertainment and technological precedents.

(3) I wish to theorise and form a taxonomy of ‘expressivity’ in relationship to digital domains and puppetry. By ‘expressivity’, I refer to different domains of action including: voice, face, body, hands and gesture.

Quartz Composer – Tiger Reflections Patch Version 2 » read article

posted by ian grant on February 13, 2007 at 10:59 pm | in graphics, moving image, quartz composer | 1 comment

Download: http://www.daisyrust.com/quartzcomposer/reflections_fxplug_V2.qtz.zip

A second version of my ‘tiger reflections patch’. Now with a simpler interface and Noise Industries ‘FXFactory’ ready!

Quartz Composerscreensnapz002

The patch is simplifed and slightly more reliable than the previous version. The generated image can now rotate without producing artifacts. The gradient setup is now automated. Less control but simpler. I have done this to create a test composition that works in ‘FXFactory’ – which is very simple to use. It really unlocks another realm for Quartz Composer developers.

Link: http://www.noiseindustries.com/fxfactory/

(more…)

Quartz Composer – Aqua Style Circle » read article

posted by ian grant on February 13, 2007 at 10:25 pm | in graphics, quartz composer | Comments Off

Download: aqua_style_circle_mask_001.zip

The patch does a simple thing of producing an ‘aquafied’ circle. I created this patch when I was exploring masks and how best to create a circle using the current Quartz Composer toolset. The patch contains some useful techniques working between pixels and Quartz Composer units. It is also an exercise in ‘pixel based positioning’. I am sure the visual effect can be improved upon, but I quite like the principle of instantly produced graphics using quartz composer. I followed several online tutorials for producing aqua styled graphics – then simplified the process. I reckon quite complex aqua graphics could be produced in this way, like widget graphical elements etc.

Quartz Composer Aquafied Circle

Some Issues

The accuracy of positioning of bottom gradient may need improving. Hence the ‘tweaks’
Better control over how the bottom gradient is generated. The rules seem to break down at smaller sizes. Fun though.

Quartz Composer – Iris Transition » read article

posted by ian grant on February 13, 2007 at 4:35 pm | in graphics, moving image, quartz composer | no comments

I’ve composed a patch that creates an iris transition. You can position it in x – y space, control the iris size and feather the edge of the mask.

Iris
Download Link: iris_quartz_composer.zip
Some Notes

The patch is quite simple to use. For a recent digital puppetry project, I connected the iris radius to a the output of a midi foot pedal so I could create scene transitions in real time. More of that elsewhere.

The patch demonstrates a number of useful ideas: pixel to unit conversion, creating a circle (using the hole distort patch), masks and the ‘source atop-in-out-wave-it-all-about’ patches.

Some Notes on Custom Patches, Hidden Patches and Core Image Units

My original patched originally used one of the hidden patches ‘CICheapBlur’ that you can enable by following instructions here.

See http://fdiv.net/2006/09/19/61-hidden-patches/

For the download here, I have replaced the ‘CICheapBlur’ patch with a gaussian blur – so there shouldn’t be errors if you do not have the ‘hidden’ patches activated. This effects performance slightly. With custom core image filters appearing in the QC patches pane, I am sure it is quite possible to distribute compositions that will not run on other people’s machines without the custom CI filter. There seem to be more useful custom patches appearing on the scene with a number of excellent ones from Boinx. I hope a useful installation mechanism can be constructed to distribute the pre-requiste elements for custom patches.

Link: http://www.boinx.com/chronicles/category/quartz-compositions/

Quartz Composer – Movie Time-line Thumbnail Viewer » read article

posted by ian grant on February 12, 2007 at 10:38 pm | in animation, graphics, moving image, quartz composer | 1 comment

Here’s a tool I have made that I use to create an instant sheet of thumbnails from a movie. I use it to analyze animations that I have digitised from my own video collection.

Download Link: movie_thumbnail_viewer_001.qtz.zip

It works in principle but there are a number of issues I’ll go into in a moment. It is an early version of an idea that could produce instant time-lines, retrospective after-the-fact storyboards, onion skinning and other video frame manipulations. I use it to visualize the flow and movement of time-based imagery and to produce illustrations for lectures. It is the kind of process that makes Quartz Composer a pleasure to use. To produce such a layout in Photoshop would take a good deal of preparation and layout work. I love the grid layout and the visual effects produced by this patch – as images in their own right.

Basic Operation

You set the path to a quicktime movie.
Make some basic choices about number of frames per row, number of rows (you need to enable / disable each row as needed)
Set the time interval / frame shift to jump on each row.

Movie Boop

Image (above): Frames demonstrating early pioneering rotoscoping from Dave Fleischer’s “Snow White” (1933) with Betty Boop and Cab Calloway (full copyright acknowledged).

Movie Thumbnail Viewer

Image (above): Sequences from Bill Plympton’s “Your Face” (1987) (full copyright acknowledged)

Some Issues

Here are some of the important issues that need to be improved:

  • Performance.

The patch runs slowly. I am sure you could do a similar thing programmatically with QTKit that would be much faster in the generation of the rows / thumbnails. I may even have a bug / design flaw where each row gets iterated more than once.

  • Manual Tweaking

It is always a design goal for me to have no manual tweaking necessary, for a composition to do it’s work with the minimum amount of set-up. This patch needs more work in this regard.

  • QC Bug – Some codecs produce unexpected results [bug submitted]

It seems some codecs (I forget which from my tests – I mentioned it on the qc-dev list) produce unexpected results. i.e. only two different thumbnails are generated and they then alternate across the sequence. Some sizing / aspect ratio issues of the thumbnails when the viewer is resized

I have fixed this issue on other similar patches I have made – but have yet to implement the fix here. This patch would benefit a rigorous going over. I’d love to hear from anyone who finds it useful.

Additional Details

Info Display

Useful Info Patch

Images (above): the optional ‘info’ panel and math patch. This part of the composition is interesting and the maths contained there-in could for the basis for a future improved implementation.

Main Patch

Image (above): The basic macro with most of the important published ports

tiger reflections – quartz composer patch » read article

posted by ian grant on February 10, 2006 at 9:14 am | in creative code, graphics, quartz composer | 2 comments

tiger reflections icon

Download: tiger_reflections.qtz.zip

A Quartz Composer patch that will automatically produce a cool, adjustable reflection from an image, text or video input. The style is familiar from Tiger applications, particularly “Front Row” and Keynote. It is a visual style echoed across Apple’s branding and is slightly cooler than a simple drop shadow.

Control Parameters

reflection parameters

Most are self explanatory but here are some notes:

Color: this controls the background, the ‘fade to color’ of the reflection gradient and the ‘fade to color’ of the block that fades the reflections
Gradient Point 1 and 2: This numbers control the falloff / distance of the reflection The numbers relate to the size of the image measured in pixels. To get recommendations on what values to use select Gradient Advice.

Currently the recommended values are calculated like so:

Gradient Point 1: image height (px) / 1.7
Gradient Point 2: image height (px) * 1.5

Gradient point 1 should be smaller then Gradient point 2. Gradient point 2 should be around the height of the image – but different effects can be achieved by varying it. Likewise, increasing Gradient point 1 from 0 increases the brightness of the first part of the reflection – creating a nice controllable reflection fall-off.

In a cocoa application the reflection gradient parameters could be more usefully mapped to a couple of sliders. If a simpler interface is needed, you could hard wire the ‘recommended’ values into the relevant inputs.

Gap: Makes a gap between the reflection and the image. This improves the illusion that the image is sitting on a surface.

To Do
- with a little effort the patch could be used in a cocoa application or, I think, converted to an image unit for use in other applications.

- thorough testing of how images with alpha channels work.

Key Quartz Composer Techniques
- mask and alpha manipulations.
- blending modes

(cc) ian grant some rights reserved