Art and technology

You may have noticed that whilst I am primarily a techie I do like to dabble and explore the potential of art with technology. I am well aware though, and often have to explain, that I am not a graphic designer or an artist. My creative toolkit is code and components. It may even be considered unusual combination of applications in a sort of collage of code. Nearly everything needs some sort of interface though. I am constantly frustrated that my vision of what something should look like is often not quite what I manage to achieve with the tools I have to hand. However, I have often thought that with a limited number of pixels on a screen and a pallete of colours with enough time and effort it must be possible to make something close to perfect as an image. Of course the key there is time. It is really just a rewrite of the concept of an infinite number of monkeys and typewriters generating the complete works of Shakespeare!.
I was struck, this week, by an ipad painted image of Morgan Freeman that was doing the rounds of social media. I had only seen the finished image. Whilst everything was saying it was a painting it seemed just too good. So I was amazed but skeptical. Then last night I the video below showing the stages of the painting captured as it happened. This is truly stunning.

It is the work of Kyle Lambert and looking at his portfolio it is hard not to feel that he has reached a level that very few other people ever will. What is great though is a link to a lot of tutorials he has created and various articles so he is not keeping this talent to himself.
I would have though a picture of the quality of Morgan Freeman would have put me off even ever trying but instead I am more inspired to learn more about artistic techniques now and try and level up my coder art just a little bit.
Even tools like Forza 5 let us express ourselves artistically through the media of the automobile. The tools (as in previous Forza’s are a decal based approach, similar to Second Life prims that you have to shape and skew, layering up to create the look you want.
I have now upgraded my feeding edge logo and predator face a bit more and my flagship car (which was the Ferrari 430 is now the LaFerrari The predator mask has always worked well (IMHO) on cars with front scoops like the subaru Impreza.

However the LaFerrari has a brilliant cut out front that is even better. The back of the car has hardly any surface so I popped on a very small Feeding Edge logo under the Ferrari logo.
Ok so it’s not a 200 hour Morgan Freeman ipad painting but its a start 🙂

Early adopting an Xbox one

Friday 22nd November was the release day to Xbox One. As an early adopter and Xbox fan (though I own all the consoles) I had my preorder with Amazon in since May. I sometimes think I should try the midnight queueing in the cold at a store for the ultimate release day excitement but instead I opt for the pain of waiting all day for a delivery to arrive. To be fair to Amazon it did arrive on day one but just at 4pm.
I was joking around on the day that it was a race between @elemming flying back from a work trip to Dubai and the Xbox One arriving. @ids pointed out on twitter that this sounded like a Top Gear race 🙂
The Xbox actually arrived 20 minutes before @elemming due to some flight delays out of Dubai due to rain! However she had the last laugh in the race as having unboxed and plugged in the HDMI and audio cables and got it all going I was in the mandatory day one patch downloading sequence.
#xboxone won the Dubai race with @elemming by 20 mins or so
though @elemming may have lost the race with the delivery but she beat the mandatory software patch #xboxone
I have to say that this day one experience, or any day for that matter was incredibly annoying. It is of course part of the point of early adoption that you end up waiting on progress bars. It, like waiting for a delivery is a good exercise in patience!
My internet is slow, BT still have yet to provide Inifnity to me despite being in an enabled area. I had to leave work uploads to a code management system for 9 hours. So seeing a brand new mating sat there demanding that it does a mandatory 600Mb patch in order to do anything with it was strange. It did work for me though, it took a while but then I was in the new dashboard. It plays a nice video to welcome you, and I wonder if that video was part of the 600Mb “patch” if it was then I could have done without it!
The new Kinect 2.0 worked really well straight away as I signed in and picked up my Xbox Live account. I took the Day One giant QR code for Fifa 14 and the camera picked it up straight away and set about the digital download of the game. This of course was going to take ages too as it was 10gb. Oh well, I thought I would leave it in the background anyway. I had the discs of preordered games. I had Call of Duty Ghosts, Ryse Son of Rome and Forza 5.
So excitedly, now I had a brand new patched console I put the disc in the drive. There it was Forza 5. It then started to install, no more playing from the disc you have to fill up your hard drive. However I was met with a message that this also needed a mandatory patch. It then told me the “patch” was 6GB! With my 4Mbps line that would be about 4 hours. So I did not expect to be able to play anything on day one as it was already late in the day. It seemed each game required a huge update for Day one. I tried COD and Ryse and got the same message.
I left it for an hour or so and cooked tea put the predlets to bed etc.
I checked google a few people suggest a fix. Turn off your internet!
So I did! I cancelled the Forza installation and started again. The game then installed from the disc and started up. I was greater with the awesome introduction/ training of getting to drive the Maclaren P1 around a street circuit. Feeling the new features of the controller with independent rumbling on the triggers. This meant the wheel spin of acceleration or sliding feels different to the ABS judder of the brakes. I did a few races and was pleased with the depth of integration of Top Gear, especially the 3rd race around the Top Gear style “simulation” of London. I won’t spoil it for you but if you like Top Gear/Clarkson/cars its brilliant.
I was eager to try each game now I was disconnected. Each disc needed to do its hard disk install. Those install times seemed rather slow but they worked.
Ryse, as a new game, was instantly visually impressive. It is a hack and slash game with a relatively simple dynamic. It is a bit like a 3d version of Streets of Rage or Double Dragon. That is a good thing BTW! It is rated 18 for its violence, unlike Call Of Duty that is now a 16 though for swearing and violence. You engage as a roman centurion in sword and shield combat. Most of that occurs in real time. It relies on timing blocks, shield breaks and slashing with the sword. Eventually you wear down the opponent and skull appears over their head. Then it is time for an execution move. Here, when you trigger it, everything goes into close up slow motion, lots of cinematic camera moves. The moves become QTE (Quick time events). A subtle colour flash around the victim indicates yellow or blue buttons need to be pressed. Each time you do it speeds up and performs a suitable move. Before long you are seeing limbs loped off, swords driving up and through and out of victim and various stomps onto a downed opponent. It sounds horrible, but it has a sort of boom, boom, bash, take that bad guy feel to it. The viciousness of this is very much in the style of 300 or Gladiator. I am not sure it needs to be 18, though I have yet to complete the game. It is great fun though.
Finally I popped COD Ghosts in and was greeted with the usually things we see inn the franchise. I think knowing that the exact same game was out on the previous generation I was not instantly blown away. However I have played all the COD single player stories all the way through since the original one. I know it will drag me in.
After getting to play a bit on Day One despite Microsoft’s best efforts to stop me due to the patch sizes and mandatory nature of those (which was clearly not the case as the games ran fine!) I thought I would reconnect to the net. I sparked it up and popped Forza 5 back in. I was expecting to trigger a background download, but instead it went back to saying I couldn’t play until 6Gb was downloaded. This was surprising. The previous Xbox 360 did do patches but they were always really small, and quick, 5 minutes max. It was the Sony PS3 that annoyed me with its mandatory patches. You wanted to have a quick go on something and it would stop you and demand you patch, for hours. I double checked my Xbox packaging that Sony had not bought out the Xbox and applied this draconian patching to Xbox!
I gave up and started all the downloads. It only does one at a time, it queues the others. Obviously the pipe into the house is way to slow (Come on BT fix it please!!!!) but it seems to have a go downloading one thing, then swaps to another in a queue. I am not sure if there is a setting (who can tell in the confusathon of the interface) to ask it to finish one thing first but the end result after a nights sleep was this.
Still updating after all night d/l ! Microsoft gone all sony on me #xboxone
That’s right, only Ryse Son of Rome had “completed” Fifa was at 91% but was apparently able to start. Forza 93%, COD 97% and the demo of Kinect Sports only 28%. I checked the Xbox network settings and despite a 4Mb line it was claiming 1Mbps. I guess the servers were somewhat slammed by 1 million xbox’s trying to patch !
I clicked on Fifa 14, as it was ready to start. It started a bout then said it need to patch some more, and dropped back to 90% !
I was pleased then to just shout at the Kinect “Xbox Turn Off” (and was prompted with a yes/no) so I said yes definitely ! The downloads still happen when the box is off so I thought I would let the poor thing concentrate!
So I am not overly impressed with all this extra delay, which of course is compounded by horrendous internet speeds. However, I do not understand how, after all the online/offline fuss and reversals of policy Microsoft managed to pick the worst of both worlds?
Anyway, back to Forza 5. It is all working really well now (I am just dreading any more game stopping patches).
Forza 5 has utterly stunning models of the cars with lots of information, voice overs from all the top gear team and much more. Back once again is the really enjoyable car painting. Each Forza generation I end up spending a bit of time adding to the cars. 3 to 4 allowed an import of the vinyl sets, but this gen was a start from scratch moment.
Forza 5 #xboxone feeding edge livery scooby
I have once again created a predator style face, similar but different to previous versions. It still works really well on the front air scoop of the scooby. I have my Feeding Edge company logo, g33k script work too.
One of the interesting things the Xbox One provides is recording of game clips. This used to be only in a particular game. However now any game will record clips. If something interesting happens you can bark out to the Kinect “Xbox record that!” and it saves the last 30 seconds of gameplay. You can set up a recorder for longer and you can still use Forza’s replay to go back and find the moment. Once you have the moment recorded you can go to upload studio (another app you have to download!) and do some basic editing. This includes being able to record a voice over or picture in picture combination. It is going to be interesting to see what people do with this. I had a scary near miss at Spa (as I have full damage turned on in Forza 5 so this would have been race ending if I had hit the wall). I also added the “night vision” intro template in a predator style reference.

All the cars in Forza 5 are supposed to not just be in game AI but are Drivatar’s. When you play it collects data on how you drive, you style and pace. It then sends “you” to other games when you are not racing online. It seems a lot of early Drivatars want to brake going up the hill at Eau Rouge. It has a blind crest at the top and the compression on the slight right hand leading up to it unsettles the car, but don’t brake so much 🙂
I think also the Drivatar’s may take their paint jobs with them too. There is an option to turn off accepting paint work. That means, in theory, when I am not driving my Feeding Edge company car with my epred and company logo is busy turning up in peoples living rooms around the world. Up until now that had only been if I took my car into an online race. I expect some more advercar/Drivatars will start appearing very soon?
There is a great video here of a real car on the real track hitting that corner and nearly losing it about 40 seconds in. I think it shows how far simulation are getting, and yet still being playable.

Finally Fifa 14. we are not really a football family, though Predlet 2.0 is growing to love footy. Fifa 14 (and I have had a lot of other Fifa games) is really slick. The players seem to be a koch more complicated physical model as running into one another rather than just slide tackles can cause all sorts of fouls. We have had some great games as 2.0 has got the hang of the mechanic of Fifa, mostly from playing the iPad version. Predlet 1.0 is also getting to grips with it. It’s a great game, and was free with the Xbox One Day one edition. That was a good call, it is just a pity they didn’t pre-install so that you could just plug and play in seconds.
There is a lot more to experience and figure out. Do I bother plugging the Sky box on the HDMI pass thru? So the Xbox in a pre Sky filter? I am not sure that gives me much? Especially as each box in my set up is an optical output to the 5.1 speaker amp. There is a “beta” setting on the Xbox to enable 3d surround to be passed through, but that means its going to have come down HDMI get processed by the Xbox and pumped out. It sounds a lot of messing around, though it will removed the channel selection on the AV receiver. However it also means the Xbox has to be turned on all the time the TV is? Oh well I beset go and experiment. Feeding Edge – Taking a bite out of technology so you don’t have to 🙂

Dear BBC I am a programmer and a presenter let me help

I was very pleased to see that the Tony Hall the new DG of the BBC wants to get the nation coding. He plans to “bring coding into every home, business and school in the UK”.
So I thought, as I am lacking a full time agent in the TV world, I should throw my virtual hat in the ring to offer to work on the new programme that the BBC has planned for 2015.
It is not the first time I have offered assistance to such an endeavour, but this is the most public affirmation of it happening.
So why me? Well I am a programmer and have been since the early days of the shows on TV back in zx81/c64/bbc model a/b/spectrum days. I was initially self taught through listings in magazine and general tinkering before studying to a degree level, and then pursuing what has been a very varied career generally involving new tech each step of the way.
I was lucky enough to get a TV break with Archie Productions and the ITV/CITV show The Cool Stuff Collective, well documented on this blog 😉 In that I had an emerging technology strand of my own. The producers and I worked together to craft the slot, but most of it was driven by things that I spend my time sharing with C-level executives and at conferences about the changing world and maker culture.
It was interesting getting the open source arduino, along with some code on screen in just a few short minutes. It became obvious there was a lot more that could be done to help people learn to code. Of course these days we have many more ways to interact too. We do not have to just stick to watching what is on screen, that acts as a hub for the experience. Code, graphics, art work, running programs etc can all be shared across the web and social media. User participation, live and in synch with on-demand can be very influential. Collections of ever improving assets can be made available then examples of how to combine them put on TV.
We can do so much with open source virtual worlds, powerful accessible tools like Unity 3d and of course platforms like the Raspberry Pi. We can also have a chance to explore the creativity and technical challenges of user generated content in games. Next gen equipment like the Oculus rift. Extensions to the physical world with 3d printers, augmented reality and increasingly blended reality offer scope for innovation and invention by the next generation of technical experts and artists. Coding and programming is just the start.
I would love to help, it is such an important a worthy cause for public engagement.
Here is a showreel of some of the work.

There is more here and some writing and conference lists here
So if you happen to read this and need some help on the show get in touch. If you are an agent and want to help get this sort of thing going then get in touch. If you know someone who knows someone then pass this on.
This blog is my CV, though I do have a traditional few pages if anyone needs it.
Feeding Edge, taking a bite out of technology so you don’t have to.
Yours Ian Hughes/epredator

Virtual World Jet Lag – Los Santos style

Last week Grand Theft Auto V was released. That of course is something everyone probably spotted. In amongst all the hype, the outrage and the $1 billion dollars in takings there are some interesting nuggets that may have been missed.
GTA V is a giant virtual world simulator. Whilst GTA V Online is not yet live it is a single player experience, it does have a very large and detailed environment. The attention to detail is almost so good as to not be impressive as you tend not to notice it. The environment is very big from a sprawling city, to a desert and a mountain range and lakes that you can explore on foot or on a variety of vehicles on land sea and water ( or even in a cable car or a blimp) act as a backdrop to a set of mission and story arcs. The place is bustling with activity, people and cars everywhere. It is a pity that it could not just have a mode or version of this world that removed a the swearing and the violence just a little. The reason I say this is that just exploring, being in the place would make a great experience in its own right. Heading off to the lake to watch the sunset, flying and landing planes on the runway. The games or darts, golf and tennis that are just sitting in there as a side task all make it a fine example of game technology and design in action. As it is it obviously deserves its 18 rating which in context all makes sense. You can’t though drive down the road or listen to the radio or even play the iFruit Iphone companion app without a torrent of abusive language.
Chop on Ifruit the companion app.
Me as a gamer and an adult I find this all more than acceptable, however as a parent I would be worried because I know many people will end up letting much younger kids play this without fully appreciating whats going on. Tone and intent is everything in a narrative and the cartoon violence of stealing cars and having shootouts is pretty normal and I would say acceptable. However there are part of GTA V that enter other territory. A scene with the psychotic Trevor extracting information which has to be played through made me wince. I am not sure what is coming next as that is only 1/4 way through.
There is something that felt different though. In GTA V you swap between 3 characters. This stops them seeming like they are your character and turns them more into toys or puppets that you are playing with. The 3rd person view helps re-enforce that as you can clearly see which character you are. Character swaps happen in other games such as Call of Duty but in 1st person if becomes less obvious you are not you. So playing GTA V, customising the characters with hair, clothes and tattoos becomes more of a dress up doll experience than a “hey look at me” experience. I am not sure if this makes it easier to cope with the excesses of some of the characters in that you are almost in god mode rather than sinking into the character. That may just be me but it is definitely a different feel. It is more like looking into an aquarium than being in a swimming pool.
That said is is a very absorbing experience, exploring or following the story. It has always been fun to just drive around in a car listening to the really good soundtracks playing via the various radio stations. The news reports that interrupt the music also match nicely with the activities you have been up to. Again so we done you almost don’t notice.
The in game web experience is also very neat. Facebook and twitter are copied and mocked but if you bother reading the details you will see, just as with the radio news there is a consistency with the in game social media interactions. There is also a working stock market, investing in the right things before a mission that alters the share price is a clever way to get cash.
GTA V has also reached out to the actual web, lifehacker (the Facebook clone) exists for real. Before the game was released could stalk (i.e. like) various business pages such as the barber shops. That then linked in game to a discount or a freebie.
I already mentioned the iFruit app but it too affects the game. If you train up the tamagotchi style dog Chop his action will alter in the game. If you buy custom car parts they will appear. This feature obviously had some trouble at launch, it was not scaled to cope with the day 1 blitz but it seems to be fine now.
I entitled this virtual world jet lag because I have certainly experienced a form of jet lag, or tiredness as you might like to call it. Late nights playing and exploring Los Santos have been needed in order to understand the game and it’s development. However it does feel like I have visited somewhere, in the same way exploring Second Life and alike does. The experience and memories are rich enough to make it feel like a journey has happened. It is large free roaming worlds that have this impact more so than the frenetic close in shooters. They leave you dazed and adrenalin pumped, you remember the small experiences, taking a flag or an unusual frag. GTA V and alike provide so many memorable inputs and ones that are linked to discovery and learning that they are really a place. It is something everyone should try and experience to feel the difference between this and other styles of game. I hope this Los Santos model world can be used for some other experiences too though for those who are not gamers but who might change their minds about the art of game creation and the technical expertise of its creators.

Disney Infinity – Money Grabbing but Metaversal

Disney Infinity arrived on the scene recently. It is Disney’s response to the clever development of Skylanders. Where physical toys are used to select what happens on screen. If you thought Skylanders may have had a slightly cynical collect ’em all, spend ’em up side to it then Disney have ramped that up to a new level.
Skylanders you typically get a set of characters that you can experience the main game with, without buying new characters. Getting a new character for £8 or so gets you some new powers, effectively new lives for a game session and possibly access to a bonus level.
Disney have chosen a more complicated (and expensive route it seems). The starter set gets you 3 characters. Each effectively from a different set of game levels. So you get Cap’n Jack Sparrow, Mr Incredible and Sully from Pirates of the Caribbean, The Incredibles and Monsters University/Inc.
You get a “level” select piece (they call them play set pieces) that when placed on the USB powered platform selects the available levels. This happens to be multiple one for the 3 games but others are individual tokens.
There is also another token type that unlocks a little bit of content. These are the sort of pocket money prices elements, like buying a lego minifig. Ours unlocked a background from Wreck It Ralph.
It is the collection on the right of the picture. A “starter” set.
Disney infinity
So we plugged it is sparked it up and I wanted to play with the predlets. After all the games are multiplayer and there is space for two characters. The problem is that as you enter the Pirates of the Caribbean world you are only allowed to take a pirates character with you. So the base starter set does not let you play the actual game levels as multiplayer. So you have bought 3 single player games.
What you need to do is shell out another £25 on top of the £50 already spent to by the “sidekicks” a character from each series. (On the left in the photo above).
Other playsets feature 2 characters from the same experience, Cars, Lone Ranger etc. So then you are buying a multiplayer game.
You can buy individual characters for each game type, and there are sets to collect, and buy extra characters for the same games. You are enticed to do this in game as it points out you don’t have a character by showing a video.
Not allowing Sully to wander around The Pirates levels or have Cap’n Jack in the big city with the incredibles sounds like an attempt at not having some sort of brand pollution. Or some odd technical reason. However that makes no sense when you get to the more interesting part of Infinity which is the toybox.
This is a freeform multiplayer environment where any character and anything from anywhere can be added and created.
It is a metaverse, a shared world with all the user creation tools we expect in virtual worlds. It is a great leap forward too bringing a degree of quality to the experience of building we don’t often see.
I had a flashback to my first Second Life island when it was just flat land and the possibilities were endless about what could be done there and how it would evolve (and change the path of my life as it turned out). Big stuff!
Deja vu flat piece of land and an avatar # inifinity
Cap’n Jack just stood in a field.
Then a quick menu selection and a little bit of racetrack (in the background) and a physical active beach ball with live shadows and all the trimmings was in world with me.
Deja vu flat piece of land and an avatar # inifinity
Then we found that any character could join so Sully was soon in world and before you knew it we had some funny little games going. Predlet 1.0 made an obstacle course, 2.0 made a floating race track. We found ourselves setting little challenges with the basic things we had.
The trouble with this is that there are thousands of pieces to play with, but…. they are all locked away. As you “play” or explore you complete challenges and achievements. Those unlock stars, as does levelling up or playing the main stories. Those stars let you get a random spin in a selection of the devices and objects available. It is painfully slow grind to unlock things. Not being able to pick and it being a random selection gets very annoying. We wanted more vehicles, we got a buggy eventually but lots of things we didn’t want first.
For a creation tool it is missing the ability to just get on with it. For experienced virtual world builder like the predlets, used to Minecraft creative mode it is a ridiculous application of grind. Worthy of Nintendo’s grind tests.
I hope they patch this and let us just select anything from the palette. Mind you they will probably make us buy some more physical product. That after all is what the extra collectible power disc (the one that unlocked a wreck it Ralph backdrop) does. However these are sold in closed packaging so you don’t know what you are getting to end up with “rare” items and swaps for the playground. Something I have never really liked in kids toys.
So Disney have made something really clever, interesting and wonderful and then locked it behind a big paywall or a giant in game fruit machine. All things that can be rectified to make this brilliant!
I should say too that The figures look like they are good quality but Jack Sparrow must have had too much Rum as he broke off his stand. Not sure how much force cause that to happen but characters on stands with just two small bits of plastic feet might make these not as playable with for kids as Skylanders.
Disney infinity
Brand pollution isn’t so bad it it? (Just updated with this vine 🙂 )

Oculus Rift arrived

Yesterday was a very interesting day all around. The main event for me was the arrival of my Oculus Rift development kit. This is a Virtual Reality (VR) headset. We have had these before but not ones that are this cheap (relatively) and that just plug into any machine and work with Unity3d !
It came in a cool case too. Some nice big clicking catches on it like something James Bond would get from Q.
Oculus rift arrived
I had to dash out and get a mini display port to DVI adapter as I had that frustrating moment we have all had at some time when you realize a tiny piece of cable is missing. I only had a VGA adapter that I usually need to projectors at presentation. Handily there is a Mac store in Basingstoke and also Apple kit stocked in the nearby PC world so I had that covered in minutes.
I ran the Tuscany demo straight away. This is a small, but lovely rendered, building in the Italian countryside and on the coast. I was, despite having experienced this sort of stuff alot before suitably amazed and excited by it.
I did not hog it though and got each member of 3 generations in the house to have a go.
I was really happy that the predlets got how cool it was too. There was a suitable amount of bemusement and wonder.

The unit is two screens one for each eye and the ability to track head movements. So these head movements can then inform a game or application that you have moved you view.
The unity 3d integration is the library that is able to talk to the rift, but it is also a couple of prefabs (bundles of reusable code) that lets you change the normal single view camera to one that generates 2 views from slightly different angles to then feed to the rift screens (one per eye). Elegant and simple. It also has a controller prefab that takes the input from the headset movement and feeds that into the unity environment.
So it is not going to take to much to test some of the applications I have and make them rift enabled, though they have to be native application publications not web ones I am assuming.
It was not the only tech of the day though as in the morning Predlet 1.0 went and experienced indoor skydiving at Airkix.

Something I remember well from the TV show 🙂
She had a blast doing that.
I had a go on the iracing sim rig there had there too, this is basically a high end pc with a hydraulic chair and some force feedback steering.
We have yet to try the brush boarding or the skiplex slope (a skiing conveyer belt).
Just to juxta pose those though predlet 1.0 finished her Revell glue together and paint kit of the Titanic. Don’t worry though, it was all perfectly normal as predlet 2.0 was completing levels on Lego Indiana Jones 2 on the Xbox 🙂

InfoQ – virtual worlds interview – me again :)

As I was on the roster as the rather excellent Goto conference I was asked by Ben Linders a few questions on virtual environments and where they fit in the world of software engineering. This turned into a slightly longer interview and has just gone live. It is always interesting to frame the answers about virtual worlds into a slightly different context or industry but of course when it comes to the software industry, the fact that this is software anyway has a nice meta element to the conversation.
The article is live here.
Along with my super g33k bio picture 🙂
It is also cool that you can now just search “epredator” on infoq and tadah! 🙂
I guess this may seem more of me going on about the same things, but there is a reason for that. These technologies make a huge difference to a lot of use cases. I am getting more calls and questions again about how these may work (post bubble). Ignoring the possibilities for anyone or any industry could be costly this time around. I just want to help 🙂

Rocksmith 2014 Session mode

I am a big fan of Rocksmith, it has been a breath of fresh air in ways to learn and enjoy guitar now they are ramping up for the next edition of it. Luckily all the downloaded songs are still transferable. (Well less luck and more a necessity!)
I often use it as an example in my talks like the one I am giving this Wednesday at BCS Shropshire.
An interesting new feature has been added though, and so my talk has to evolve to keep up. That of session mode with a reactive and generative music backing band. You play and they keep up. This is really interesting and I can’t wait to see how it pans out with my guitar tinkering. The E3 conference saw Jerry Cantrell of Alice in Chains take to the stage. Just listen how, (once he has managed to go through a few customisation options using voice) the band kicks in and responds to his playing.


Not just handbrake turns – GTA V

The original Grand Theft Auto was a great game. A top down scroller with cars that had very pleasing handbrake slides as you zoomed around the city in a sort of glorified PacMan variant. That sells it a bit short but as the creators called it that once I think I can :).
There is a complete history here on Games Radar.
gta 1 via games radar
I loved the top down scrolling car action not least because I had written a few demos along that sort line.Not least the cars game that was part of the developer kit with the old firms “BIG” proof of concept for in game micro transactions back in 2004 (yes they should have stuck with it but what can you do !)
So when the 3d versions of GTA started to produce more variety, but definitely keep that level of fancy driving it was fantastic.
I always have marvelled at the size of the free roaming worlds in many of the games. They just get bigger and bigger. They are not random either they are designed, intricately designed! The entire metaverse now though becomes a backdrop for narrative, not just sliding around. The good thing is though, you can ignore the story and just have some fun razzing around in cars listening to music.
If you are not a gamer and you have not watched this new video of Grand Theft Auto V the fifth installment and the latest and greatest I urge you to give it a look. Just to get a feel for the scale of these games. I am sure GTA V will not disappoint, they have just got better and better, more and more varied. They are a fantastic achievement in games and technology too.

Adventures with Photon and Unity3d

The unity3d hospital I have been working on has, up to now, been running on the Photon Cloud. (Photon server from Exit games is a socket server that allows client applications like those in Unity3d to talk to one another. They run a simple to use hosted version called Photon Cloud which is great for testing things out.
I decided though that some of the traffic we were pushing through might break the tiers for hosting on the cloud so thought I would run my own server. It was not the concurrent user as we have a few users, but they do a lot. Rather than a lot of users doing a little which is the general profile for gaming.
Unity dev
In part that is because on of the unity clients acts as the master for the application. It holds a lot of simulation data and changes to that have to be communicated (in various cached ways). If I had built it as server logic we may have cut down on traffic but would have to stick to a single way of working. As it is the application is also designed to fall back to disconnected mode and can be run as a non network demo (though that has its own challenges).
I did have a few difficulties to start off with but many of those were actually very simple to solve, and if you read some of the annotations in the docs they all make sense.
I sparked up a rackspace windows 2008r2 server first. Photon is windows based. I had dabbled with the Azure cloud hosting version for it but much of that required a windows development environment to deploy to and I am a Mac user with occasional windows use 🙂 So it was much simpler to have a rackspace server and use the remote desktop to attach to it.
Downloading the files via the remote desktop was a problem to start off with due to all the various firewall restrictions, so there was a bit of clicking around windows admin.
I followed the 5 minute setup (kind of). Once downloaded you just end up with a set of bin directories for the Photon control and directories with the various server applications and configurations.
Remote Desktop ConnectionScreenSnapz001
All I needed was a lobby host and then simple game rooms to hold broker the data flow and RPC calls. I had not extra server logic. If something moves in unity3d on one client it needs to move on the other.
I didn’t have much luck having asked photon to start the Default application. I was not getting connected so I added a few extra firewall rules just to be on the safe side. I was starting to wonder if I could get to the hosted machine at all but I think there were some other network problems conspiring to confuse me too.
Then I read that if you are switching from Photon Cloud to your own server you should use the other application configuration, cunningly named Loadbalancing(MyCloud). I switched to that and ran the test client on the actual server and things seemed better. Still no luck connecting from unity3d though. Then I looked at the menu option that said Game Server IP config. It was set to a local address, so obviously the server was not going to be letting itself be known to the outside world. A simple click to autodetect public IP and I was able to connect from unity3d.
It all seemed good until after a few connects and disconnects it started to throw all sorts of errors.
I had to ask on the forum and on twitter, but just asking the question I started to think what I was actually doing and what I was running. I was glad of the response from Exit Games though as it meant that I was going along the right path.
Again it is obvious but… The mycloud application config that I was using had 1 master server and 2 game servers it did say it was not for production, but as this is not a massive scale game I thought I wouldn’t touch any configs. It looked like the master server was getting to a point of asking each game server who was the least busy (to direct traffic to) and getting an answer that they were both maxed out. I initially thought I needed to add more game servers, but it was actually the opposite. Removing one of the game servers from the config (effectively removing and load balancing logic) meant the same game server got the connections. The loadbalancer is really there for other machines to be brought into mix.
Having thought that was what was happening I cut the config files but still found after 30 mins running I got conflict. I did say that in the forum post too. However I had not fully rebooted the windows box only restarted the photon server. I think there is a lot of shared memory and low level resources in play. A few reboots and restarts and things seem to be behaving themselves.
The test will be today when the scenario is run with several groups of 5 users, but all running voice too.
Unity server buttons
I have put some server fallback code in though to allow us to switch back to the Photon Cloud if my server fails. For a while I was publishing two version one for cloud and one for my server. That was getting impractical as each upload on my non infinity broadband was taking 45 mins. So any changes had a 90+ minute roundtrip not including the fix.