Archive

Archive for the ‘Game Dev’ Category

Unity Build 02

October 19th, 2012 Comments off

Here’s the link to newest build: Right here!

Build Notes:

Added Spawn Diversity – randomized X and Z coordinates every time a new enemy is instantiated. Y is height, so it stays at ground level. Though the idea of cubes raining from above is pretty awesome…

Score System – keeps track of how many enemies the player has killed, and resets on level reload.

“Q” Menu – playing around with the GUI, so I added a reset button to the menu (which can be viewed by holding “Q”).

Added a quick and dirty “crosshair” – which is just an “X” placed in an invisible box in the center of the screen.

Flashlight starts defaulted to “Disabled” – Middle Mouse to re-enable.

Added Large Cube Enemies – similar to the small cubes, only larger.

Hid the mouse cursor when the game starts (unless you hold “Q” for the menu). This turned out to be in the HTML code for the Unity player. There may be a way to adjust the default template, but I haven’t looked into it yet.

 

 

Need to add/update:

Large Cubes have too large hit-boxes (colliders)

Player Health

Spawn “Safe Zone” – so that the cubes can’t spawn right on top of the player

Constrain Mouse Cursor to Game Box

Pause menu

Sound?

Categories: Game Dev Tags:

Unity: Test Build 01

October 18th, 2012 Comments off

My first exported game!! (Well I suppose “game” is probably more appropriate) You can try it out here – note: the first time you run it,  it will prompt you to download the web player for Unity, but it’s a one-time thing :)

It was pretty easy to start – the 3D scene viewer makes adding objects and understanding the game world a breeze.

 


I started out with adding a 1st person controller to a flat plane. From there, I added 4 walls, a big tree, and textures (all from the Standard Assets library). I made a prefab for the dastardly cube enemies, and made them spawnable with a right click. Here is the code for actual spawn:

var instanceEnemy = Instantiate(prefabEnemy, Vector3(0,0,0), transform.rotation);

Instantiate creates an object, named prefabEnemy, at location x=0, y=0, z=0, and uses the standard rotation (which I think is direction that it faces).

 

Pictured: Said Dastardly Cube

 

The flashlight mechanic is in this build as well (middle-click) to toggle on/off. The “flashlight” itself is just a directional light source parented to the main camera, while the toggle is simply light.enabled = !light.enabled;

The other lights in the scene are point lights with varying levels of range and color. When playing around with different colors, I liked the nighttime-feel of the blue, so I left it in :)

In testing out the reset mechanic, I used a sphere as the test object, so when you walk into the sphere, the level starts over from scratch.

 

 

The next few things to add are a score system, hide the mouse cursor, and a make a varying spawn system, so the enemy cubes don’t all spawn in the same spot. Though I will say it is a lot of fun to frantically right click, then line them all up and mow them down, literally like ducks in a row :)

Categories: Game Dev Tags:

Learning Unity

October 16th, 2012 Comments off

 

A few weeks ago, I volunteered to work at the Southern Interactive Entertainment & Game Expo (which I’m pretty sure is just a backronym for SIEGE), hosted by the Georgia Game Developers Association. It was a great event, with lots of industry professionals looking to network with students looking for jobs in the games industry. While there, I attended a few panels with really great game designers and programmers.

Chris DeLeon, in particular, was excellent. Sidebar: in looking for a link to add to his name, I found out he has a Unity tutorial on his site here, so I’m definitely going to be watching that! Anyways, he brought up the idea of quick iteration and rapid game development, which struck a chord with me and my quick-to-switch-projects nature. So hopefully, Unity’s quick learning curve and rapid prototyping will help me stay interested in it enough to see a project all the way through.

 

So what exactly is “Unity”? Unity is a 3-D game development engine – that is, software that helps you create and run 3D video games. It’s similar to the Unreal engine, Quake engine, or the Source engine , but simplified and streamlined – making it the perfect choice for a first-time game designer. Unity uses scripts written in C#, JavaScript, or Boo (which I’ve never even heard of). According to the Unity subreddit, C# is the crowd favorite language to use for new programmers, so that’s what I’ll be going with.

 

I’m going to be posting any examples or test games I make, along with some commentary about what I’ve done and how I did it. Hopefully over time I’ll be able to look back and see the improvements I make. In the mean time, check out this Unity tutorial from InfiniteAmmo:

 

Categories: Game Dev Tags: