Unity

I am following this magazine article on starting out in Unity Development. Current installment starts out describing the parts of a 3D scene:
  1. Lights
  2. Meshes
  3. Shaders
There are four types of lighting in Unity. One example is a directional light.

To understand meshes, we should start at the bottom. Vertexes define a polygon. The polygons make up your object. A mesh is a collection of the vertexes. Another name for mesh is model. You create your model outside of Unity with a product like Blender.

Shaders are code that describe how light interacts with your object. For example, your shader might project an image onto your object and show how shadows are formed.

Unity handles some of the movement details that I recall implementing in my last game by hand. Objects just don't jump around from one position to the next. The move slowly through each frame. This move is called tweening.

There are four coodinate systems to describe an object or point posisition in Unity:
  1. Screen space
  2. Viewport space
  3. World space
  4. Local space
Finally I will mention in passing that there are two particle systems available in Unity. There is an old one. But a new one called Shuriken is also available. The name sounds cool at least.

Yoda Stories LOL

Yoda Stories is some game from the 1990s. Just read an article on how Zack Barth reversed engineered the game's file format. The techniques used were very informative. He had played the game into oblivion. He uses deduction to figure out what is in the files, and how to read the data from them.

One real treat is how he finds the uncompressed image data. The he goes on to compare images that he extracts to what he sees in the game. The breakthrough is when he stumbles upon a color palette that makes all the extracted images looking good.

I will give one spoiler. Zack talks about, having full knowledge of the data files, being able to rewrite the game with some changes. Sounds like a nice project.

More Unity

I read another article on Unity development, and thought I should record some of the things I learned in case I need to come back to do some Unity game development. Here is something strange. Unity started out as a 3D development tool. They only later included support for 2D games in version 4.3 of their product. Seems backwards.

You import images into Unity as sprites. Heh. Not quite sure what sprite means in this context. But it apparently is something more than a texture. Those objects are then Sprite objects. Not sure what the Sprite class/object can do. You can also create a spritesheet, which is a file that has many images.

When doing 2D development, you have a choice of two different cameras. One is the perspective camera. It shows depth like human vision works. The other is the orthographic camera, which lacks depth.

Finally the GUI in Unity is being rewritten as we speak. Estimated release to happen in version 4.6. Right now you work with something called the legacy GUI. In the legacy GUI, the GUI objects are visible in the game view, but not in the scene view (which I suspect is the development mode). Ouch.

The conclusion of my reading was that there is a whole lot to learn about game developemnt with Unity, even for 2D games.

Book Jackpot

I have a day job. It pays the bills, and then some. It is development. However it is not game development. Recently my company purchased me access to Books 24x7. That's a web site that provides me with access to eBooks. A lot of them.

Right now I am reading an eBook on WordPress, because that's what I am studying at school. However I looked at the latest book releases on the site. There was a book on game development with Unity and Blender. Seemed a bit interesting.

Then I did a search for books on game development. Whoa. There were over one thousand hits. I have hit the technical book jackpot here.These are some books on page one of my query results:
  • Introduction to Game Development
  • Serious Game Design and Development
  • Game Development Principles
  • Beginning C++ Android Game Development
  • Professional HTML5 Mobile Game Development
  • Windows Phone 7 Game Development
  • Beginning iPhone Games Development
I am going to have to spend a lot of time just figuring out which of these delicious books to read next. There is not enough time for me to go through all the hot titles. Heck. I don't know if I even need to continue going to college. I can learn all this stuff by reading the books.

Super Slapping

Lenovo has started a contest that it announced on Reddit. They want you to create an 8-bit graphics style game. It is supposed to be based on Brad Blevins from the web show Tough Seasons. Brad is a cowboy hat wearing dude dressed in orange. Mkay.

Contest had some mickey mouse prize. $500 gift card or something. The cool thing is that I played one entry, Brad's Slapdown, which was tons of fun. You just slap this Lenovo computer. The fun is to buy power ups that increase your slapping power.

Check it out.