Creating a Game Design Document: Intro

Kevin James on a Rope Swing

Kevin James on a Rope Swing

For a lot of us amateur game designers, we didn’t really make any game design documents. We jumped into it like it was a cool swimming hole under a tire swing, and despite swimming around for a while, most of us washed ashore pretty quickly. Or got chomped by a gator, never to return.

A game design document (GDD) is a road map to your game’s creation. When you lose your way — and you usually will unless it’s a very concise project with a straightforward plan and you happen to be a very focused person — you can refer to your GDD. But there’s another reason to do this: you want to be able to explain your project’s innards to someone who is not familiar with your work at all.

Your GDD doesn’t have to be extremely complex or overly verbose. In fact, it should be simple for someone outside of your project to understand. It doesn’t have to be watered down enough for an Amish great-grandmother to understand though, you can assume that your audience understands the game industry and how games are made.

So, since only 3.28%* of people read text prefaces, let’s jump in this. I’m separating it into a few different posts because it’s quite long.

*Estimated guesstimate based on approximately nothing, give or take everything.

Unity Error: Material doesn’t have a texture property ‘_ShadowOffset’

Some textures will throw an error when you are trying to apply them. I encountered this when I tried to apply the BigTree_bark material to a tree branch. BigTree_branch did not give the error, so this is what I discovered:

Error:
Material doesn't have a texture property '_ShadowOffset'
UnityEditor.DockArea:OnGUI()

Explanation:
Read the rest of this entry »

Unity Error: Toolkit Warnings

Lately I’ve been getting these warnings in Unity3D v3.4. I looked into it, and it’s safe to ignore for now. Here’s some info about it:

Warning:

warning CS0618: `UnityEditor.EditorGUILayout.ObjectField(string, UnityEngine.Object, System.Type, params UnityEngine.GUILayoutOption[])’ is obsolete: `Check the docs for the usage of the new parameter ‘allowSceneObjects’.’

Explanation:
Parts of the code used in the toolkit were updated from an earlier version. They can be safely ignored and will probably be updated soon.

[Source]

BurgZergArcade Progress: Code Demo posted

Tut78: Extra Exercise. [Basic]

Here’s a basic exercise designed to test your understanding of functions in C#.

Exercise:
In Petey’s BurgZergArcade tutorial episode #78: Day Night Cycle part 7, take the if statement and turn it into a function with an appropriate call in the Start() function.

void Start() {
if(GetComponent() != null)
givesLight = true;
}

Hint:
Read the rest of this entry »

Gizmos won’t show up?

Problem:
You are using OnDrawGizmos to use DrawCube, but your cubes aren’t showing up.

Example:
using UnityEngine;
using System.Collections;

public class SpawnPoint : MonoBehaviour {

public void OnDrawGizmos(){
Gizmos.DrawCube(transform.position, new Vector3(2,2,2));
}
}

Solution:
Read the rest of this entry »

C# Error: Best Overloaded method for Vector3

Problem:

error CS1502: The best overloaded method match for `UnityEngine.Vector3.Vector3(float, float, float)’ has some invalid arguments

Example:
Gizmos.DrawCube(transform.position, new Vector3(0.5,0.5,3.0));

Explanation:
In order to explicitly declare that 0.5 is a float, you must include the f modifier.

Solution:
Read the rest of this entry »

WordPress/Site stuff

Trying to update a few things. The site may undergo some changes. Might transfer to my own host, etc. I’ll make a post later.

"Cowboy Game" Demo 1.2

I’m using the Protopack from Frogames for my animations, since it comes with enough assets (hopefully) to get this demo up and running. It cost ~$20 from the Unity Store, but it does seem to be very nice and enough to basically get me started here. I could have made my own models but I don’t have much time left (1 week) before classes start again, so this was a good alternative.

If you use Protopack 1.3, you’ll notice that some of the animations don’t work for the upper part of the body, such as “idle”, “walk”, etc. Those are designed to be used while holding a weapon, so they are waist down animations. If you want waist-up, you have to use up_* animations, such as up_idle.

Unity3d: Adding Mesh Collision

How to add Mesh Collision in Unity 3d:

In your prefab, go to Component -> Physics -> Mesh Collider.

Shouldn’t need to change anything.

« Older entries