<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.0.11" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>nullpointer</title>
	<link>http://www.nullpointer.co.uk/content</link>
	<description>games / code / art / audio</description>
	<pubDate>Tue, 31 Aug 2010 13:37:41 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.11</generator>
	<language>en</language>
			<item>
		<title>Finding the right world</title>
		<link>http://www.nullpointer.co.uk/content/?p=384</link>
		<comments>http://www.nullpointer.co.uk/content/?p=384#comments</comments>
		<pubDate>Tue, 31 Aug 2010 13:35:01 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Image</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=384</guid>
		<description><![CDATA[Over the summer i have been experimenting with the design of different world structures for an interactive game based on generative/emergent systems. I&#8217;ve basically implemented three different spacial formats, exploring different aspects of scale/dimension and extendability. Unfortunately, at present none of the systems seems to fulfil the requirements I have for a base structural format. [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/content/wp-content/uploads/2010/08/spin.jpg" width= 200 align=left>Over the summer i have been experimenting with the design of different world structures for an interactive game based on generative/emergent systems. I&#8217;ve basically implemented three different spacial formats, exploring different aspects of scale/dimension and extendability. Unfortunately, at present none of the systems seems to fulfil the requirements I have for a base structural format. Below is a brief description and analysis of the three versions. The basic procedural generation functions that produce the individual land forms are generally shared from one version to the next, with only slight alterations to account for the specific spatial format. (Click the images for larger versions.)</p>
<p><strong>FORMAT 1: heightmap islands</strong></p>
<p><a href="/images/island1.jpg" target="_blank"><img src="/images/island1.jpg" alt="island 1" / width=240></a><a href="/images/island2.jpg" target="_blank"><img src="/images/island2.jpg" alt="island 2" / width=240></a></p>
<p>As seen in the previous post, I have implemented a more or less traditional island terrain system based on heightmap generation and brute force grid rendering.<br />
<strong>Pros:</strong> The procedural routines for generating landscape types are really nice and im also happy with the painterly rendering technique. The format provides an easy underlying structure for the distribution of growth substrates (water, heat etc). The environment is familiar and acessible. 2D processing structure accounts for greated complexity in the actual mechanics due to the simpler processing.<br />
<strong>Cons:</strong> The essentially 2d format (only terrain surface) is limiting. The basis of an island terrain might be too traditional and unremarkable. The choice of environment already implies or even dictates specific evolutionary style and structures (flora fauna etc).</p>
<p><strong>FORMAT 2: floating structures</strong></p>
<p><a href="/images/island3.jpg" target="_blank"><img src="/images/island3.jpg" alt="island 3" / width= 240></a><a href="/images/island4.jpg" target="_blank"><img src="/images/island4.jpg" alt="island 4" / width= 240></a></p>
<p>Essentially this is an extension of the island generation mechanic but into a 3d dimensional space. Similar procedural construction routines are used, but the resulting objects are free floating &#8216;island-like&#8217; forms. The structure can account for less rocky like objects (in fact i included a library of parametric surfaces).<br />
<strong>Pros:</strong> More interesting space in terms of extra dimensions, visually more unusual. Interesting to navigate.<br />
<strong>Cons:</strong> Harder to process (more calculations), harder to navigate. Designed more around display of structural forms than mechanics of further generative processing. Echoes of a psychedelic aesthetic.</p>
<p><strong>FORMAT 3: 2d spinworld</strong></p>
<p><a href="/content/wp-content/uploads/2010/08/spin.jpg" target="_blank"><img src="/content/wp-content/uploads/2010/08/spin.jpg" width= 240 height=150></a><a href="/content/wp-content/uploads/2010/08/spin2.jpg" target="_blank"><img src="/content/wp-content/uploads/2010/08/spin2.jpg" width= 240 height=150></a></p>
<p>This format is basically a 2d side-on platformer style world that is wrapped around a circle to form a seamless radial space. The world is generated using more variations of procedural texture functions and a smart edge finding routine.<br />
<strong>Pros:</strong> Easy to navigate, acessible to wide range of users, generally easier to process (2d grid), nice sense of a coherant closed system.<br />
<strong>Cons:</strong> The choice of environment already implies or even dictates specific evolutionary style and structures (flora fauna etc). The 2d aspect is limiting, gravity and verticality imposes quite a strict formula on behaviour already. Potentially looks too &#8216;game-like&#8217;</p>
<p>None of these 3 structural approahces quite fits with the intentions of the project. So what exactly are the criteria for asessment? Its hard to define exactly what the format needs to provide for, but the following list is a basic outline of what needs to be supported.</p>
<p><strong>Requirements &#038; Considerations:</strong></p>
<p>Wide range of variation in terms of possible structural energence<br />
Not too literal in representation as to bind emergence to specific formats<br />
Visually representative of complexity and potentiality<br />
Realtime dynamism and interaction within this context</p>
<p>One issue is that for most people to engage with any simulated space, it needs to be wrapped in a fiction of some sort. The more familiar the fiction is, the easier it is to accept. Conversely the more familiar the fiction is, the more dictatorial it becomes about controlling the outcome of the experience and the format of emergence.</p>
<p>Another issue is one of scale. The range of possibilities must be wide enough to transmit the notion of multiplicity but not so great as to paralyse the experience. A real life example would be when I was explaining beach pebbles to my son. He couldn&#8217;t really understand the timescale of rock formation into erosion into pebble smoothing over millions of years. However a smoothed fragment of glass on the same beach was much easier to relate to as he could understand the timescale of its development and the original material was something he had experienced in other forms.</p>
<p>Perhaps the main issue in the formats listed above is their adherence to pre-existing natural environments. It may be worthwhile attempting to generate another style of structural format that is inherently more minimal/abstract and therefore expandable to a wider expressive range.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=384</wfw:commentRss>
		</item>
		<item>
		<title>Procedural terrain types</title>
		<link>http://www.nullpointer.co.uk/content/?p=374</link>
		<comments>http://www.nullpointer.co.uk/content/?p=374#comments</comments>
		<pubDate>Sat, 17 Jul 2010 12:57:19 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Text</category>

		<category>Image</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=374</guid>
		<description><![CDATA[As part of my current research I have been examining different techniques for world generation. The traditional approach to heightmap creation consists of using procedural texture functions to build a greyscale map that is then used to make the vertex mesh. Common functions are octaved perlin noise, midpoint displacement, voronoi maps, fault displacements and circle [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/research/scapesm.jpg" align=left>As part of my current research I have been examining different techniques for world generation. The traditional approach to heightmap creation consists of using procedural texture functions to build a greyscale map that is then used to make the vertex mesh. Common functions are octaved perlin noise, midpoint displacement, voronoi maps, fault displacements and circle splatting. While these functions create interesting looking 2d textures and detailed 3d models (see terragen etc), the terrain they produce is often impractical for games. It also relies on a fine grain of mesh to relate to the detail of the individual forms. A single mountain-type form may require a 50&#215;50 pixel area to realise all its detail. On a small terrain grid for a game (128 or 256 per side) these features take up a substantial amount of the land area.</p>
<p>Ideally more features could be fitted into a similar area, increasing both the variety and the range of features within a smaller space. Although it is possible to filter the results of the above functions to reduce the detail scale I found it more sucessful to write a set of new small-scale procedural feature generators. These functions can produce a wide range of terrain mimetic (and abstract) forms within a smaller scale of area. Of course within a smaller resolution the blocks of the mesh can become more obvious. To offset this problem I developed a routine that attaches an uneven edge to each slope (by means of an alpha cut-out texture). This softens the hard lines of chunky mesh forms and lends the imagery a more painterly look. Below is a short list of terrain type generators I have currently implemented.</p>
<p>Ramps<br />
<A href="http://www.nullpointer.co.uk/content/wp-content/uploads/2010/07/ramps.jpg" target=_new><img src="http://www.nullpointer.co.uk/content/wp-content/uploads/2010/07/ramps.jpg" width=500></a><br />
Aztec<br />
<A href="/content/wp-content/uploads/2010/07/aztec.jpg" target=_new><img src="/content/wp-content/uploads/2010/07/aztec.jpg" width=500></a><br />
Lumps<br />
<A href="/content/wp-content/uploads/2010/07/lumps.jpg" target=_new><img src="/content/wp-content/uploads/2010/07/lumps.jpg" width=500></a><br />
Pinnacles<br />
<A href="/content/wp-content/uploads/2010/07/pinnacles.jpg" target=_new><img src="/content/wp-content/uploads/2010/07/pinnacles.jpg" width=500></a><br />
Causeways<br />
<A href="/content/wp-content/uploads/2010/07/causeways.jpg" target=_new><img src="/content/wp-content/uploads/2010/07/causeways.jpg" width=500></a><br />
Terraces<br />
<A href="/content/wp-content/uploads/2010/07/ice.jpg" target=_new><img src="/content/wp-content/uploads/2010/07/ice.jpg" width=500></a><br />
Shelfs<br />
<A href="/content/wp-content/uploads/2010/07/shelf.jpg" target=_new><img src="/content/wp-content/uploads/2010/07/shelf.jpg" width=500></a><br />
Canyons<br />
<A href="/content/wp-content/uploads/2010/07/cliffs.jpg" target=_new><img src="/content/wp-content/uploads/2010/07/cliffs.jpg" width=500></a></p>
<p>The intention of creating the form geeration functions above is partly to avoid the homogenous effect that is common with fractal terrain techniques. Often the quality &#038; feature forms of a fractal terrain looks almost identical at every scale and at ny position.  The above functions are designed to be both generative but functionally distinct. The next element of my terrain generation involves the production of a region map which dictates where across a larger landscape specific feature functions should be used. This region map is produced with a coarse voronoi function which creates a &#8216;crazy paving&#8217; set of individual regions. The different terrain types are then mixed into a larger landscape with this region map used as a mask. More details on this procedure in a future post.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=374</wfw:commentRss>
		</item>
		<item>
		<title>Flutter</title>
		<link>http://www.nullpointer.co.uk/content/?p=372</link>
		<comments>http://www.nullpointer.co.uk/content/?p=372#comments</comments>
		<pubDate>Tue, 29 Jun 2010 13:20:50 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Image</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=372</guid>
		<description><![CDATA[In a continuation of my Butterflies workshop I teamed up with Lovebytes to produce a region-wide butterfly design project. I updated the software to keep track of over 1400 butterflies that were created in 13 school workshops across South Yorkshire. Laura Mundy and Janet Jennings ran the workshops, producing a vast database of butterflies that [...]]]></description>
			<content:encoded><![CDATA[<p><img width="150" align="left" src="/images/butthumb.jpg" />In a continuation of my <a href="http://www.nullpointer.co.uk/content/?p=350">Butterflies workshop</a> I teamed up with <a href="http://2010.lovebytes.org.uk/event.php?ref=1019">Lovebytes </a>to produce a region-wide butterfly design project. I updated the software to keep track of over 1400 butterflies that were created in 13 school workshops across South Yorkshire. Laura Mundy and Janet Jennings ran the workshops, producing a vast database of butterflies that were brought to life on data porjectors during the workshops and then stored for later, each tagged with a unique code.<br />
<P><br />
The children were given a QR code sticker to attach to their butterfly. After all the workshops had been completed where was an exhibition at the Millenium Galleries in Sheffield where children could bring their butterflies back to life in the installation by scanning in their code with a camera setup in the gallery. Click an number range below to see the butterflies themselves, photos and videos beneath.<br />
<table border=0 cellspacing=0 cellpadding=0><TR><br />
<TD align=center><a href="/flutter/sheet0.htm" target="_new">1-300</a></td>
<p><TD align=center><a href="/flutter/sheet1.htm" target="_new">301-600</a></td>
<p><TD align=center><a href="/flutter/sheet2.htm" target="_new">601-900</a>&nbsp;</td>
<p><TD align=center><a href="/flutter/sheet3.htm" target="_new">901-1200</a>&nbsp;</td>
<p><TD align=center><a href="/flutter/sheet4.htm" target="_new">1201-1432</a>&nbsp;&nbsp;</td>
</td>
</tr>
<p><TR><TD align=center><xa href="/flutter/sheet0.htm" target="_new"><img width="80" src="/images/smfly.jpg" border=0/></a></td>
<p><TD align=center><xa href="/flutter/sheet1.htm" target="_new"><img width="90" src="/images/smfly.jpg" hspace=0 border=0></a></td>
<p><TD align=center><xa href="/flutter/sheet2.htm" target="_new"><img width="90" src="/images/smfly.jpg" hspace=0 border=0></a></td>
<p><TD align=center><xa href="/flutter/sheet3.htm" target="_new"><img width="90" src="/images/smfly.jpg" hspace=0 border=0></a></td>
<p><TD align=center><xa href="/flutter/sheet4.htm" target="_new"><img width="90" src="/images/smfly.jpg" hspace=0 border=0></a></td>
</tr>
</table>
<p><P><br />
QR code stickers<br />
<img src="/images/qr.jpg" /></p>
<p>Millenium Galleries workshop 1<br />
<img src="/images/flutterwork.jpg" /></p>
<p>Millenium Galleries workshop 2<br />
<img src="/images/flutterwork2.jpg" /></p>
<p>Butterflies on screen<br />
<img src="/images/buttercap1.jpg" /></p>
<p>Find yours!<br />
<img src="/images/butter2.jpg" /></p>
<p>Catch &#8216;em if you can<br />
<img src="/images/butter1.jpg" /></p>
<p>Video Extract<br />
<object width="500" height=375>
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=5189909&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=5189909;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height=375></embed></object>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=372</wfw:commentRss>
		</item>
		<item>
		<title>Avsynth</title>
		<link>http://www.nullpointer.co.uk/content/?p=371</link>
		<comments>http://www.nullpointer.co.uk/content/?p=371#comments</comments>
		<pubDate>Thu, 27 May 2010 09:30:12 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Sound</category>

		<category>Image</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=371</guid>
		<description><![CDATA[To accompany the installation of avseq at phoenix square I was invited to do a performance in the cinema lounge. I took this as an opportunity to try out a new peice of work I had been trinkering with for a while. My generative audio sets have traditionally been written and run as PD patches, [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/avsythsmall.jpg" align=left>To accompany the installation of avseq at phoenix square I was invited to do a performance in the cinema lounge. I took this as an opportunity to try out a new peice of work I had been trinkering with for a while. My generative audio sets have traditionally been written and run as PD patches, and generally accompanied with direct triggered visuals. This means the visual elements are generated in tandem with the generative sequence data that creates the audio track. This is opposed to a lot of visualizing processes that use an fft/winamp style post composition interpretation. I find that realtime triggering is more rewarding in terms of av sync and you can reflect the generativity &#038; realtime controller values (fx ,sequence settings etc) in a way you cant with fft. </p>
<p>For the gig i decided to extend this process into a cinematic theme by writing an additional application (in OF,C++) that picks up OSC messages from my PD patches and uses the data to display and manipulate film clips. The PD app directs the audio fragment of the clip while the OF app processes the video. The 2 are synced through the generative scoring patch, both in terms of playing clips but also in terms of processing them. A bitcrusher audio effect is mirrored by a video pixel crusher, a low pass filter is mirrored by a RGB level control and audio delays partnered with a color seperation (and offset) video effect. The PD effects are all coded &#8216;in patch&#8217; whereas the OF video effects utilise freeframegl plugin architecture (via an ofxaddon). </p>
<p>The initial set i did consists of 4,5 collections of clips (16 for each collection) from specific films or youtube. The performance is half generative and half user driven, any effects changes instantly visible/audible in realtime. For the performance at Phoenix square I kept the rhytmical structures fairly metronomic to focus on the a/v process and exploit the natural pacing of the clips etc. I also designed the layout around a 4&#215;4 (16) grid to keep within my current investigation of 16bit beat/byte structures. The next phase is to include more complex sequencing elements and extra av controls for the video app. The cross application control for the gig was done via a local network using OSC and a custom message set that allows clip loading, playback, fx, captioning, positioning etc.</p>
<p>The audience really seemed to enjoy the direct relationships between sound an image, coupled with the creative use of dv artefact style decay and audio glitches as a mechanism to expose the system and exploit the realtime generation of av sequences.</p>
<p>Screenshot of the PD controller app (click to enlarge)<br />
<a href="http://www.nullpointer.co.uk/test.gif" target="_blank"><img src="http://www.nullpointer.co.uk/test.gif" width=500></a></p>
<p>YouTube clips example (visit my vimeo for more)<br />
<object width="500" height=375>
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=11736674&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=11736674;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height=375></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=371</wfw:commentRss>
		</item>
		<item>
		<title>Avseq</title>
		<link>http://www.nullpointer.co.uk/content/?p=370</link>
		<comments>http://www.nullpointer.co.uk/content/?p=370#comments</comments>
		<pubDate>Mon, 12 Apr 2010 20:07:59 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Sound</category>

		<category>Image</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=370</guid>
		<description><![CDATA[Avseq is now showing at Phoenix Square in Leicester. This is an installation version of a game I have been working on for a while now. The short description reads as follows.
&#8220;Avseq is an interactive installation that takes the form of an abstract computer game. The player must capture and link sound objects together into [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/avthumb.jpg" align="left">Avseq is now showing at <a href="http://phoenix.org.uk/index.php?cms_id=286">Phoenix Square</a> in Leicester. This is an installation version of a game I have been working on for a while now. The short description reads as follows.</p>
<p><em>&#8220;Avseq is an interactive installation that takes the form of an abstract computer game. The player must capture and link sound objects together into a sequence of‘atomic’ chains. When released, these structures detonate, activating changes in the audio-visual output of the game.<br />
The gaming environment responds dynamically to the developing audio track, producing flowing patterns and abstract forms. In this exchange, complex patterns are rewarded with access to more detailed stages, or ‘levels’, and enhanced audio effects. There is no endpoint, just an evolving structure of light and sound, which without user input will inevitably decay back into empty silence.&#8221;</em></p>
<p>Avseq is an experimental game and a/v environment. It explores the use of generative procedures, structural emergence and entropy in order to present an interactive and evolving game-like experience.  There will be a more detailed analysis of its development and performance as part of my research. This post is an overview of the application and some accompanying media bites.</p>
<p><img src="/images/avseq-installation1.jpg"><br />
<BR><br />
<img src="/images/avseq-installation2.jpg"></p>
<p>Click the thumbnails below for larger images</p>
<p><a href="/images/avimg/avimg1.jpg"><img src="/images/avimg/avimg1sm.jpg"></a><a href="/images/avimg/avimg3.jpg"><img src="/images/avimg/avimg3sm.jpg"></a><a href="/images/avimg/avimg4.jpg"><img src="/images/avimg/avimg4sm.jpg"></a><a href="/images/avimg/avimg5.jpg"><img src="/images/avimg/avimg5sm.jpg"></a><a href="/images/avimg/avimg6.jpg"><img src="/images/avimg/avimg6sm.jpg"></a><a href="/images/avimg/avimg7.jpg"><img src="/images/avimg/avimg7sm.jpg"></a></p>
<p><object width="500" height=375>
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=10522409&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=10522409;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height=375></embed></object></p>
<p>Several videos of other &#8216;levels&#8217; are available on my <a href="http://vimeo.com/user1356993/videos/sort:date">vimeo</a> stream.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=370</wfw:commentRss>
		</item>
		<item>
		<title>Perfect Score</title>
		<link>http://www.nullpointer.co.uk/content/?p=369</link>
		<comments>http://www.nullpointer.co.uk/content/?p=369#comments</comments>
		<pubDate>Wed, 03 Feb 2010 22:14:10 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Text</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=369</guid>
		<description><![CDATA[I recently asked a question on the shmups forum, how many games have a &#8216;perfect score&#8217;. I was referring of course to shmups, but the question could apply to many games. Snooker has a perfect score, 147 achieved by potting all 15 reds with 15 blacks for 120 points then all six colours for a [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/lockthumb.jpg" align="left">I recently asked a question on the <a href="http://shmups.system11.org/viewtopic.php?f=1&#038;t=29728" target=_new>shmups forum</a>, how many games have a &#8216;perfect score&#8217;. I was referring of course to shmups, but the question could apply to many games. Snooker has a perfect score, 147 achieved by potting all 15 reds with 15 blacks for 120 points then all six colours for a further 27 points. Darts has a perfect score, or rather a perfect set of throws to meet the 501 target. Most contemporary videogames have usually done away with scoring altogether in the attempt to broaden both audience and game experience. This is fine, but even within mainstream games the reappearance of score-boards in the form of console/steam acheivements and rankings has led to a resurgance of gamers playing for score again. Anyway, in score based games there is usually a potentially perfect score, ie performing all score rewarding actions possible (killing, collecting, time bonuses etc). Usually the perfect score may only be a theoretical one, impossible unless performed by cpu or programmable peripheral. It is interesting therefore, how games designers measure and divide their scoring mechanics, and how they deal with the idea of perfect scores. </p>
<p>Once a player has got the best score in a game/level/stage, there seems little incentive to replay that experience. Some people might do so, out of love for the game or some sort of showmanship, but on the whole it effectively ends the challenge of the game/level etc. In most game genres, this occurance is usually of secondary importance to the player, who strives for a narrative denouement of some sort or just the satisfaction of a credits screen. In shmups (and other &#8216;hardcore&#8217; genres) the score IS the game, winning is scoring. So how to define a scoring system that both provides a sense of progression and potential max score, whilst also allowing some room for personal expression to result in eeking out a marginal lead over other runs.<br />
<BR><br />
<img src="/images/ika.jpg" ><br />
<BR><br />
Ikaruga has 3 main score mechanics: the alternating 3 colour chain mechanic, the boss timer bonus and the bullet eating mechanic. The first is essentially fixed, there is a maximum potential strategy to produce the best score, many expert players will plan, study and share routes until these optimum paths are well known. The second mechanic is slightly more variable, since the time taken to kill a boss reflects more on the players technique and positioning (which may also be compromisd by other bullet eating strategies). The final mechanic is again slightly variable. Players are rewared by asbsorbing same polarity bullets, so positioning and timing is essential in order to maximise the &#8216;catching&#8217; of enemy bullets. The first mechanic has an obvious maximum, the other two, less so, but I am not sure if their is any randomness in terms of the number/rate of enemy bullets fired. If not then there is also a perfect solution for bullet eating. Of course the actual skill involved in acheiving these 3 maxmimums together (and in a balance that produces an overall max) is beyond human players. But it is the possiblity space of those potential extra points that keeps many players hooked.</p>
<p>I am writing a shmup as part of some research and also part of my own desire to visualise these ideas and engage with the mechanics. In my scoring system a player can shoot enemy craft to &#8216;capture&#8217; them, these targets are then held by a cable to the player ship. The player can capture up to six targets at once and when releasing the chain is rewarded with gratuitous explosions and points. The risk reward balance is that while enemies are held in a chain they still behave as normal, firing at the player and obstructing the play field. The longer they are held, the more danger they pose.<br />
<BR><br />
<img src="/images/lock1.jpg" ><br />
<BR><br />
The scoring increases exponentially for each additional item in the chain: 1-item=1pt, 2-items=4pts, 3-items=9pts &#8230;. 6-items=36pts. Obviously holding a full chain of six reaps significantly more score (216) than six individual locks (6pts). The levels are designed with the total enemy population divisible by 6, so there is a potential number of 6(max) chains acheivable across a stage. This also means there is a perfect score for each level and for the game in total.</p>
<p>Now I am unsure as to whether to leave the mechanic there. With this system there is an obvious target, something concrete to aspire to. It might not be easy to achieve as the chains require stragetic planning and dexterity to catch, but it is fixed. I have other options to extend the score space..<br />
<BR><br />
<img src="/images/lock2.jpg" ><br />
<BR><br />
Bonus score is awarded for &#8216;hold time&#8217; ie how long the player risks a chain before detonation. Is perfectly possible to grab 6(max) and then hang on to them until the last minute you need to switch to a new chain. This hang time could be rewarded. Similarly I could count score as a constant tick, measured by how many you have in a current chain, this way the incentive would be to get chains up to 6 as fast as possible and hold for as long as possible.<br />
<BR><br />
<img src="/images/lock3.jpg" ><br />
<BR><br />
There are other variations, but one thing ive noticed is that if i introduce hold time as a score modifier the stages can end up feeling slow and empty, since you may well spend seconds just locked on, waiting for the next wave. I want the game to be able to be played by scorers and casual players, so blasting through with just 1 lock at a time reduces the risk (less active enemies, less bullets) but also empties the screen if its specifically designed for long holds. At the moment Im tempted to fix on the simple 6 chain mechanic and introduce enough interesting wave combinations and strategic tricks to keep the idea challenging while also proposing a perfect score. Perhaps with a clearer target players will feel its more worthwhile perfecting their runs.</p>
<p>This all may seem fairly miniscule in terms of general game design, but in the context of certain genres and modes of performance I think it actually makes the difference between a &#8217;shallow&#8217; and a &#8216;deep&#8217; game experience.</p>
<p>Now for some clips, the sound is not recorded properly since i had the wrong input selected and some of the graphics/models are still placeholders etc.</p>
<p><object width="500" height=375>
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=9192417&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=9192417;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height=375></embed></object></p>
<p>Above: demo run of first few waves trying for max(6)chains - 3384 score at end</p>
<p><object width="500" height=375>
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=9192650&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=9192650;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height=375></embed></object></p>
<p>Above: demo run of first few waves not trying for chains - 692 score at end</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=369</wfw:commentRss>
		</item>
		<item>
		<title>Performative grammar</title>
		<link>http://www.nullpointer.co.uk/content/?p=366</link>
		<comments>http://www.nullpointer.co.uk/content/?p=366#comments</comments>
		<pubDate>Tue, 29 Dec 2009 20:28:33 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Text</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=366</guid>
		<description><![CDATA[Well, I have finally managed to find the appropriate academic context for my continual research interest in gaming. Over the next three (yes I am going to try!) years I will be studying for a practice based phd in the area of digital games as a performative framework. Just to outline a little more of [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/muji_sketchbook.jpg" alt="null" align=left width=150 />Well, I have finally managed to find the appropriate academic context for my continual research interest in gaming. Over the next three (yes I am going to try!) years I will be studying for a practice based phd in the area of digital games as a performative framework. Just to outline a little more of what this might mean I&#8217;m pasting a small extract of some of my preparatory writing. Im not sure if I will expand theis blog to keep track of my notes, or move that part of my work elsewhere, but I am expecting much more of my own practice to be diverted into tackling the issues that arise from my research.</p>
<p><strong>Digital Media: Performativity in Creative Practices</strong><br />
<em>Can gameplay mechanics reintroduce virtuosity, risk and competition to digital media performance?</em></p>
<p>Judith Butler identifies performativity as the   “&#8230; reiterative power of discourse to produce the phenomena that it regulates and constrains.” This definition suggests an underlying vocabulary of rules and structures that contain and guide interaction. Although this definition was primarily developed in relationship to social control theories of linguistics we can easily translate the core concepts to other areas of language/rule based interaction.</p>
<p>Digital media is a practice area clearly driven by programmatic grammar, derived  from the software code and technology that forms its foundation. Users, practitioners and audiences experience this framework as a performative interaction with the exposed user interface of a digital system. The specific forms of grammar available to the user in this context dictate the range of expression and feedback that can be created or experienced.</p>
<p>Despite the range of applications, public perception of digital media is that is presents a limited, sterile vocabulary. Symptomatic complaints include; a loss of physicality, alienation, little scope for virtuosity and a narrow expressive range. “These machines teach them nothing. They stimulate no ratiocination, discovery or feat of memory” Boris Johnson 2007. Digital games, although much maligned by the press, are a notable exception to this rule in that they frequently establish fluid access to engaging contexts for participants to demonstrate mastery, creativity, competition and expressive range. They represent possibly the most widespread  performative digital experience in contemporary culture.
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=366</wfw:commentRss>
		</item>
		<item>
		<title>Not a Bad World, Is It?</title>
		<link>http://www.nullpointer.co.uk/content/?p=365</link>
		<comments>http://www.nullpointer.co.uk/content/?p=365#comments</comments>
		<pubDate>Tue, 29 Dec 2009 20:01:34 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Image</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=365</guid>
		<description><![CDATA[ Artists Daniel Waillis and Davina Drummond develop community art projects for cultural institutions like Tate and southbank centre. Not a Bad World, Is It? was a collaboration with 20 young people from north, south, east and west London to make a new piece of artwork to be projected on to the side of The [...]]]></description>
			<content:encoded><![CDATA[<p><img src= "/images/seensm.jpg" align=left> Artists Daniel Waillis and Davina Drummond develop community art projects for cultural institutions like Tate and southbank centre. <em>Not a Bad World, Is It?</em> was a collaboration with 20 young people from north, south, east and west London to make a new piece of artwork to be projected on to the side of The Royal Festival Hall. The artists invited viewers to contribute to the film by asking them to ‘describe the most beautiful thing you have ever seen’ via a text message. These statements then appeared as text live in the projected artwork. For this event I was commissioned to produce  a custom software solution that would allow SMS subtitling of video segments for realtime projection . The video files used were a sequence of prerecorded segments that were already subtitled, alternated with 15 or so &#8216;empty&#8217; films that would be subtitled live, with content being pulled from an SMS feed. </p>
<p>I produced a videoplayer in OpenFrameworks with a simple scheduler and subtitling feature. The predetermined segments of video were recordings of couples chatting on a bench by the Thames, the resulting conversations had been transcribed and built into th esubtitles for those sections. The alternating sections were of the same bench, but filmed unoccupied, the subtitling system I produced for these drew the text from an sms system and formatted/displayed them dynamically. I used my friend Andy Wilsons <a href="www.thumbprintcity.com">www.thumbprintcity.com</a> system to collate the text messages and then a custom text import system to filter out the offensive stuff. </p>
<p><img src= "/images/seen.jpg"> </p>
<p>Although the event took place in some pretty freezing weather and we had to project from what was basically a ventilation shaft everything worked out great. The transitions were seamless and the live subtitling appeared identical to the predefined text. The question posed to prompt the public sms was &#8220;Have you seen something beautiful?&#8221; some of the resultant texts were genuinely moving and the contrast of the empty benches and live texts was intriguing. I could see a lot of possibilities for this sort of system in other applications and at various events. It would be nice to repurpose it at some point.
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=365</wfw:commentRss>
		</item>
		<item>
		<title>Shadow spring worms</title>
		<link>http://www.nullpointer.co.uk/content/?p=364</link>
		<comments>http://www.nullpointer.co.uk/content/?p=364#comments</comments>
		<pubDate>Sat, 05 Dec 2009 20:27:53 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Image</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=364</guid>
		<description><![CDATA[I&#8217;ve been playing with coding my own simple spring/chain type physics for a game idea. My application generates a series of &#8216;genetically grown&#8217; insect-wormlike creatures that then swim around exhibiting nice elastic spring type animation. The structure of their &#8216;bones&#8217; is similar to the 3d skeleton builder i wrote, using a bilateral spine model in [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/worms.jpg" align=left>I&#8217;ve been playing with coding my own simple spring/chain type physics for a game idea. My application generates a series of &#8216;genetically grown&#8217; insect-wormlike creatures that then swim around exhibiting nice elastic spring type animation. The structure of their &#8216;bones&#8217; is similar to the 3d skeleton builder i wrote, using a bilateral spine model in a dawkins biomorph sort of way. There are some physical limitations to how the limbs can grow and the rigidity of the bones is also influenced by their location in the skeleton. The idea would be to allow the player the ability to crossbreed and selectively evolve the creatures who will also have various behavioural patterns based on the nodes that make up their structures. How this interaction would take place is still unclear, but I am really happy with the way the creatures form and move so far.</p>
<p><object width="500" height=375>
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=7593023&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=7593023;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height=375></embed></object>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=364</wfw:commentRss>
		</item>
		<item>
		<title>Life of Brian</title>
		<link>http://www.nullpointer.co.uk/content/?p=363</link>
		<comments>http://www.nullpointer.co.uk/content/?p=363#comments</comments>
		<pubDate>Sat, 05 Dec 2009 20:16:01 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=363</guid>
		<description><![CDATA[A year or so ago I wrote a game in C++/OpenGL as part of a little prototyping experiment we ran in the 8453 collective. My entry was a greyscale pixel-art platform puzzler. The gameplay was sort of a cross between chu chu rocket and lemmings. The general flow and interaction was really quite fun and [...]]]></description>
			<content:encoded><![CDATA[<p><img align="left" src="/images/brian.jpg" />A year or so ago I wrote a game in C++/OpenGL as part of a little prototyping experiment we ran in the 8453 collective. My entry was a greyscale pixel-art platform puzzler. The gameplay was sort of a cross between chu chu rocket and lemmings. The general flow and interaction was really quite fun and the editor was almost as fun as the game itself. However it looked pretty bad&#8230;. My friend Alison helped me out immensely by drawing some beautiful pixel art for the characters and world. We got the project nearly finished and then sort of lost steam and gave up. During the summer Alison has been learning iphone dev and wanted to see if the game (Brian) could work on the device. Shes done a brilliant job at making it work for the small screen and it still exudes the super cute pixel art that shes so good at. Anyway it&#8217;s now available on the itunes appstore <a href="http://bit.ly/robobrian ">http://bit.ly/robobrian</a> for a measily 59p. So now I&#8217;m half jealous that I didnt code it myself, but so impressed at the way she has transformed it into a &#8216;proper&#8217; game!. Go check it out so she can make more pixel people come alive..
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=363</wfw:commentRss>
		</item>
		<item>
		<title>Generative animation</title>
		<link>http://www.nullpointer.co.uk/content/?p=361</link>
		<comments>http://www.nullpointer.co.uk/content/?p=361#comments</comments>
		<pubDate>Tue, 20 Oct 2009 18:51:59 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Image</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=361</guid>
		<description><![CDATA[I have recently been working with Southbank Centre London, in collboration with Bernadette Roberts and Gaia Nova to produce large scale generative animations for their multiprojector screen setup in the festival hall. I wrote an interactive animation program using C++/openframeworks that would generate a large range of minimalist and hypnotic animations using simple geometric forms [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/screenplay.jpg" width=150 align=left>I have recently been working with Southbank Centre London, in collboration with Bernadette Roberts and Gaia Nova to produce large scale generative animations for their multiprojector screen setup in the festival hall. I wrote an interactive animation program using C++/openframeworks that would generate a large range of minimalist and hypnotic animations using simple geometric forms and colors. I designed the system to run live, with scheduled events triggering the software to animate to specific states for film playback or text display. In this way it was hoped that the system could be flexible enough to respond to quick scheduling changes and adaptable to a variety of events. </p>
<p>Unfortunately the final av/projector system chosen did not support this level of dynamic programming. As with many vj-style systems the software provided is geared towards playback of pre-rendered material rather than realtime graphics. This meant that for the initial phase all animation sequencers and events were rendered to file before playback.</p>
<p>Although the flexibility of the system was not enough to support the dynamic elements of my programming the actual animation work was rewarding in its own right and the output resolution of 4096&#215;768 gives the projections a bold and almost physical impact.</p>
<p><img src="/images/screenplay.jpg" width=500 ><br />
production shot during install (more images to follow)</p>
<p>An example of one the animation sequences (the small resolution doesnt do it justice!)</p>
[See post to watch QuickTime movie]
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=361</wfw:commentRss>
		</item>
		<item>
		<title>Thinking games archive</title>
		<link>http://www.nullpointer.co.uk/content/?p=362</link>
		<comments>http://www.nullpointer.co.uk/content/?p=362#comments</comments>
		<pubDate>Tue, 20 Oct 2009 18:40:53 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Text</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=362</guid>
		<description><![CDATA[I thought it would be useful to compile a short list of texts I wrote for my &#8220;Thinking games&#8221; blog. These peices were produced as part of the output of my independent research supported by the Huddersfield DRU ( a joint venture between the University and The media centre). Unfortunately, during the consolidation of several [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.nullpointer.co.uk/images/muji_sketchbook.jpg" align="left" width=150 alt="" />I thought it would be useful to compile a short list of texts I wrote for my &#8220;Thinking games&#8221; blog. These peices were produced as part of the output of my independent research supported by the Huddersfield DRU ( a joint venture between the University and The media centre). Unfortunately, during the consolidation of several blogs they became a little subsumed, so I&#8217;m making this post to collect some of the the longer ones together in a single place. I always intended these notes to be a starting point for more in-depth writings, but I have since been waylaid repeatedly by installations, teaching and programming. Perhaps I will be able to revist some of these topics for more serious investigation in the future.</p>
<p><a href="http://www.nullpointer.co.uk/content/?p=186">Exploring</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=160">Identity Theft</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=155">MMO Skinner Box</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=153">Own Goal(s)</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=151">Rules and Realism</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=145">Instant replay/1 hit wonder</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=114">Pattern Recognition</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=111">Class and Balance</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=108">Realism is no fun</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=111">Class and Balance</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=162">Revelations</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=176">Why aren&#8217;t games hard any more?</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=173">Lost in transition</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=107">5 is company 40 is a crowd</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=105">Virtual Preservation</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=103">Making new ground</a><br />
<a href="http://www.nullpointer.co.uk/content/?p=72">Simulation and Goals</a></p>
<p>Of course most of these are available just via the <a href="http://www.nullpointer.co.uk/content/?cat=15">text tag</a>. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=362</wfw:commentRss>
		</item>
		<item>
		<title>Untitled Application - Leeds Expo</title>
		<link>http://www.nullpointer.co.uk/content/?p=360</link>
		<comments>http://www.nullpointer.co.uk/content/?p=360#comments</comments>
		<pubDate>Sun, 27 Sep 2009 20:12:10 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Sound</category>

		<category>Image</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=360</guid>
		<description><![CDATA[Untitled Application is an interactive sound peice comissioned by MAAP and SAM for the Leeds Expo. Its an open air work hosted on one of the BBCs &#8216;big screens&#8217;, a range of large outdoor LCD displays in major cities of the UK. The peice itself was produced for the LEEDs Expo, a festival of sound [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/expothumb.jpg" width=200 align=left>Untitled Application is an interactive sound peice comissioned by MAAP and <a href="http://www.soundandmusic.org/">SAM</a> for the <a href="http://leeds.expofestival.org/">Leeds Expo</a>. Its an open air work hosted on one of the BBCs &#8216;big screens&#8217;, a range of large outdoor LCD displays in major cities of the UK. The peice itself was produced for the LEEDs Expo, a festival of sound art.</p>
<p>The work is a two part application. The visual part is written in C++ using openframeworks and opencv. It takes a council CCTV camera as a video feed and performs a series of motion tracking, blob detection functions on the input. Audience movement is used to trigger simple graphic elements on the screen which are superimposed on the camera image. People can generate interactive patterns through their physical movement across the city square.</p>
<p>The second phase of the system is a synthesis engine written in PD (puredata) which communicates via OSC to the C++ application. When a person triggers an animation in a particular area of the screen a message is sent to the synthesis app which plays an apporpriate tone. The notes are selected from three sets of harmonic scales and underpinned by a phased/droning 4 note sitar stye chord. The notes themselves alter pitch and timbre depending on the players behaviour and the generative variables in the synthesis system. Each of the three tonal sets rlates to a specific graphic style in the visuals. </p>
<p>It&#8217;s been great to see people playing with the peice and working out how to draw/compose with bikes, buggies, wheelchairs, skateboards and even spacehoppers.</p>
<p>Below are a few selected images/video from the process. Yet again, my poor documenting skills lead to me poaching other peoples recordingsof my own work! I am hoping to get some better material shortly.</p>
<p><img src="/images/expodance.jpg"><br />
<img src="/images/expodance2.jpg"></p>
<p><object width="500" height=375>
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=6466771&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=6466771;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height=375></embed></object><br />
Prototyping with some jazz hands and a thousand yard stare.</p>
<p><object width="500" height=375>
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=6782757&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=6782757;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height=375></embed></object></p>
<p>Compilation clip from setting up and live action. (The sound isn&#8217;t great on this camera)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=360</wfw:commentRss>
		</item>
		<item>
		<title>Telling Tales</title>
		<link>http://www.nullpointer.co.uk/content/?p=359</link>
		<comments>http://www.nullpointer.co.uk/content/?p=359#comments</comments>
		<pubDate>Tue, 18 Aug 2009 14:51:20 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=359</guid>
		<description><![CDATA[Another quick commercial break. In the last few months I&#8217;ve been working along with odessadesign on a microsite for the V&#038;A museum for their current exhibition Telling Tales. We were really pleased to be chosen (up against some good competition) and we managed to incorporate some intriguing navigation ideas and a fun interactive exquisite corpse [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/tt1.jpg" align=left>Another quick commercial break. In the last few months I&#8217;ve been working along with <a href="http://www.odessadesign.co.uk">odessadesign</a> on a microsite for the V&#038;A museum for their current exhibition <a href="http://www.vam.ac.uk/microsites/telling-tales/">Telling Tales</a>. We were really pleased to be chosen (up against some good competition) and we managed to incorporate some intriguing navigation ideas and a fun interactive exquisite corpse game.</p>
<p>To provide navigation for the three main exhibition areas we designed a flash movie that used parallax scrolling and camera techniques to create a 3D stage-set environment that the user could explore. Objects from the exhibition lie hidden in the scene and bring up the relevelent details when clicked. A shortcut to autonavigate to each object was also provided via a toolbar of object outlines. Subtle animations and audio ensured that the atmosphere of these elements matched the eerie and fantastical nature of the show itself.<br />
&nbsp;<br />
<img src="/images/ttf.jpg" align=left><br />
&nbsp;<br />
<img src="/images/ttc.jpg" align=left><br />
&nbsp;<br />
<img src="/images/tth.jpg" align=left><br />
&nbsp;<br />
In addition to the main site design we also produced an <A href="http://www.vam.ac.uk/microsites/telling-tales/bookwriter">interactive game</a> where users can add books to a growing library of stories. Each book can have its pages written by a visitor online in a digital version of the old exquisite corpse game. Even though the choice of words and images available is small people have already created some strangley haunting verses.
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=359</wfw:commentRss>
		</item>
		<item>
		<title>Entropy, performance and gameplay</title>
		<link>http://www.nullpointer.co.uk/content/?p=358</link>
		<comments>http://www.nullpointer.co.uk/content/?p=358#comments</comments>
		<pubDate>Wed, 05 Aug 2009 10:13:51 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Text</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=358</guid>
		<description><![CDATA[This post contains some brief notes that I have nowhere else to keep for the time being. They will hopefully form part of a longer research idea.
What is entropy?
Noun
1. Formal lack of pattern or organization
&#8220;entropy increases as matter and energy in the universe degrade to an ultimate state of inert uniformity&#8221;

As referenced by the scientific [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/entropy.gif" align=left>This post contains some brief notes that I have nowhere else to keep for the time being. They will hopefully form part of a longer research idea.</p>
<p>What is entropy?</p>
<p><strong>Noun</strong><br />
<em>1. Formal lack of pattern or organization<br />
&#8220;entropy increases as matter and energy in the universe degrade to an ultimate state of inert uniformity&#8221;<br />
</em><br />
As referenced by the scientific laws of thermodynamics entropy is the reduction of matter and energy to non-complex forms with no structure or relationships. Where many chemical and biological processes attempt to combine primal constituents into more diverse and unique forms the ultimate breakdown of all matter into &#8220;heat noise&#8221; constatly counteracts these developments.<br />
<a href="http://en.wikipedia.org/wiki/Heat_death_of_the_universe">http://en.wikipedia.org/wiki/Heat_death_of_the_universe</a></p>
<p>In other fields we can see this battle between structure and disorder referred to as the &#8220;signal to noise&#8221; relationship.</p>
<p>Other definitions help us to expand the application of this idea<br />
<em>2. A measure of the disorder or randomness in a closed system.<br />
3. A measure of the loss of information in a transmitted message.<br />
4. The tendency for all matter and energy in the universe to evolve toward a state of inert uniformity.<br />
5. Inevitable and steady deterioration of a system or society.</em></p>
<p>This polar struggle exists in every scale of life, from cosmic chemistry to everyday human activity. Now with our increasing reliance on computer systems and complex data we see entropic elements emerging in what we hoped should be pure formal machines. <a href="http://en.wikipedia.org/wiki/Bit_rot">http://en.wikipedia.org/wiki/Bit_rot</a></p>
<p>How do we embrace or resist the inevitable entropy of any complex system? Most human activity is concerned with creating structure to contain and manage chaotic variables. We have an innate desire to organise the mental and material stuff around us, but entropy is always against us, slowly shifting matter to its most simplistic forms without order or life.</p>
<p>When we see entropy revealed, either as glitches, errors, bit rot or mistranslation our instinct is to &#8216;cure&#8217; the ailment and restore order. Yet the frequent recurrance of such noise in our &#8216;pure&#8217; systems has become a sort of cipher or &#8216;memento mori&#8217; reminding us of the way natural disorder can penetrate even the most unnatural digital languages. In some cases such errors are adopted as fetishes for &#8216;in the know&#8217; designers,artists or musicians. These acolytes revel in the discovery of entropic events so they can embrace their effects and even prompt them with deliberate artificial methods.</p>
<p>Where we see this interplay most clearly today is in the realtime acts of performance and gameplay. Here the struggle is always immenent as the timescale is almost always unstoppable. In these scenarios the signal is always in danger of being subsumed by noise. In audio performance the physical materials always threaten to fall victim to some wayward natural process or physical imperfection. Using digital tools makes the occurance no less likely, electricity is fickle and disk sectors corruptable. Virtuosos often enjoy this borderland of control/uncontrol, using it to take the composition in new unpredicted directions or letting it generate a sense of tension and abandon.</p>
<p>Games use this battle as an underlying framework for all activity. They do this, knowing that the margin between signal and noise, chaos and order are where the thrill lies. The best peformances are frequently the edgiest ones. Games promote this environment, accelerating entropy and disorder with artifical mechanics. Tetris, is essentially an entropic game where the player &#8216;tidies up&#8217;, fighting a ceasless and ultimately unbeatable wave of noise. </p>
<p>Most single player formats are designed with same perspective, in both digital and physical variation. Jigsaws, solitaire, sudoku, mah jong, puzzle bobble, bejewelled&#8230; all puzzle games driven by the need to discover and apply structure to initial states of chaos. More complex genres such as RTS &#038; SIM games still follow the same logic. In both cases your actions generally involve the generation of complex specific units from basic materials (wood,metals,currencies) in order to construct stable bases, economic setups, social organisations and strategic war plans. </p>
<p>The enjoyment of such tasks is innate in the human psyche. To survive and evolve we must put order to the world that surrounds us and eliminate the chaotic elements that threaten our progress. So we generate rules to follow. We know that by following certain patterns we can reinforce our structures, protect our organisations and rely on our defences. Historically the price of failure could be high but nowadays we simulate the adrenaline with artifical goals and virtual punishments.</p>
<p>Of course not all structural generation is laced with the threat of repercussions (fake or otherwise). Knitting is the art of pattern recognition and generation, but with little opposition (as is sudoku, jigsaws ..). There is no characterful opponent to throw noise into your signal. Historically though even such craft orientated activities would have faced opposition. Constructing a willow bivouac or building a stone shelter introduces more random elements in terms of the materials but if performed in the oncoming gloom of a thunderstorm the entropic opposition becomes stronger and with it comes the adrenaline, the excitement, the fear. It is this combined sense of consequences that drive the experience to become more &#8216;game-like&#8217;.</p>
<p>In simulations (computer games) the competition is artificial and the activity is playful not practical (but still practice). The opposition represented by a string of predefined rules and a degree of random variations and chance. Your progress as a player is judged by the degree to which you can impose your structure on the world. When expanded to a multiplayer scenario the effect remains the same except for the fact that you are not just opposed by internal game rules and entropic mechanics, but also by the progress of someone elses drive to impose their structure on the same space.</p>
<p>Performance in games and performance in music/acting etc broadly follow the same rules outlined above. The main difference being that in games opposition and entropy are deliberately introduced in order to drive forward the process at an accelerated rate and create a clear framework for engagement. Game mechanics can offer much to performance and composition by supercharging the natural entropic elements that often give them the edge. The embodiment of an opposing force and the sense that the event could be &#8216;won&#8217; or &#8216;lost&#8217; can do much to involve audiences as well as performers.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=358</wfw:commentRss>
		</item>
		<item>
		<title>Commercial Break: Glue</title>
		<link>http://www.nullpointer.co.uk/content/?p=356</link>
		<comments>http://www.nullpointer.co.uk/content/?p=356#comments</comments>
		<pubDate>Thu, 09 Jul 2009 14:02:26 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=356</guid>
		<description><![CDATA[I am generaly not a huge fan of scripting languages. I tend to view everything except C/++ as window dressing that isn&#8217;t &#8216;hardcore&#8217; enough. While I&#8217;m aware that this is a ridiculous stance I just can&#8217;t help myself scoffing when a new API emerges with some custom scripting language attached that allows us to send [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/photobooth.jpg" align=left>I am generaly not a huge fan of scripting languages. I tend to view everything except C/++ as window dressing that isn&#8217;t &#8216;hardcore&#8217; enough. While I&#8217;m aware that this is a ridiculous stance I just can&#8217;t help myself scoffing when a new API emerges with some custom scripting language attached that allows us to send OSC messages from ubuntu installed on a jailbroken toaster to a bluetooth enabled clown. However, in a recent spate of commercial work I have been forced to employ a significant amount of these application glue techniques and secretly quite enjoyed it.</p>
<p>I was commissioned by the South Bank to produce a photobooth setup that would allow users to take snaps of themselves and have those images uploaded to a flickr account in real-time. This was a sort of follow up to an installation peice I worked on for them the previous christmas. The basic setup was a C++ application based on OpenFrameworks code. This app took a high quality webcam feed and allowed users to snapshot themselves (with a count-in). The app also showed the last 4 photos that had been taken. All the snapshots were named with an appropriate datestamp and placed in relative folders. Then came the glue&#8230;.</p>
<p>The best method to access the flickr api semed to be via scripting. I chose python since its ideal for gluing and bundles loads of nice xml parsing, url encoding ibraries etc. So I set up a python script to run in the background, checking the image dump folder every minute or so. If it found any new images it would call up flickr, work out if it needed to make a new set or add to an existing one and finally upload the new images with tags, descritions etc. Of course, with this being a public installation It was likely to receive a real hammering and I needed some way to keep all the apps up and working. The solution? More glue.</p>
<p>I installed a cron scheduler that ran a process watcher every few minutes. If the key processes were absent it restarts them. Essentialy this deals with the inevitable crashes and keeps the system running. Of course to do this invisibly (on windows) I had to use a combination of batch scripting and windows scripting (VB) alongside the processwatcher and cron tabs. This watcher chain keeping an eye on my webcam/C++/python chain of applications too. This may not sound like an unusual collection of processes to some people, but I am more used to working with single application production, so for me it was like a veritable zoo of code swimming around. But as I said earlier, I actually really enjoyed the challenge of linking the systems together and juggling all the syntaxes. You can see the result at <a href="http://www.flickr.com/photos/southbankcentre/">http://www.flickr.com/photos/southbankcentre/</a> where it seems to be running fairly smoothly!</p>
<p>Im not ready to turn into a full time glue addict, but I can see how scripting systems made the development of this particular installation much smoother.
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=356</wfw:commentRss>
		</item>
		<item>
		<title>Drum machine draughts</title>
		<link>http://www.nullpointer.co.uk/content/?p=355</link>
		<comments>http://www.nullpointer.co.uk/content/?p=355#comments</comments>
		<pubDate>Wed, 17 Jun 2009 12:08:24 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Sound</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=355</guid>
		<description><![CDATA[I&#8217;ve always been interested in the relationship between gameplay and musical performance. Theres a remarkable structural similarity between certain game systems/mechanics and compositional ones. There is also a risk/reward/challenge aspect that is core to both practices. Anyway, for a short talk I took part in for the Leeds Evolution Festival I wrote a quick augmented [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/drumd.jpg" width=200 align=left>I&#8217;ve always been interested in the relationship between gameplay and musical performance. Theres a remarkable structural similarity between certain game systems/mechanics and compositional ones. There is also a risk/reward/challenge aspect that is core to both practices. Anyway, for a short talk I took part in for the Leeds Evolution Festival I wrote a quick augmented chess/draughts app. </p>
<p>The software (Openframeworks) I wrote keeps track of a matrix of grid points that are mapped to the grid cells of a chess board. The application then samples the color values of each point (via my hacked eyetoy cam) and reports back their position and rgb attribute. In this example 2 &#8216;watcher&#8217; values can be set by simply clicking the image to define a target color. These &#8216;watcher&#8217; triggers are called whenever the pixel sample point is within a specific deviation of the target value. The pixel sample points move in a traditional sequencer sweep across the board. </p>
<p>Of course 8&#215;8 is perfect for a basic score/drum machine sequencer (Connect 4 is my other challenge, but it has a more awkward time signature). The height of watcher A is mapped to a different sample in a standard drum machine sample bank. The height of watcher B is mapped to the pitch of a short bass-synth sound. Obviously in the video I am just composing with the peices to demonstrate the system. But you can of course play a proper game of draughts and the software sonifies the play-field in a way that you can hear who is winning &#038; losing. There are versions of the setup that use less rhythmic soundsets and create a more choral/textural result. It could even issue specific audio warnings when certain gameplay situations arrive or segue into different compositional style based on win/loss ratios etc. Theres a lot of potential for this system and I&#8217;m going to explore it further, perhaps as far as producing a less DIY setup so It can be used in a more robust way.</p>
<p>I originally wrote the app in MAX/MSP/Jitter and then ported to PD/GEM. But although both these systems are great for audio they don&#8217;t perform as well with video (not without convoluted patching). Openframeworks seemed the way to go (again!).</p>
<p><object width="500" height=375>
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=5199351&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=5199351;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height=375></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=355</wfw:commentRss>
		</item>
		<item>
		<title>less is more of a story</title>
		<link>http://www.nullpointer.co.uk/content/?p=352</link>
		<comments>http://www.nullpointer.co.uk/content/?p=352#comments</comments>
		<pubDate>Tue, 16 Jun 2009 21:34:31 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Text</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=352</guid>
		<description><![CDATA[I recently listened to Jon Blow&#8217;s montreal lecture on how narrative and gameplay generally contradict each others operation in videogames. As usual its an insightful and thought provoking talk, however it did make me question how much the definition of these two aspects could be flexed in order to improve their collaboration. It seems inevitable [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/fallout3.jpg" align="left">I recently listened to Jon Blow&#8217;s montreal lecture on how narrative and gameplay generally contradict each others operation in videogames. As usual its an insightful and thought provoking talk, however it did make me question how much the definition of these two aspects could be flexed in order to improve their collaboration. It seems inevitable that attempting to meld traditional narrative with a strict ludic progression is going to be difficult. As Blow hints, other forms of transmission can be used to project &#8217;story&#8217; that don&#8217;t rely on the historical approach of verbal storytelling. In fact, unless the game is reduced to a less interactive form (ie cutscenes, and yes MGS im looking at you!) traditional verbal style exposition is always going to suffer at the hands of the usual game interferences (user time control, replayability, skipping etc). A perfect example of these failings is demonstrated by Fallout3, a game I&#8217;ve been wading through with increasing pessimism.<br />
<P><br />
The world itself is fantastic, its abandoned hamlets and suspension bridge squats are detailed and atmospheric. There is a degree of lore and local color scattered in posters, photos, charred belongings and dumped vehicles. I was delighted by a sidequest involving entering a heavily mined village where I had to dispatch some lone sniper. In this case I felt that the sense of story was delivered by the environment itself. This wasn&#8217;t even marred by the fact that the only npc present was one I couldn&#8217;t converse with. In fact our lack of communication made the encounter more believable. My mind constructed the narrative drive of this opponent as expressed though the broken structure of the tower he was camped in.<br />
<P><br />
Compare this with the actual storyline&#8230; I have rarely come across more examples of how gameplay mechanics and narrative exposition ruin each other. Its the usual issues; I can try to stack 10 rifles on and around my in-game dad while he pours out his heart to me. I can ask him about my mother, shoot him in the head and then ask how his work is going without any impact. I can similarly shoot anyone he is talking to without any break in the autopilot discussion. At one point my &#8216;genius&#8217; father tells me about his advanced science project and then moments later is incapable of opening doors and jogs into a wall for several minutes. Aside from this the actual conversation trees are awful, full of stilted options and even a well constructed set of exchanges is ruined by the same dumb exit phrase.<br />
<P><br />
Fallout3 is hailed as a triumph by many critics, but to me its an outstanding example of how not to do narrative in games. My early enjoyment of exploring the world dissolved into depression when the main story decayed into a fairly linear badly plotted, badly delivered familiar narrative drone. Granted, the &#8216;growing up&#8217; introduction at the beginning of the game was a decent way to shell a tutorial section and did give some context, but it still felt like a tutorial.<br />
<P><br />
So what alternatives are there? At the risk of fanboyism I return to the ICO games as a guiding light of the &#8216;less is more&#8217; approach. The late J.G.Ballard frequently reflected his characters internal states via their external surroundings. In a similar fashion, ICO/SOTC use the game world as an extension of the game characters and their internal moods. The melancholic vistas act to instill the sensations of loss and exile that we identify with the games protagonists. There is a narrative cause and effect to your actions that develops throughout the games without direct exposition. Detail is perhaps abstract or sparse but it is so necessarily, allowing room for personal interpretation. This is perhaps just another way of telling a different type of story. Why should we assume that games are the best medium for every type of story. Even hollywood admits that many novels are essentially unfilmable, so we can imagine that games also have some restricted venn-like shared space with the total world of narrative.<br />
<P><br />
A different approach, one which subdues gameplay almost entirely for the sake of atmosphere and narrative is the HL2 mod Dear Esther. In this adaption the combination of fantastic voice acting, emotive soundtrack and atmospheric environment combine to create a story &#8216;experience&#8217;. It&#8217;s more akin to an on rails musuem ride, where fragments of story are whispered into your ear in a semi random progression as you explore the environs of a deserted island. Although the path is fairly linear, there is a reasonable sense of freedom, and the plot pace becomes your own walking speed (running is banned for atmospheric reasons). Even once you realise the format, the reward is still worth tracing through (unless of course you are only looking to pwn stuff). It&#8217;s not a game in a traditional sense, but as a format it suggests another way in which the two disciplines can coincide.<br />
<P><br />
Perhaps one of the problems is that people are too concerned with finding a solution, or providing everything in one single game context. I would never want to get a gaming twitch fix (a la tetris) directly combined with a multiplayer FPS and an epic RPG narrative all in the same bag. We can&#8217;t have it all, like balancing MMOs one element will always be buffed to the detriment of another.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=352</wfw:commentRss>
		</item>
		<item>
		<title>AudioPool</title>
		<link>http://www.nullpointer.co.uk/content/?p=354</link>
		<comments>http://www.nullpointer.co.uk/content/?p=354#comments</comments>
		<pubDate>Tue, 16 Jun 2009 14:52:04 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Works</category>

		<category>Sound</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=354</guid>
		<description><![CDATA[AudioPool is a project based around a selfsequencing pool of sounds and the representation of those sounds in 2d space. Although this is a fairly old project, Im slowly porting items over from my old website and i thought this deserved a copy. (dont ask if it fails to run, it was written on windowsME!)
The [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/-/images/audio2.gif" width=200 align=left>AudioPool is a project based around a selfsequencing pool of sounds and the representation of those sounds in 2d space. Although this is a fairly old project, Im slowly porting items over from my old website and i thought this deserved a copy. (dont ask if it fails to run, it was written on windowsME!)</p>
<p>The pool in question is the surface of the computer screen. Sounds are taken from a number of different sources: On-board compact discs, microphone inputs, internet queries. These sounds are then placed in a self-sequencing structure which defines attributes associated to the sound such as tempo, frequency, volume, pitch, samplerate, panning e.t.c. The captured sounds are then played according to the programs internal schedule, which itself is constantly modified.</p>
<p>As the sequence runs sounds will become old and be removed from the queue just as new sounds can be continuously integrated.</p>
<p>Each sound is represented on screen as a droplet, impacting on the pools surface, each impact creates a pattern of waves across the surface which will then interact and interfere with previous or adjacent waves, as in a real fluid environment. The resulting image has an almost canvas-like quality with the simulated water surface creating an artificial and self-reflexive plane that builds upon itself in a cacophany and then subsides into periods of silence.</p>
<p>The system can incorporate degrees of audio feedback to enable user participation in the peice or it can simply react to the ambient sounds around it. It is also capable of producing sequences with different parameters of musical structure; tonal ranges, tempo changes, slides and distortions. Download<br />
A beta version of this software is available.<br />
<a href="/-/files/AudioPoolb.zip">AudioPoolb.zip (2.6M)</a></p>
<p>(Please note: this software is still in development)</p>
<p>Requirements<br />
Platform:<br />
Win 95/98/2000<br />
NT may work but is unsupported</p>
<p>DirectX version 7 or above must be installed<br />
Visit http://www.microsoft.com/directx/<br />
Or just get any PC mag with DXinstall on the cover disk </p>
<p>Notes<br />
Run &#8220;launcher.exe&#8221; to launch AudioPool, The help menu can be launched by pressing F1. this panel allows you to specify different setup details. The internet soundsource option is currently disabled. When running from a soundcapture device (cd/microphone e.t.c.), you must specify a quality rate, the application will then use the default input device (see control panel->multimedia) to record samples. The recording window will create a buffer of approximately 4 samples before launching Audiopool.</p>
<p>I have noticed some momentary freezes on some machines when reading new audio files. This may be something to do with the application running in exclusive mode. The next version will have the option to run in a window. I anticipate there will be some issues with directx compatibility on different graphics card setups. I have had success with Riva TNT and ATI Rage series cards so far. </p>
<p><img src="/-/images/apool1.jpg"><br />
<BR><br />
<img src="/-/images/baudio1.gif"><br />
<img src="/-/images/baudio2.gif"></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=354</wfw:commentRss>
		</item>
		<item>
		<title>Pure Data Patches</title>
		<link>http://www.nullpointer.co.uk/content/?p=353</link>
		<comments>http://www.nullpointer.co.uk/content/?p=353#comments</comments>
		<pubDate>Tue, 16 Jun 2009 14:37:12 +0000</pubDate>
		<dc:creator>tom</dc:creator>
		
		<category>Sound</category>

		<guid isPermaLink="false">http://www.nullpointer.co.uk/content/?p=353</guid>
		<description><![CDATA[Pure Data is a modular dsp system by Miller Puckette.
See www.pure-data.org for more details
&#160; 
&#160; 
&#160; 
You must have PD to run any of these patches.
PD Drum machine
An 808 style drum machine.
Up to 10 user sample instruments, up to 200 bars.
drum-machine.zip (280k) with samples
PD Pulse Grain Generator
A pulsar like grain generator (single grain train) with [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/-/images/pd2.gif" width=200 align=left border=1>Pure Data is a modular dsp system by Miller Puckette.<br />
See <a href="http://www.pure-data.org" target="_blank">www.pure-data.org</a> for more details</p>
<p>&nbsp; <BR><br />
&nbsp; <BR><br />
&nbsp; <BR></p>
<p>You must have PD to run any of these patches.</p>
<p><B>PD Drum machine</b><br />
An 808 style drum machine.<br />
Up to 10 user sample instruments, up to 200 bars.<br />
<a href="/-/files/drum-machine.zip">drum-machine.zip</a> (280k) with samples</p>
<p><B>PD Pulse Grain Generator</b><br />
A pulsar like grain generator (single grain train) with automated/ controllable properties.<br />
Envelope size/shape, Grain spacing, Grain Pitch, Grain Pan.<br />
<a href="/-/files/pulse-grain-generator.zip">pulse-grain-generator.zip</a> (50k)</p>
<p><B>PD Example Semi-Generative tune</b><br />
A simple set of patches demonstrating simple generative composition techniques.<br />
For newbie users to check out and reverse engineer.(clocks,sequencing,synths e.t.c.)<br />
<a href="/-/files/pd-demo.zip">pd-demo.zip</a> (14k)</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </p>
<p>More to come&#8230;..<br />
<br /><img src="/-/images/pd1.gif" border=2><br />
<br /><img src="/-/images/pd2.gif" border=2><br />
<br /><img src="/-/images/pd3.gif" border=2>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nullpointer.co.uk/content/?feed=rss2&amp;p=353</wfw:commentRss>
		</item>
	</channel>
</rss>
