Pixelh8

Pixelh8 and The New Wolsey “Video Game Workshop”

May 12th, 2010

Things are getting pretty hectic in the build up to Childhood Remixed, however I am still managing time to run some workshops. This time it’s a collaboration with The New Wolsey Theatre Creative Learning and Holywells High School. The plan is to use the green screen composite technique to put students in to a video game about students that have been shrunken down and teachers turned in to zombies. So this is gonna be good fun working with fellow project leader Laura Norman and her vast array of skills we shall be zombifying Holywells. More news an pics of the game in progress as it happens.

Posted in Educational, Holywells Computing Club, Lectures & Workshops, Programming in Schools |

Pixelh8 Computer Graphics Workshop @ FACT, Liverpool

February 1st, 2010

CGWSTGAMESHOT1oday I did a Computer Graphics Workshop with two different schools the Academy of St.Francis of Assisi and Holly Lodge Girls College at FACT, Liverpool as part of the current Space Invaders exhibition. They were a fantastic group, so good in fact we even had time to make sound effects for the game as well. The space was perfect as we could beam the game on a huge cinema screen as we were making it.

The game will be all edited and back to them in a week for them to play on in school and at home. Next up tonight “An Evening With Pixelh8” all sold out!!!

Posted in Educational, Lectures & Workshops, Programming in Schools, Software, Visits |

Pixelh8 @ Computing Club, Holywells High School, Ipswich “Processing Lesson 3″

January 19th, 2010

p3lessonAfter a long Christmas and New Year break, it’s back to coding, fortunately that break didn’t wash away all that they had learned and we were able to get on with Dimensional arrays. The best part of the lesson was when we started talking about how the Baddy AI will be implemented next lesson. They were beginning to think laterally, and how the computer doesn’t view the game as the player, but as a maze of 0 and 2’s in this case. The 2’s in the array are solid walls and so could 1,3, and 4 but they will be added later. 0’s are for nothing and is where both the goody and baddy can walk.The first row of 0’s is there to allow for space to draw the number of lives, score and level later on.

Every loop it redraws the level, and when key presses occur it checks if the position the character wants to head is clear, if it’s not it issues a return;. The following code builds upon last lesson here and adds the map drawing and good guy collision with it. The code as is also purposely presented the students with a dilemma, how do you get into the maze.

To get the below example to work

1) Load up processing and save immediately calling it “MazeGame” this will create a folder, example “MazeGame”

2) Within that folder create another folder called “data” so MazeGame\data

3) Within that folder put a graphic called “good.png” 40X40 pixels.

4) Run it

//MazeGame
//Copyright Room 1 Studios 2009
//Matthew C. Applegate – Pixelh8

int goodx, goody;

int level, column, row;
int[][][] mapper = {

//Level 1

{
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{2,2,2,2,2,2,2,2,2,2,2,2,2,2,2},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,2,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,2,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,2,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2},
{2,2,2,2,2,2,2,2,2,2,2,2,2,2,2}},//End of Level 1

//Level 2
{
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{2,2,2,2,2,2,2,2,2,2,2,2,2,2,2},
{2,0,0,9,0,0,0,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2},
{2,0,0,0,0,0,0,0,0,0,0,0,0,0,2},
{2,2,2,2,2,2,2,2,2,2,2,2,2,2,2}} //End of Level 2
};

PImage hero;

void setup(){
background(0);
size(600, 400); // 15 X 10
hero = loadImage(“good.png“);
}

void draw (){
background(0);
updatescreen();
}

void updatescreen (){
image(hero, goodx*40, goody*40);

for (int row = 0; row < 10; row++){
for (int column = 0; column < 15; column++){
if (mapper [level] [row]

== 2){fill(255); rect (column*40,row*40, 40,40);}
}}
}

void keyReleased() {
if (key == CODED) {

//check if collision free
if (keyCode == UP)    {
if ((mapper [level] [goody-1][goodx]>0)&& (mapper[level] [goody-1][goodx]<4)){return;}}
if (keyCode == DOWN)    {
if ((mapper [level] [goody+1][goodx]>0)&& (mapper[level] [goody+1][goodx]<4)){return;}}
if (keyCode == LEFT)    {
if ((mapper [level] [goody][goodx-1]>0)&& (mapper[level] [goody][goodx-1]<4)){return;}}
if (keyCode == RIGHT)    {
if ((mapper[level]  [goody][goodx+1]>0)&& (mapper[level][goody][goodx+1]<4)){return;}}

//If collision free
if (keyCode == UP)    {goody=goody-1;}
if (keyCode == DOWN)  {goody=goody+1;}
if (keyCode == LEFT)  {goodx=goodx-1;}
if (keyCode == RIGHT) {goodx=goodx+1;}
}
}

Posted in Educational, Holywells Computing Club, Programming in Schools |

Pixelh8 “A Choice To Compute” the article on Game People

January 6th, 2010

gamerpeopleVery pleased I got to finally written this up “A Choice to Compute: Rant in C++” it is part of a talk I give on the decline of programmers and some of the possible causes behind it. You can read the full article on Game People and all of the quotes can be referenced.

Although things are getting better there is still alot of work to be done to turn things around, and on the back of this rant instead of just complaining about the problems I have set up “Computer Club” with several schools to get people programming at an early age. You can see some of the example lessons and projects that I have undertaken with Holywells High School on this Blog here.

Enjoy.

Posted in Educational, Holywells Computing Club, Lectures & Workshops, Press, Programming in Schools |

Pixelh8 @ Computing Club, Holywells High School, Ipswich “Processing Lesson 2″

December 15th, 2009

mazegameI am genuinely very proud of my Computer Club only the second week in to programming with “Processing” and they are real getting it, they are really thinking logically and coherently. Below is a simple program to load a sprite place it on the screen and move it around using the cursor keys, they were all able to follow my instructions and get it to work.

I also set a few traps along the way for them to figure out for themselves and they were successful in solving the problem. Again this is just another piece of the overall project, and will later be merged with work from other sessions.

Cleverly they also worked out how to load other graphics and experimented with them too.

To get the below example to work

1) Load up processing and save immediately this will create a folder, example “MazeGame”

2) Within that folder create another folder called “data” so MazeGame\Data

3) Within that folder put a graphic called “good.png” 40X40 pixels.

4) Run it

//MazeGame
//Copyright Room 1 Studios 2009
//Matthew C. Applegate – Pixelh8

int goodx, goody;
PImage hero;

void setup(){
background(0);
size(600, 400); // 15 X 10
hero = loadImage(“good.png“);
}

void draw (){
background(0);
updatescreen();
}

void updatescreen (){
image(hero, goodx*40, goody*40);
}

void keyReleased() {
if (key == CODED) {
if (keyCode == UP)    {goody=goody-1;}
if (keyCode == DOWN)  {goody=goody+1;}
if (keyCode == LEFT)  {goodx=goodx-1;}
if (keyCode == RIGHT) {goodx=goodx+1;}
}
}

Posted in Educational, Holywells Computing Club, Lectures & Workshops, Programming in Schools, Visits |

Pixelh8 on BBC Suffolk “Suffolk’s mobile app innovators”

December 10th, 2009

meinsuffolkVery pleased this article got out there, which talks about Mobile App development in Suffolk, the work I am doing with UCS students to prepare them for the workplace with the most current technology we can offer them. Not only are they developing for the iPhone, but the Nintendo DS and Java based phones.

It also talks about fellow local developper Paul Hutson and the success of his Kingdom Game and Outer Empires projects, all good news for Suffolk and University Campus Suffolk and I am sure I will update you on my students progress.

Posted in Educational, Lectures & Workshops, Press, Programming in Schools, Software |

Pixelh8 @ Computing Club, Holywells High School, Ipswich “Processing Lesson 1″

December 8th, 2009

I hate to give the game away in the first sentance, but the lesson was perfect, it had to be. I knew from the moment I woke up this morning this first lesson in Processing had to run smoothly as it was their first lesson with it, their first exposure to code. It may not have been make or break with them, but a bad introduction to coding could put them off for years. Luckily their ICT teachers have been teaching them how to use good tools like Scratch and Opus, so they were already familar with things like variables so we could speed through some of it a lot quicker.

I simply talked them through the interface, how the variable, set-up, and draw areas of Processing work with eachother. The full example is below, but it’s important to note we did it in stages, purposely missing things out to cause “problems” which we set about solving.

Now bearing in mind these were 13-14 year old kids who inhabit a full on multimedia world and computers are pretty much part of their everday life, it was still nice to know that having the ability and being empowered to do even the most basic tasks in Processing (like draw a box on the screen), was still really enjoyable. It was like watching lights flicker on as I said to “experiment” with the different values in the code, but they worked it all out very quickly.

Processing was chosen for several reasons for this project.

1) It’s free and runs and outputs to most operating systems including a webpage.

2) There is also Mobile Processing which means lessons learnt in this environment can be moved to mobile phones and other mobile devices.

3) There is also Arduino which is based on Processing for controlling external devices like motors, solenoids, lights & robotics.

So in the space of an hour they learnt about integers, variables, loops, how to output to the debugging console and to load a font and display all the information to a screen. Next week we will show them how to load a graphic and move it around the screen, no prizes for guessing where we are heading. And yes I am aware all this does is count down from 300 and keeps going, thats because this small example forms part of a much larger project.

This work forms part of my Masters Degree and soon my PhD and will all be written up shortly for others to read in it’s entirety. I am also very glad that several other schools have now taken up my offer to run this 8 week after school course for their students.

Below is the code, but to get it to work, you will.

1) Start processing, and save immediately, call it whatever you want, you do this so it will create a folder.

2) Create a font in the drop down tools menu, size 24, type Arial MT, that way the code will find it and load it correctly. From the folder you just created by saving.

//Timer
//Copyright Room 1 Studios 2009
//Matthew C. Applegate – Pixelh8

int counter;
PFont fontA;

void setup(){
counter = 300;
size(300,300);
fontA = loadFont(“ArialMT-24.vlw”);
textAlign(CENTER);
textFont(fontA, 24);

}

void draw(){
background(0);
counter=counter-1;
delay(100);
println(counter);
text(counter,150,150);
}

Posted in Educational, Holywells Computing Club, Lectures & Workshops, Programming in Schools, Visits |

“A Choice To Compute” at CAS Essex Hub, Sandon School, Chelmsford

December 2nd, 2009

It was a small but very positive group at the Computing At School event and very good to see several ICT teachers willing to teach children computer programming.

It was also attended by my friend and colleague from the National Museum of ComputingPeter Onion of the Elliot 803 Emulator fame, and is probably one of the best and dedicated computer programmers I know.

I discussed what I thought were some of the issues facing the decline of programmers, and the positive actions I am taking to make changes to it, in my “Computing Club” pilot schemes I am running in Suffolk at the moment, and although it is video game based it has had a high level of success already and has created several new programmers who have gone on to do other things besides games.

There were lots of good issues raised by everyone who attended, and hopefully there is now a lot more awareness of resources available to teach computer programming in schools, but certainly there is a lot more work to be done.

Computing At School has just published their first newsletter here.

Posted in Educational, Lectures & Workshops, Programming in Schools, TNMOC, Visits |

Pixelh8 @ Computing Club, Holywells High School, Ipswich “Playing and Debugging”

December 1st, 2009

screenshot103 screenshot104screenshot105 screenshot107

Here are just some of the levels from the Holywells Computing Club Platform Game. Today we spent the lesson arranging the items and bad guys within the levels. We also tested out the game to see if they were playable, with the game 90% done in just three hours work over three weeks, I would say thats pretty good.

Next week we will finish it and then start from the very beginning using “Processing” to create our own maze game engine.

Very pleased that they are really getting to grips with ideas like variables and giving “objects” values, and that they are linking it with their other work in ICT.

Posted in Educational, Holywells Computing Club, Lectures & Workshops, Programming in Schools, Visits |

Pixelh8 @ Computing Club, Holywells High School, Ipswich “Backgrounds & Levels”

November 24th, 2009

GameScreenToday was the second session for the Holywells High School “Computing Club” and was mainly spent talking about the game engine, how the graphics are loaded and become “sprites” and how we map properties on to those “objects” and how we can make them interact with each other. With the “good guy”, “bad guy” & “item” sprites loaded in to the computer from last week, we then set about assigning them different values. We also talked about how “invisible platforms” work to allow quick and easy level making with very complex backgrounds.

It was again good fun and they seemed to get a lot out of it. It’s also nice to hear them say they are going to try and do it at home as well so hopefully some side projects will pop up too.

Next week we are going to be play testing the game to see what works and work out what we can do to make it better and for the week after we start “Processing” ripping the graphics out of the game and making our own game engine code from scratch.

Posted in Educational, Holywells Computing Club, Lectures & Workshops, Programming in Schools, Visits |

« Previous Entries