Low Poly Walt

Posted: 15th November 2013 by Peter in 3d Modeling & Animation
Tags:
Comments Off

For the craic. Made in Blender, Photoshop textures. Best show ever.

low-poly-walt-comp

3D Well

Posted: 25th September 2013 by Peter in 3d Modeling & Animation
Tags: , , ,
Comments Off

A wee well I worked on recently. Just a bit of low-poly fun in Blender. Click to see larger image.

3D Blender Well

Support Is Here

Posted: 29th May 2013 by Peter in artwork
Tags:

support

One more graphic I created for work that I wanted to share. This is the support (like IT support for the website). Typically these support are clean vector images of faceless, usually brown-haired cartoon characters with a headphone on, yuk. Well in true GameCarver style, I decided to have a bit of fun. My only regret with this image is that I made it to size for the site, should have created a larger version, then down-sized it for the website (and I knew that while creating it, but I didn’t do it anyway! Arrrgh!)…White and black background versions.

support

Love Hate

Posted: 29th May 2013 by Peter in artwork
Tags: ,

Just wanted to upload a couple of images I did for work (two versions of the same image). So I guess the process is something I want to talk about, as it’s a style I’ve been developing of late.

Love Hate

Once I’ve come up with a concept, I do a bit of online research and make a paper sketch to tease out the idea. When I’m happy the concept is good to go, I open MyPaint (free graphics software) and start blocking out the shape of the image with 100% black. This is very rough work, using a hard edged brush. Then I draw out four blocks of tones beside each other, ranging from black to light grey. These will be my palette for the work in MyPaint.

Using the second darkest tone I draw over the silhouette, leaving some black areas in place. Using the other tones I build the the image, layering lighter tones on top of dark. This is a really enjoyable way to create artwork btw, seeing the image progress with each tone. At the moment I’m just using two brushes and the eraser for these paintings, ramon/Marker for hard edges and fills, ramon/Round for soft edges and blends.

When I’m satisified the image has progressed to a point where finer details are required, I export it to a transparent .PNG and open it in Photoshop. I use mostly the Dodge and Burn tools in Photoshop to develop the tones, as well as adjusting images with Levels and Hue/Saturation. To round off and clean edges I use the Lasso and Marquee tools. I then duplicate the graphic to a new layer and try some Art filters on it. Generally I reduce the opacity of the filtered layer, allowing the original image to show below it. This reduces the extremity of the filter and gives me more control of the the finished image.

Love Hate too

A lot of the images I’ve worked on with this process are monotone, which just happens to suit the style of the web pages I’m making them for. If adding colour, I’d probably export each individual layer from MyPaint as a transparent .PNG, and bring them all in as layers into Photoshop for further work. I’d like to do some portraits to further explore this technique. While the graphic says “Love Hate”, it’s really “Love Love” for the process.

Blink!

Posted: 22nd May 2013 by Peter in Uncategorized
Comments Off

…or rather, “don’t blink!”.

Hands up, I’m guilty of totally neglecting this blog, sorry RobotBash. Before you shoot, I can explain…but first;

Check out the new Games gallery with lots of recent work.

Game Dev

Anyhow, I finally landed a job in the games industry with a company called Zoodazzle. We make a game authoring software called GameCarver, and I have been eating, breathing and dreaming that software for the past 4 months. This suits my personality, and it’s easy to do when I believe in the product.

It’s been an exciting 4 months, my tasks have included corp branding, rejigging the existing website (CSS and content), video, print design for business cards, pop-up banners, t-shirts, posters, and flyers. Concept artwork and logo design, community management, software UI design, and most exciting of all, graphics for several game demos (This is where the rubber certainly meets the road!)

Having been a contractor most of my career, it’s been quite some time since I’ve truly worked in a team environment. In that regard I couldn’t have hoped for better, Zoodazzler’s are da BOMB!

cargamecarverA Moving Story…

No, I’m not going to tell you a tear jerker story that’ll have you weeping. We’re (my family) moving to Dublin within the next month or so. I’d like to say the weekly 420 mile round commute to Kerry has been fun, but I’d be lying. At least I had Cormac Battle’s 2FM BattleAxe tunes to keep me company part of the way every Sunday… I won’t disclose the exact location of our new homestead, but let’s just say it ticks all the boxes for our little family. Looking forward to finally settling in.

Back To The Games Scene

Game_Craft_2

The indie games scene is really vibrant in Dublin, and I’ve enjoyed a couple of game jams and some industry events since commencing work with Zoodazzle. I’ve been involved in creative concepts and development all of my career, but I think the indie games industry is the most creative I’ve encountered. The variety of skills from coding to audio are covered, and seeing how people with different communication styles and disciplines can work together and respect each others ideas and work methodologies is very encouraging. This is a young industry, and every game dev potentially can contribute something new regarding work methods and concepts.

Connect

I’d love to connect with game developers (aspiring or veterans) and artists/illustrators; people who might actually like to meet in person from time-to-time, and have a passion for what they do.

Connect with me at the following and PM me to say hi!

http://robotbash.deviantart.com/
https://twitter.com/RobotBash

 

Global Game Jam – 2013

Posted: 29th January 2013 by Peter in Irish Games Industry News
Tags:

global-game-jam-2013Finally I have time to blog about my experience at my very first Game Jam. It wasn’t just any old game jam, it was THE game jam event of the year – The Global Game Jam!

I joined my fellow creative and games enthusiasts at Griffith College, South Circular Road, Dublin in ‘The Bunker’ for much of the 48 hour event. This was one of two registered sites in Ireland, the second was in Tipperary.  Around 50 people attended the event at Griffith College (of around 11k participants globally), and I have to tip my hat to lecturer Eoin Carroll for organizing and managing the weekend. This can only be a good thing for Griffith College’s game and computer sciences profile.

This being my first game jam, I was going in alone and not too sure what to expect. The vast majority of developers there were students (mostly from my good old college in Ballyfermot, the rest from Griffith College, some from Pulse and so on). I think there were a handful of non-students in the mix too.  Luckily I’d made contact with Mariano from Bright Head Games Studio a few months before the jam, via GameDevelopers.ie. I met Mariano for the first time on the day, and he generously invited me to join his team. Great guy, as are the other guys, Ed and Zafer from Bright Head and the rest of the team.

The global organizers of the event provided simple title for the theme, ‘Heartbeat’. Our group came up with various ideas for the game, choose one and got to work. I worked mainly on 2D artwork and learned a lot from the other more experienced guys on the team. We used GameMaker to build the game, which is great for fast development for multi-platforms. Other groups used Unity3D and UDK, maybe other software too. 

Unfortunately the GlobalGameJam.org servers couldn’t handle the amount of game uploads hitting it when the event reached the final minute of the 48th hour! However, we proceeded with the presentations and all teams showed their work on a projector screen, and explained the process behind their thinking and work. All feedback was constructive and positive.

gamejam2013I’d encourage anyone who’s interested in game development (student or not) to attend other game  jam events that go on throughout the year. This is a highly creative,  fun, and co-operative community that freely share knowledge and their passion for game development with each other. The participants included a cross section of programmers, artists, game designers, and at least one VERY busy audio guy (I’ll have to get his name and link here). Looking forward to future game jams!

Inspired to pick up the stylus pen after months of programming studies, I made this sci-fi digital painting for fun. Click the image to enlarge.

Monster Truck Digital Painting

It’s been a while, but boy have I been busy! As the blog post title suggests, I am now a certified Java programmer, with a 90% passing grade. I won’t lie, it wasn’t easy, but it’s done! While I may not be working with Java in the immediate future, it looks like PHP is on the cards (with many other disciplines), and I’m looking forward to applying all I have learned about programming to PHP projects.

While preparing for the Java exam, I also did a lot of job interviews, which is almost a full-time job in itself! Combined with the exam pressure, it was pretty exhausting, but ultimately worth all the effort. I had a few ‘hot leads’ and am delighted to say I am soon to commence working with an exciting technology start-up based in Dublin. More on that in the near future…

Anyway, just to prove I haven’t forgotten how to use a stylus pen, my next post has a digital painting I did yesterday for the ‘craic’. Hope you like! 

 

This is a little snippet of code I wrote for destroying an object in a game I’m working on with pals. See the comments in the code for an explanation. I used currentTimeMillis(); just to check that the code was working as it should, and left it in for demonstration purpose. The output is:

Baddie hits wall, start timer: 
Baddie is dead!
Time Taken: 3000
BUILD SUCCESSFUL (total time: 3 seconds)

Of course, the above output will not display in the game, the action will be represented with an animated ‘Sprite’ of some sort meeting a grizzly death.

/*
* This program will be attached to a game character, the 'Baddie'.
* When Baddie collides with a wall, he hangs around for 3 seconds (roughly)
* then he dies.
* This program is the timer delay logic used to destroy the character.
*/

import java.util.Timer;
import java.util.TimerTask;

public class TimerDelayTask {
//properties
static Timer timer;
static TimerTask TimerTask;
static long startTime = 0L;
static long elapsedTime = 0L;
static int seconds = 0;

//constructor
public TimerDelayTask(int seconds) {
timer = new Timer();
timer.schedule(new Reminder(), seconds * 1000);
startTime = System.currentTimeMillis();
}
//inner class

class Reminder extends TimerTask {

@Override
public void run() {
System.out.println("Baddie is dead!");
timer.cancel();
System.out.print("Time Taken: ");
System.out.println(elapsedTime = System.currentTimeMillis() - startTime);
}
}

public static void main(String[] args) {
new TimerDelayTask(3);
System.out.println("Baddie hits wall, start timer: ");
}
}

TreeSet For Sorting Order

Posted: 21st November 2012 by Peter in Java
Tags: , , ,

We’re covering ‘Collections’, ‘Collection’ and erm…’collection’ in Java Programmer 6 at the moment. I’m familiarizing myself with the various Sets, Lists and Maps.

A TreeSet orders its elements using ‘natural ordering’, i.e. alphabetical order for Strings, numerical order for ints. This is a very useful feature of the TreeSet that I wanted to experiment with. I wrote the following program that uses an overloaded method ‘getSortedTreeSet’ that will take a String array, or an int array, and return them as an ordered String for output.

/*
* Take in a String array, sort the contents into alphabetical order
* and return the ordered contents as a String. Then do the same for an
* int array, overloading the method.
*/

import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;

public class SetsListsMaps {

public static void main(String[] args) {

//String array and related String method output
String[] strAr = {"b","c","f","a","d","e","i","h","j","g"};
System.out.println(getSortedTreeSet(strAr));

//int array and related String method output
int[] intAr = {9, 5, 1, 8, 4, 6, 2, 3, 7, 0};
System.out.println(getSortedTreeSet(intAr));
}
//method

public static String getSortedTreeSet(String[] ar) {
String str = "";
String[] myStrAr = ar;

//create TreeSet...
Set set = new TreeSet();
for (String strTemp : myStrAr) {
set.add(strTemp);
}

//TreeSet to String
//Iterator hasNext() and next()
Iterator iter = set.iterator();
while (iter.hasNext()) {
str += (String) iter.next() + " ";
}
return str;
}

//The following is the same as above, but with Integers
public static String getSortedTreeSet(int[] ar) {
String result = "";
int[] myInt = ar;

//create TreeSet...
Set set = new TreeSet();
for (Integer intTemp : myInt) {
set.add(intTemp);
}

//TreeSet to String
//Iterator hasNext() and next()
Iterator iter = set.iterator();
while (iter.hasNext()) {
result += (Integer) iter.next() + " ";
}
return result;
}
}