Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Hands-On Unity 2021 Game Development
Hands-On Unity 2021 Game Development

Hands-On Unity 2021 Game Development: Create, customize, and optimize your own professional games from scratch with Unity 2021 , Second Edition

Arrow left icon
Profile Icon Nicolas Alejandro Borromeo
Arrow right icon
R$80 R$196.99
Full star icon Full star icon Full star icon Full star icon Half star icon 4.1 (22 Ratings)
eBook Aug 2021 710 pages 2nd Edition
eBook
R$80 R$196.99
Paperback
R$245.99
Subscription
Free Trial
Renews at R$50p/m
Arrow left icon
Profile Icon Nicolas Alejandro Borromeo
Arrow right icon
R$80 R$196.99
Full star icon Full star icon Full star icon Full star icon Half star icon 4.1 (22 Ratings)
eBook Aug 2021 710 pages 2nd Edition
eBook
R$80 R$196.99
Paperback
R$245.99
Subscription
Free Trial
Renews at R$50p/m
eBook
R$80 R$196.99
Paperback
R$245.99
Subscription
Free Trial
Renews at R$50p/m

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Product feature icon AI Assistant (beta) to help accelerate your learning
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Table of content icon View table of contents Preview book icon Preview Book

Hands-On Unity 2021 Game Development

Chapter 1: Designing a Game from Scratch

Welcome to the first chapter of the book! I am sure you are as super excited as I am to start this amazing journey into game development with Unity. We will be approaching game development in four parts. First, we will be talking about the basics of game development, looking at topics such as how to design your game before you start coding, and then we will prototype a simple first level using Unity. Then, we will dive into graphics to explore the look and feel of a good game. Later, we will learn how to get everything moving through the use of scripting. Finally, we will see how you can finish and publish your game. As you go through the chapters, you will apply every concept to a full game project, so you will end the book with a fully functional shooter game.

In this chapter, we will design our game, Super Shooter. This phase is known as pre-production, where we will create a development plan. Our game design will include all the functionality we want in our game: the player character, the non-player characters, game assets, animations, and more. We will also use screen mock-ups to document our game's design. We will look at related concepts regarding the use of Unity for our game along the way. We will be discussing which pieces of documentation are necessary for all design work we will be doing throughout this chapter.

Specifically, we will examine the following concepts in this chapter:

  • Game concept
  • Game characters
  • Gameplay
  • The difficulty balance
  • Documentation

Game concept

Why not just start developing our game instead of designing it? This question is spawned from the excitement of developing games, especially with the Unity game engine. All games start with an idea. That idea is translated into a design, and that design is the basis for development and, eventually, the final game.

A game's design is like a blueprint for a house. You would not consider building a house without a blueprint, and it is an equally bad idea to develop a game without designing it first. The reason for this is to save time and frustration. For larger projects, time wasted also means unnecessary funds are expended.

Imagine that you employed a project team of 12 developers, animators, and artists. If you shared your game idea, would they have enough information to go on? Would they create a great game, but not the game you had in mind? All we are doing with our game design is documenting as much as we can in the beginning so that the development process is purposeful. Without question, you will continually modify your game's design during development, so having a strong base from which to start is critical to your success.

Our game design will serve as the foundation for the look of our game, what the player's objectives are, what the gameplay will be, supporting user actions, animations, audio, Artificial Intelligence (AI), and victory conditions. That is a lot to think about and underscores the importance of translating the game idea into the game design.

Throughout the book, we will be covering a range of components. However, in this section, we will cover those that appear in the following list:

  • Game idea
  • Input controls
  • Winning and losing

So, let's look at each component in more detail.

Game idea

The basic concept of our Super Shooter game is that it will be a 3D game featuring a Futuristic Hero Soldier as the player character. The character must fight against Enemy Soldiers, who are intent on destroying our Hero's base and anyone that gets in their way, including our Hero.

Here is an image of what our game will look like:

Figure 1.1 – Our hero shooting bullets at enemies

Figure 1.1 – Our hero shooting bullets at enemies

Now that we have a general idea of what the game is going to be, let's talk about how the player will control the character.

Input controls

It is important to consider how players will interact with our game. Players have an expectation that the industry norms for user controls will be implemented in games, which is why, for our example, the player will control our Hero using the standard set of controls.

Our default set of user input controls, as shown in the following figure, will consist of the keyboard and mouse:

Figure 1.2 – Controls scheme

Figure 1.2 – Controls scheme

We will configure and program our game so that user input from the keyboard matches the key and action pairings shown in the following table:

Figure 1.3 – Key mapping

Figure 1.3 – Key mapping

The mouse will also be a significant source of user input. We will implement two components using the mouse, as indicated in the following table:

Figure 1.4 – Mouse mapping

Figure 1.4 – Mouse mapping

The left mouse button will be our action button to shoot bullets, while the horizontal mouse motion will allow us to rotate our character and face the enemies. As all enemies and the player are going to be moving across a flat surface, it is not necessary to move the camera up and down.

That's how we handle input, but we also need to end the game session at some point! Let's talk about how the player will win and lose.

Winning and losing

Our winning condition will be when all the Enemy waves have been eliminated.

There will be two different ways the player can lose the game:

  • The first losing condition is when the base life becomes 0.
  • The second losing condition is if the Hero's life becomes 0.

From this short description, you can tell that there will be several things to keep track of, including the following:

  • The number of remaining Waves
  • The health of the Player's Base
  • The health of our Hero

Now that we have defined what is called the game's core loop (start a level, play it, win/lose it, repeat), let's dive deeper into the specific details, starting with our characters.

Game characters

Our game will feature several objects, but only two game characters. The first game character is our Hero and will be controlled by the player. The second type of game character is the Enemies. They are non-player characters that are controlled by AI. Let's look more closely at both of these characters.

Hero

The player will play our game as the Hero, our game's protagonist. So, what can our Hero player character do? We already know we will be able to move them throughout our game environment using a combination of keyboard and mouse inputs. We also know that the left mouse button—our action button—will cause them to shoot bullets.

Important note

Because the Hero is controlled by a human player, it is referred to as the Player Character.

We will implement the following animations for the Hero:

  • Idle: This animation will play when the character is not being moved by the player.
  • Run: This animation will play when the character is being moved by the player.
  • Shoot: This is an animation that will cause the Hero to shoot a bullet.

That's our player. Now, let's discuss our enemy character.

Enemies

Our game's antagonists will be Enemy Soldiers. We will control how many of them we want in our game and where they are placed. We will also control their behavior through AI. The Enemies will go straight to the base and, once there, they will start damaging it. We will determine how long it takes for our base to be completely destroyed. If during their journey to the base, the enemy encounters the player, they will prioritize shooting at them.

Important note:

Because the Enemy is controlled by AI and not a human player, it is referred to as a Non-Player Character (NPC).

The soldiers will share the following two animations, which the Player Character also uses, but they will be executed in different scenarios:

  • Run: This animation will play when the Enemy's AI is moving the enemy toward the base.
  • Shoot: This is an animation that will be played when the AI decides to shoot at the Player's Base or the Player's Character.

Careful planning and scripting will be required to create the desired Enemy behaviors; this will include decisions regarding the number and placement of the Enemies, and we will be tackling this during the designing phase and also during the development.

Now that we have defined our characters, let's discuss how the game will be played, looking at the specific details.

Gameplay

The game will start with the player in the center of the game world. The Hero, controlled by the player, will need to defend the Base from the Enemies. To fend off the Enemies, the Hero can shoot bullets. The goal is to defeat all the Enemies before the Base is completely destroyed by them.

Let's look at how we will make all this happen. The following gameplay components are covered in this section:

  • Game-world layout
  • Starting condition
  • Ending condition
  • Point system
  • Heads-Up Display (HUD)

We will cover each of the preceding components and discuss how they change the game experience. Let's start by talking about how the game world will be designed.

Game-world layout

We will create a base environment that consists of large metallic floor tiles, walls, and doors where the enemies will spawn. The base building will be located at the opposite end of the Enemies' Spawn positions (the Doors in the following figure), where the enemies need to reach to start attacking it.

Here is a mock-up of the shape our game world will take:

Figure 1.5 – Base layout

Figure 1.5 – Base layout

There are four basic things illustrated in the preceding mock-up, listed as follows:

  • Wall: Impenetrable barriers that prevent the player from going outside the play area.
  • Door: Impenetrable, like the walls, but will also serve as the Spawn Position of the Enemies. The Enemies will spawn behind them and can penetrate them to enter our Base Area.
  • Player Start: This is the Hero's start position.
  • Base Building: Our Base. The enemies must be close enough to attack it.

With our base-level design finished, let's discuss how the player will enter that world.

Starting condition

When our game is first launched, we will have several starting conditions set. Here is a list of those conditions:

  • The number and placement of Enemies' Spawn Points: As you saw in our earlier mock-up, there will be several possible spawn points in the game (the doors).
  • The number of Waves, the number of Enemies in each Wave, and how often the enemies will spawn: We will write a script to spawn waves of enemies, which will be used for each wave.
  • Our final starting condition is the base placement: As you can see from the preceding figure, this is placed on the opposite side of the doors—so, the enemy must traverse the whole empty space between them, giving the player a chance to attack them.

We have defined the enemy spawning rules and how the player can play the game. Now, let's talk about how the game will end, looking at the exact implementation of this.

Ending condition

So far, we have established that we will track several components in the game. They are as follows:

  • Remaining Waves: A wave is considered finished when all enemies in it die.
  • Base Health: Damaged by the enemies.
  • Player Health: Also damaged by the enemies.

Based on what we decided earlier regarding the end-of-game condition, we can apply the following mathematical checks to determine whether the game has ended and what the outcome is. Each end-of-game condition is listed in the following table, along with the outcome:

Figure 1.6 – End-of-game conditions

Figure 1.6 – End-of-game conditions

In order to implement these three end-of-game conditions, we know we must track the number of waves, player health, and base health.

Now that we have a full game, let's think about how we can make it more rewarding, by implementing a classic point system.

Point system

Since we are tracking key information that involves numbers, it makes it easy for us to implement a point system. We could, for example, give the player 50 points each time an Enemy is exterminated, and we could also take away points each time an Enemy causes damage to the base. In our case, we will settle with just giving points when Enemies are killed, but you can feel free to expand this area if you want to.

Now, we have several systems that the player needs to be aware of, but right now, the player hasn't got any way to make informed decisions about those systems. So, let's see how we can improve that, using an HUD.

HUD

We have decided to keep track of information during gameplay that has value beyond calculating points at the end of the game. The player will want to see this information as it tends to provide motivation and adds to the fun of the game. So, we will create an HUD for the player, and dynamically update the data in the game.

Important note:

An HUD is a visual layer of information that is always present on the screen.

Here is a mock-up of what our HUD will look like in our Super Shooter game:

Figure 1.7 – UI layout

Figure 1.7 – UI layout

As you can see, there are several components to our HUD, as follows:

  • Hero Health: A classic health bar that allows us to see the amount of life left. We choose a bar instead of a number because it is easier to see in the middle of an intense fight, instead of reading a number.
  • Hero Avatar: An image next to the health bar just to show our Hero's face.
  • Score: The number of points we have gathered.
  • Bullets: The number of bullets remaining. The player must check this number frequently to avoid running out of bullets, as they are limited. Anyway, at the end of the book, you will be more than capable of creating a bullet-drop system if you want to.
  • Remaining Waves / Remaining Enemies: Information about the current state of the wave and game, just to let the player know when the game is going to end, putting some pressure on them in the process.
  • Base Health: Another important piece of information so the player can see the health of the Base. It's of a sufficient size to let the player notice when the base is being attacked and take action in that case.

Finally, we have a simple, yet fully fledged starter game design with lots of rules and specifications about how it will behave, and we can start creating our game right now. However, there's a good practice that is never too soon to implement: balancing the game's difficulty.

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Unleash the capabilities of C# scripting to create UIs, graphics, game AI agents and more
  • Explore Unity's latest tools, including Universal Render Pipeline, Shader Graph, UI Toolkit, Visual Scripting, and VFX graph, to enhance graphics and animation
  • Build an AR experience using Unity’s AR Foundation

Description

Learning how to use Unity is the quickest way to creating a full game, but that’s not all you can do with this simple, yet comprehensive suite of video game development tools – Unity is just as useful for creating AR/VR experiences, complex simulations, real-time realistic rendering, films, and practical games for training and education. Hands-On Unity 2021 Game Development outlines a practical journey to creating your first full game from the ground up, building it step-by-step and applying your knowledge as you progress. Complete with hands-on tutorials and projects, this easy-to-follow guide will teach you how to develop the game using several Unity tools. As you advance, you will learn how to use the Unity engine, create simple scripts using C#, integrate graphics, sound, and animations, and manipulate physics to create interesting mechanics for your game. You’ll be able to apply all the knowledge that you gain to a real-world game. Later chapters will show you how to code a simple AI agent to challenge the user and use profiling tools to ensure that the code runs efficiently. Finally, you'll work with Unity's AR tools to create AR experiences for 3D apps and games. By the end of this Unity book, you will have created a complete game and built a solid foundation in using a wide variety of Unity tools.

Who is this book for?

This book is best suited for game developers looking to upgrade their knowledge and those who want to migrate their existing skills to the Unity game engine. Those with prior Unity knowledge will also benefit from the chapters exploring the latest features. While you’ll still able to follow along if you don’t have any programming experience, knowing the fundamentals of C# programming will help you get the most out of this book.

What you will learn

  • Explore both C# and Visual Scripting tools to customize various aspects of a game, such as physics, gameplay, and the UI
  • Program rich shaders and effects using Unity s new Shader Graph and Universal Render Pipeline
  • Implement postprocessing to improve graphics quality with full-screen effects
  • Create rich particle systems for your Unity games from scratch using VFX Graph and Shuriken
  • Add animations to your game using the Animator, Cinemachine, and Timeline
  • Use the brand new UI Toolkit package to create user interfaces
  • Implement game AI to control character behavior

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Aug 20, 2021
Length: 710 pages
Edition : 2nd
Language : English
ISBN-13 : 9781801077286
Languages :
Tools :

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Product feature icon AI Assistant (beta) to help accelerate your learning
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Product Details

Publication date : Aug 20, 2021
Length: 710 pages
Edition : 2nd
Language : English
ISBN-13 : 9781801077286
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
R$50 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
R$500 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just R$25 each
Feature tick icon Exclusive print discounts
R$800 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just R$25 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total R$ 903.97
Unity 2021 Cookbook
R$306.99
Hands-On Unity 2021 Game Development
R$245.99
Learning C# by Developing Games with Unity 2021
R$350.99
Total R$ 903.97 Stars icon

Table of Contents

28 Chapters
Section 1 – Our First Level Chevron down icon Chevron up icon
Chapter 1: Designing a Game from Scratch Chevron down icon Chevron up icon
Chapter 2: Setting Up Unity Chevron down icon Chevron up icon
Chapter 3: Working with Scenes and Game Objects Chevron down icon Chevron up icon
Chapter 4: Grayboxing with Terrain and ProBuilder Chevron down icon Chevron up icon
Chapter 5: Importing and Integrating Assets Chevron down icon Chevron up icon
Section 2 – Improving Graphics and Sound Chevron down icon Chevron up icon
Chapter 6: Materials and Effects with URP and Shader Graph Chevron down icon Chevron up icon
Chapter 7: Visual Effects with Particle Systems and Visual Effect Graph Chevron down icon Chevron up icon
Chapter 8: Lighting Using the Universal Render Pipeline Chevron down icon Chevron up icon
Chapter 9: Fullscreen Effects with Postprocessing Chevron down icon Chevron up icon
Chapter 10: Sound and Music Integration Chevron down icon Chevron up icon
Chapter 11: User Interface Design Chevron down icon Chevron up icon
Chapter 12: Creating a UI with the UI Toolkit Chevron down icon Chevron up icon
Chapter 13: Creating Animations with Animator, Cinemachine, and Timeline Chevron down icon Chevron up icon
Section 3 – Scripting Level Interactivity with C# Chevron down icon Chevron up icon
Chapter 14: Introduction to C# and Visual Scripting Chevron down icon Chevron up icon
Chapter 15: Implementing Movement and Spawning Chevron down icon Chevron up icon
Chapter 16: Physics Collisions and Health System Chevron down icon Chevron up icon
Chapter 17: Win and Lose Condition Chevron down icon Chevron up icon
Chapter 18: Scripting the UI, Sounds, and Graphics Chevron down icon Chevron up icon
Chapter 19: Implementing Game AI for Building Enemies Chevron down icon Chevron up icon
Chapter 20: Scene Performance Optimization Chevron down icon Chevron up icon
Section 4 – Releasing Your Game Chevron down icon Chevron up icon
Chapter 21: Building the Project Chevron down icon Chevron up icon
Chapter 22: Finishing Touches Chevron down icon Chevron up icon
Chapter 23: Augmented Reality in Unity Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Full star icon Half star icon 4.1
(22 Ratings)
5 star 68.2%
4 star 9.1%
3 star 4.5%
2 star 4.5%
1 star 13.6%
Filter icon Filter
Top Reviews

Filter reviews by




Melisa Bersais Oct 21, 2021
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I like how it takes you step by step from the design of the game til building itSome cool things I read in this book that are in the new versions of unity: prefab variants, Shader Graph, Vfx Graph, Cinemachine and Universal render pipelineIt’s a great book for beginners and also for experienced users who will find good explanations of how things work internally like for example the shader pipeline.It is well written and very easy to follow. I highly recommend it.
Amazon Verified review Amazon
Fabian Sep 30, 2021
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I totally recommend this book, it's easy to follow, practical and deeply focused on results.
Amazon Verified review Amazon
Gabriel Z. Oct 13, 2023
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I have finally read through this book and all I can say is, it proved to have been an excellent choice to buy it. As someone who has always been interested in developing video games and already gone trough several books I was searching for something more advanced. Not only has this book provided me with those advanced tools to use in Unity, but I also read through the beginning chapters just to refresh my memory and it was extremely beginners friendly. I love how it gradually went from putting objects in the scene to eventually program AI behavior. I truly recommend buying this book, no matter if you just started to game dev or have advanced.
Amazon Verified review Amazon
Sahand Jul 09, 2024
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This book takes you from start to finish making a very basic FPS Game. It is a very practical book in nature so it can be a bit overwhelming when you are an absolut beginner with no coding experience what so ever. That being said the autor tries to convey the concepts in a understandable and lean way and cut away all the fat that most books carry. i really liked it and worked all the way through without any problems.
Amazon Verified review Amazon
Guillermo Nov 26, 2021
Full star icon Full star icon Full star icon Full star icon Full star icon 5
The book is very detailed building a good base of concepts accompanied by a good illustration and screenshots that if we add the step-by-step explanation makes it accessible and clear for both beginners and more experienced users.I also want to highlight the tour of the latest featured Unity tools, from Visual Scripting, Probuilder among others.Clearly this book is a high recommendation for all those who want to have an excellent base in video game development.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.