Home > life, Unity3D > Unity 3 Game Development Hotshot book – Chapter 1 Review

Unity 3 Game Development Hotshot book – Chapter 1 Review

Unity 3 Game Development - HOTSHOTI was just browsing Amazon last weekend and this book came up along with the sea of beginner books for Unity3D.

Dang! I am excited.How did I not know about this earlier? How can a book like this just pop up out of nowhere?

I am tired of learning about how to use the terrain tool or create materials from beginner books. I don’t know what the HOTSHOT means in the title, but I guess it is like only bigshots can handle this book. Bring it on!!

Here are a couple of links to descriptions and one review so far on Amazon. You can do a search on it just as easily as me, but I am a proponent of being lazy with just making a link available.

Amazon Link  Pakt Link

I had to buy it of course. Read and worked through the first chapter today. Here are some points about my first impression of what to expect.

  • Advanced – Goes right into the meat and potatoes without any explanation of basic concepts.
  • Kindle version is hard to read the code and no bolding (a little more challenging to sift through code to see what changed).
  • A few bugs in the code, but I kind of like it because it makes you think about it. When you have to fix something, you take more time to understand how the code works.
  • Little to no fluff! I hate fluff and all of the superfluous chatter that some books have saying things in round-about ways. Great for marketing, bad for learning.

Just by clicking through the book (I have the Kindle), the book is looking very rich in good content. Can’t wait to read the rest.

Has anyone else read this book? I would love to hear what their feedback is on it. It seems to be pretty good so far.

 

Share and Enjoy:
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Twitter
  • Google Bookmarks
  • PDF

life, Unity3D

  1. October 9th, 2011 at 23:54 | #1

    I see the the first project is in 2d. That’s pretty exciting to me. Are they using any of the 2d frameworks, or building it all from scratch? Also, is there any special mention about keeping resource usage down for mobile platforms?

    If so, I think I’d be interested in buying a copy too. (I haven’t started on my next game yet, so I could switch to Unity. It’s something I’ve considered.)

  2. Scott Petrovic
    October 10th, 2011 at 17:37 | #2

    Thanks for the comment! hey Jesse. the project is being done from the ground up. There isn’t much to it. There are just a few arrays that are being used that store the different states. There is an offsetTexture function for materials that he uses to make the animations work. Everything else are using other controllers to deal with the mouse and keyboard input.

  3. Pheo
    October 31st, 2011 at 20:44 | #3

    I have read chapter 1. Pretty exciting. But i don’t quite understand why the author scripted his code in certain way that makes little sense to me. For example, for the CharacterController_2D.js, to loop a series of pics (in a single texture jpg) through a plane gameobject, he wrote (line 77-80):

    if (in_gridY > 1) {
    //If there is more than one grid on the y-axis update the texture
    in_col = Mathf.Ceil(in_curFrame/in_gridX);
    }

    The problem is in_curFrame and in_gridX are both integers, and so in_curFrame/in_gridX will always return integer, e.g. 1/2 returns 0 and not 0.5. And so why Mathf.ceil???

  4. Scott Petrovic
    November 1st, 2011 at 17:45 | #4

    hi Pheo,

    To understand it, I first think it is good to understand what each variable is

    in_gridY = the total number of rows in the sprite map ( images will be across and stacked if more than 1)

    in_curFrame = current state of the animation. If the sprite map is 3 horizontal by 2 vertical (6 states), this number could range from 1-6.

    in_gridX = total number of images that go horizontal across the image map

    The only time that conditional will be ran is if the sprite map has stacked images like a two story building would be stacked.

    If a sprite map has 6 states(3 on the top, 3 on the bottom), the manager needs to know which row it is in. The bottom or the top?

    Dividing the current state (in_curFrame) by the amount of horizontal states (3 in my example), it can find out if the image location is on the bottom or top. If it is on state 4, doing the Math.Ceil() will return 2, since 4/3 is more than one.

    Going with our 3 x 2 sprite map, the main thing to see is that it divides the current element by the total elements horizontally. All it needs to know is that if the current state is 4, it needs to go to the bottom row to get the right image. The whole number is all that matters. You will always round up since there is no image at 3 1/2 places.

    I don’t know if that was confusing, probably a picture would explain this a little more concisely and clearly.

  5. Pheo
    November 2nd, 2011 at 05:00 | #5

    4/3 = 1 … not 1.333 since both 4 and 3 are integers, unless you are doing 4.0/3 = 1.3333.
    I hope you see my point.

    If you don’t believe, put a print() or Debug.Log():

    Debug.Log(in_curFrame/in_gridX);

    You will see that it never returns a float. So Math.ceil() here is redundant. Instead, because we are doing an integer division, we will always get a “round-down” result.

  6. Scott Petrovic
    November 2nd, 2011 at 21:11 | #6

    wow, you are right. I didn’t realize the int division would also return an int. Removing the Math.ceil() function doesn’t affect the animation at all. You really looked at this code with a fine-toothed comb. I just got the basic idea and moved on before. Good job.

  7. Ed
    November 23rd, 2011 at 12:35 | #7

    Does the kindle version come with some sort of dvd with the contents?

  8. Scott Petrovic
    November 24th, 2011 at 11:05 | #8

    no, the book doesn’t come with any type of CD or DVD. With all of the books that I have ever bought from Pakt Publishing, they give you a URL to download the content. The URL is at beginning of the book before it starts getting into the content. It has the project files for each chapter. The thing I used the most was grabbing the completed scripts so I wouldn’t have to write out all of the code again. hope that helps.

  1. No trackbacks yet.