Main Categories: | Landscape | Fenceposts | Wildlife | Trees | Mushrooms | Art | Games || All Posts ||
for daily images, visit my ||Tumblr||
Showing posts with label unity. Show all posts
Showing posts with label unity. Show all posts

Monday, 28 September 2015

Eyeball Manager Talk

I presented a short talk on writing an eyeball manager in Unity3d to the Brighton Unity Usergroup -  http://www.meetup.com/Brighton-Game-Collective/

I thought I’d try putting the slides up here. The text probably isn’t coherent enough, but the main point of the talk was to look at how much character you can add to a game object just by making their eyes move as if they are conscious of their surroundings.


Monday, 6 October 2014

Space Ribbon reveal

I've been messing around with an idea for a procedurally generated racing game: One player (can be AI) flies a spaceship which vomits racetrack out of its rear end as it zooms through space. The other players drive along this road and try and catch up!


The prototype is producing some really fun, vertigogenous courses. It will probably work best as quick-fire races 1-2 minutes long with scoring done over several races.

Anyway, here's a video of 4 AI drivers chasing me down:



Not sure when something playable will be available - it has some rough edges, no scoring, no sound and I need to attend to the graphical styling before unleash it, too.

Watch this space, but don't hold your breath! :-P

Friday, 29 August 2014

Caravan Defender

It's been a long time since my last successful game jam - that was the dotBrighton Game Jam in september 2012.

In the meantime I have tried to do Ludum Dare a few times, working at home, on my own, but I never get close to a finished product in the time allowed.

So it was great to sign up for Kiwijam 2014 - they set up a maker space in Auckland University and did a great job of organising stray individuals like me into teams ready to attempt the impossible - make a game in 48 hours!

Kiwijam maker space - humming with energy on Sunday afternoon, as the clock ticks down - will we get our games done?

My team decided to use Unity3d - such a good tool for rapid prototyping - and eventually we went with the idea of doing an RTS game about creating and defending caravan trade routes, and although we didn't have time for graphical niceties, or game structure, we did get the game engine functional within the time limit.

Screenshot from the version of Caravan Defenders presented at the end of Kiwijam.
I've published the game on itch.io for anyone who would like to mess around with the system. There is no way to win, unfortunately.

Click here to play!
 Enjoy!






Tuesday, 4 March 2014

Spirals

I wrote a while back about how elegant spirals can be in computer games - in particular, they are useful if you want to iteratively cover a space with evenly distributed points, with the range expanding out from a single starting location and with one growing tip - I have used them in the past for searching for a suitable placement point in a landscape for a game object, but I'm sure there are many other applications.


Anyway, I didn't include any code in that post, so here below is a Spiral function that is ready to use. This is written in C# for Unity, but should be easy enough to convert to whatever you happen to be using.

Vector3 Spiral( float dist, float spacing ) {
float rad = Mathf.Sqrt(  dist / (Mathf.PI*spacing ));
float angle = Mathf.PI * 2.0f * rad;
 
Vector3 retVal = Vector3.zero;
retVal.x = spacing * rad * Mathf.Sin( angle );
retVal.z = spacing * rad * Mathf.Cos( angle );
return retVal;
}



'dist' is the distance along the line of the spiral from the origin, and 'spacing' is how far apart you want the coils of the spiral to be from each other (this spiral has the handy attribute of maintaining a constant radial distance between each concentric coil.)

To achieve an even distribution of points, increment the distance param by the value of spacing - that way points will be equally distant form their neighbours on the line as they are from the neighbouring coils.

Here is a screen shot of the points generated by calling Spiral( dist, 1.0f ) with dist = [0,1,2,3...] As you can see, the unit spheres are packed pretty close to 1 unit apart:



Changing the spacing to 2.0f and iterating Spiral( dist, 2.0f) with  dist = [0,2,4,6,8...] will lead to each of the unit spheres having 1 unit's space between them:



...Spirals!