Walker Boys Studio – Unity Training – Lab 3

This is my 3rd post related to Unity 3D and Walker Boys Studio’s free tutorials. I decided to start learning Unity and follow with the amazing tutorials created by them.

You can read more about this third lab by following this link: Walker Boys Studio – Unity Training – Lab 3.

If you want to see my result (a Unity Javascript class called “ClassTimeTool.js” and it’s implementation) please click on the image below.

Note that this is not intended to be a complete working game, it has been created in order to learn basic game development in Unity 3D. More complicated projects will follow but, for now, the target was to learn only the basic stuff around designing and implementing a set of tools in Unity Editor (mainly tools used to speed up the workflow).

Project Description

Student Name

Marcel Corbeanu, from Romania :-) .


05.06.2011 – 10.06.2011

Project Details

I’ll try to discuss below my solutions to each of the homeworks.

1. Complete a Folder Structure for your future projects

You can see my folder structure below. Note that it’s a not a “complicated” folder structure because it’s orientated around what we did so far (the first two labs) :-)

  • /_test
  • /_used
  • /Animations
  • /Fonts
  • /Materials & Shaders
  • /Prefabs
  • /Scenes
  • /Scripts
  • /Sounds


  • /_used – miscellaneous unused or unimportant stuff (things that I could delete at the end of the project)
  • /_test – usually I have a scene used just to test different things so I’m storing it here, along with any other elements that are used for it (mainly things not important for the main project)
  • /Sounds – project sounds (background sounds included)

2. Complete the Time Component with Functions or Class setup

There isn’t much to say here, only that I chose to create a class called ClassTimeTool.js. Note that it extends the Object class.

Methods list:

  • aniSprite(spriteObject, columnSize, rowSize, colFrameStart, rowFrameStart, totalFrames, type:String) – used for the sprites animation
  • MainLoop (withKeys : bool) – used as the main loop function (will be called inside the Update()) and also used to detect keys input (if specified so)
  • DoActionButton1()
  • DoActionButton2()
  • DoActionButton3()
  • DoActionButton4Up()
  • DoActionButton4Down()
  • DoActionButton5()
  • DoActionButton6()
  • DoActionButton7()
  • DoActionButtonT()
  • DoActionButton8()
  • DoActionButton9()
  • DoActionButton0()
  • GUIStuff()

Note that all the class methods are public (so that I’ll be able to use them in different combinations) but most of the variables are marked as private (because they are not needed to be used from outside).

3. Think about it: create an Editor Tool, Hotkey, etc, that will speed up your work

I made a custom command that allows me to actually enable/disable a GameObject using a Menu Item command or a key combination. You basically select a Game Object (using either the Scene view or the Hierarchy) and hit SHIFT+ALT+S to invert the current enable state (true/false).

Here’s the code below

@MenuItem (“Project Tools/Inverse Visibility &#_s”)

static function InverseVisibility(){



static function InverseVisibilityStuff(){

var go = Selection.activeObject;

if(go as GameObject != null){

EditorUtility.SetObjectEnabled(go, !EditorUtility.GetObjectEnabled(go));


print(“No Game Object was selected”);



Software Used

  • Unity 3D

Final Thoughts

I think you did, again, a great job by creating this 3rd lab.

I really liked the sprite sheet thing, I think it’s a pretty simple and yet powerful idea that can, not only that it can speed up my work, but it’ll also help me give some of my games a 2D feeling by actually creating the character animations in 2D (I’m currently using Toon Boom’s software for all my 2D work).

From what I see, I think we’ll be using the Time Component in the next project so  it’ll come in handy :-)

Break down your Time

  • Research
    • 3h:00 – when watching the videos as well as for the homework
  • Art
    • 0h:00
  • Design
    • 0h:00
  • Coding
    • 14h:00 – coding along with watching the videos
    • 3h:00 – homework + different testing, without any researching (see researching above)
  • Playtesting
    • 1h:00 maybe!?!

Thank you again for all your work in putting together the huge list of videos and the documentation for the tutorials, exams and labs.

Filed in: English, Unity 3D
Tags: , ,

Related Posts

Bookmark and Promote!

One Response to "Walker Boys Studio – Unity Training – Lab 3"

  1. alex says:


Leave a Reply

Submit Comment