Service Design Boot Camp at GA

On Saturday 20 August I attended the Service Design Boot Camp workshop at General Assembly in Melbourne, which was pretty cool. I’ve been interested in the discipline for some time, exploring aspects of design process, prototyping, testing and iterating with Coursera’s Design: Creation of Artifacts in Society open online course online course, but I’ve never had the chance to embrace it fully face-to-face, until now. Awesome. On the promotional page for the workshop they said “This course is for anyone that has an interest in applying the design process to solve…

Build failed (Error from inside the Android tools)

I’m not alone. There are others who’ve experienced the same failed build as an Error from inside the Android tools, check the console with Processing 2.1? or an Android java issue. Some have solved the issue. I haven’t. Even the working through the processing android instructions and getting busy in the terminal to make it easier to examine the file system hasn’t resulted in a successful build.

Loading text files

Making my way through the Loading text files from the hard drive recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe, I learned how to use the loadStrings() function to load a text file from my hard drive into the String array. I also learned how to loop through the array in the draw() function and then use the number of characters in each line of text to calculate the diameter for the ellipse to be drawn.

I’m having trouble with the surfaceTouchEvent

I’m having trouble with the surfaceTouchEvent in the Responding to touch interaction recipe from the Processing 2 Creative programming cookbook source code on GitHub. I’ve worked through the Troubleshooting,  Discussion and Known issues, Common problems, Understanding changes to processing.core sections of the Android page of the Processing Wiki, but still no success. Unsurprisingly, someone else posted a similar issue with Android Multitouch on Processing 2.0.X on the Android Processing Forum. Unfortunately their solution (import. android.view.motionEvent) doesn’t seem to resolve my issue. Time to sort this one out.

Accessing screen size and density

Making my way through the Accessing screen size and density recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how to use the Android DisplayMetrics class to determine general information about the display of the device used to run the sketch.  While this is more of a diagnostic recipe than a creative one, I think it’s pretty useful way for finding out more about the capabilities of your device which could then inform the way you code your sketch. Nice.

I don’t always require an affirmation, but when I do, I prefer the Bene Gesserit’s litany against fear

Inspired by Tom Woodwards’s Dune-themed tweet on 24 April 2014, Rhys Fulber and Bill Leeb’s production on Fear Factory’s Fear Is the Mindkiller EP and the Bene Gesserit’s litany against fear and based on Jan Vantomme’s Drawing text and Running your sketch on an Android device  Processing recipes on Github, I created this portable litany against fear as a fun exercise in combining , expanding and learning further from the recipes I’ve worked through so far. Extending the functionality I’d like to extend the portable litany against fear by creating functionality that allows for use of: sound…

Drawing triangle and quad strips

Making my way through the Drawing triangle and quad strips recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how to use the QUAD_STRIP and TRIANGLE_STRIP parameters inside the beginShape function to draw triangle or quad 3D geometry to screen. With some work, QUAD_STRIP and TRIANGLE_STRIP could be used to draw 3D grass and lawn geometry on screen for Sew, Grow and Mow as an alternative to pre-modelled geometry. Maybe. This code draws the QUAD_STRIP and then rotates it around the centre of the screen. I…

Mixing 2D and 3D objects

Making my way through the Mixing 2D and 3D objects recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how to use the ENABLE_DEPTH_TEST and the DISABLE_DEPTH_TEST parameter inside the hint function at the beginning and end of the draw function to to enable and disable the z buffer. This means the first black square intersects the coloured 3D cubes, while the second white square is drawn on top of the coloured 3D cubes. The DISABLE_DEPTH_TEST parameter would be useful if you wanted to display user interface elements such…

Making polygon soup

Making my way through the Making polygon soup recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how to create a 3D cylinder with a flexible function that allows for the top, bottom and sides of the cylinder to be customised. In this recipe, the QUAD_STRIP parameter (draws a series of connected quads) is introduced in the beginShape function. Once again, the frameCount system variable is used to rotate each 3D object by one degree per frame as the value of the variable is increased by…

Using lights

Making my way through the Using lights recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe, I learned how to declare the lightMode and lightDirection integers to allow for different lighting modes to be activated. Inside the setUp function they’re assigned a value of 0 and then referenced again in the if test. In this recipe, I also learned how to use the lights, directionalLight, ambientLight, pointLight and spotLight functions for the different lighting modes, even the noLights function for a no lighting mode. This recipe contains code…

Drawing 3D primitives

Making my way through the Drawing 3D primitives recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how: the box function can be used with one or three parameters to set different values for depth, width and height of the box. the sphereDetail function can be used to define a resolution higher or lower than the default sphere function to create a variable (angleY) that can rotate each 3D object around its Y-axis. the frameCount system variable can be used to rotate each 3D…

Understanding 3D space

Making my way through the Understanding 3D space recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how set a variable for depth and zSpeed and also how to change the variable inside the draw function for animation. I also learned that if you want to use the rect or ellipse functions draw shapes in a 3D environment you need to use the translate function to change the coordinate system. Normally, the translate function uses x, y and z coordinates in a 3D environment,…

Offscreen drawing

Making my way through the Offscreen drawing recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how to: declare a PGraphics object and then initialise it with the createGraphics function inside the setup function. use the createGraphics function to create a new transparent image to be drawn on and the beginDraw and endDraw functions to start and stop drawing on the image. For this Sketch, strokes and lines are drawn on the PGraphics object. To do this, they needed to be prefixed with a…

Manipulating SVG files

Making my way through the Manipulating SVG files recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned: more about using the shape function to draw shapes in the display window how to declare the PShape object and create custom variables (snowFlake, small1 to small6 and big1) and the disableStyle, enableStyle, fill and stroke functions to manipulate discrete parts of the SVG loaded into the Sketch. how to use getChild to get text (small1 to small6) from the id attribute of each shape in the…

Calculating points on a curve

Making my way through the Calculating points on a curve recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how to use the bezierPoint and curvePoint functions to calculate points on curves and splines. bezierPoint uses five parameters. The first four are coordinates for the anchor and control points (40, 120, 300, 600) of the bezier curve and the fifth is parameter is a number between 0 and 1. This Sketch uses noise to generate the number. curvePoint works in a similar way to…

Drawing curves

Making my way through the Drawing curves recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how to use the bezier and curve functions to draw Bezier curves and Catmull-rom splines in the display window. For the Bezier curves in this example, 0 and 20 are the coordinates for the first anchor point. 50 and 10 are the coordinates for the first control point. 80 and 100 are the coordinates for the second control point, and the 30 and 200 are the coordinates for the second anchor…

Drawing text

Making my way through the Drawing text recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how to declare PFont objects for the fonts to be used in the Sketch and set the second parameter of the textFont function to determine the size of the text. For example, textFont (junction, 18). I also learned how to use: loadFont function to load the fonts into the PFont object draw function to draw lines of text text function to draw text to screen textAlign function to…

Working with images

Making my way through the Working with images recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how to: use the loadImage function to load an image from my data folder into my Sketch declare a boolean (pixelMode) for the if test use the image function to display the new images (dimensions specified in copWidth and copyHeight and areas specified by the pixel-swapping if test) in the window. I also learned about the get and set methods and how they can be used to…

Drawing basic shapes

Making my way through the Drawing basic shapes recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned how to use the rect, ellipse, quad and triangle functions to draw basic geometric shapes. I also found it interesting how two for loops are used to create the grid background pattern. I’m curious to find out if this coding style is better or more efficient than a single for loop I used to create my grid background pattern. I guess I’ll find that out as I continue to…

Keyboard interaction

Making my way through the Keyboard interaction recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned about using keyPressed, keyReleased and keyTyped functions to assign keys on the keyboard to execute code and also a bit more about if tests and declaring variables, particularly changing their values when specified keys are pressed.

Mouse interaction

Making my way through the Mouse interaction recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned about the mouseClicked, mouseDragged, mouseMoved, mousePressed and mouseReleased functions. I also learned about the mouseX, mouseY, pmouseX, pmouseY, mousePressed and mouseButton variable. The mouseButton variable allows you to determine if the left, right or middle mouse button has been clicked. This recipe is also the first time an if test has been used. They’re cool. I know I’ll be using them heavily to determine the display or actions…

Maths functions

Making my way through the Maths functions recipe from the Processing 2 Creative programming cookbook source code on GitHub. In this recipe I learned about declaring variables and the abs, ceil, floor, round, sq, sqrt, min, max, and dist functions. I also learned how to use the println function to display output of functions to the Processing console window. Good for debugging a Sketch! For this recipe the Processing window displayed at runtime isn’t used, but I still wanted to use the size() function.

Using a for loop to draw lines

I wanted to draw a grid. Previously, I specified each horizontal and vertical line in my sketch. Totally boring, inefficient and completely inflexible way to draw repetitive lines. So, I checked out the Processing reference on for loops and then applied that methodology to my existing sketch. Tight! This could be the method to use to draw a grid for the Design or Sew sections of the Sew, grow and mow: An AR lawn art experience.

Post-scholarship activities: The beginning of a simple video and chat application

One of the items included in my list of ‘What’s next’ to be considered for development in future iterations of augmented contextual instruction is to depart from the use of proprietary augmented reality platforms and pursue the development of device and platform agnostic augmented contextual instruction and additional augmented reality experiences for display in web browsers built on on Web sockets Web Real-Time Communication (WebRTC) and the Web Graphics Library (WebGL). The time for that departure is now. It’s now time for some self-directed post-scholarship activities. The first step in that…

Mental note: AR homework

Mental note. I need to do some homework. I need to determine how I can use the Metaio SDK and Unity as an alternative to Blender and Aurasma for developing AR experiences for my VET Development Centre Specialist Scholarship. AR in the browser with something like JSARToolKit library with the WebRTC getUserMedia API Brekel Kinect Pro Face software Metaio SDK – Fundamentals of SDK and Unity Metaio SDK – Tutorial 1 – Hello, World! Metaio SDK – Setting up the Development Environment Metaio SDK – Getting started with the SDK…

css.php