My Account Log in

3 options

The Android game developer's handbook : discover an all in one handbook to developing immersive and cross-platform Android games / Avisekhar Roy.

EBSCOhost Academic eBook Collection (North America) Available online

View online

EBSCOhost eBook Community College Collection Available online

View online

Ebook Central Academic Complete Available online

View online
Format:
Book
Author/Creator:
Roy, Avisekhar, author.
Series:
Community experience distilled.
Community experience distilled
Language:
English
Subjects (All):
Android (Electronic resource)--Handbooks, manuals, etc.
Android (Electronic resource).
Application software--Development.
Application software.
Mobile computing.
Physical Description:
1 online resource (369 pages) : color illustrations.
Edition:
1st ed.
Place of Publication:
Birmingham : Packt Publishing, 2016.
Biography/History:
Roy Avisekhar: Avisekhar Roy is a B. Tech engineer in computer science. He has had a passion for coding since his school days. However, he had no plans to become a game programmer. His fate landed him in the gaming industry in 2010. Since then, he fell in love with game development. Avisekhar has worked in many formats of game development environment, ranging from small companies and individual studios to corporate companies and full-scale game development studios. He recently started his own gaming start-up in 2016 and is currently working on games for the mobile platform. Avisekhar has also worked with some big companies, such as Reliance Games in India, as well as a small-scale studio called Nautilus Mobile. He is now trying to acquire a position in the gaming industry for his own venture, Funboat Games.
Summary:
About This BookPractical tips and tricks to develop powerful Android gamesLearn to successfully implement microtransactions and monitor the performance of your game once it's out live.Integrate Google's DIY VR tool and Google Cardboard into your games to join in on the VR revolutionWho This Book Is For This book is ideal for any game developer with prior knowledge of developing games in Android. A good understanding of game development and a basic knowledge of Android platform application development and Java/C++ will be helpful. What You Will LearnLearn the prospects of Android in game developmentUnderstand the Android architecture and explore the platform's limitations and variationsExplore the various approaches to game development using AndroidLearn about the common mistakes and possible solutions in Android game developmentDiscover the top cross-platform game engines and port games on to different Android platformsOptimize the memory and performance of your gameFamiliarize yourself with different ways to earn money from Android gamesIn Detail This book will help developers understand user behavior, to predict and create scopes of improvement in Android games The book begins with the guidelines of game development on the Android platform and a brief description of the current variants of Android devices available. Next, you will walk through the various tools available for developing Android games and learn how to choose the most appropriate tools for specific purposes. Later, you will focus on creation and maintenance of a game loop using the Android SDK, and learn about common mistakes in game development in order to avoid them and improve performance. Next, we will dive into shaders and learn how to optimize memory and performance. You will then learn testing and debugging Android games followed by an overview of virtual reality and how
to integrate it into Android games. Finally, you will explore the tools required to polish and finalize the game and possible integration of third-party tools or SDKs in order to monetize the game.
Contents:
Cover
Copyright
Credits
About the Author
About the Reviewer
www.PacktPub.com
Table of Contents
Preface
Chapter 1: Android Game Development
Android game development
Features and support
Challenges
User experience
Design constraints
A game is not just an application
Games versus applications
Life cycle of Android application and games
Performance of games and applications
Memory management of games and applications
Choosing the target device configuration
Game scale
Target audience
Feature requirement
Scope for portability
Best practices for making an Android game
Maintaining game quality
Minimalistic user interface
Supporting maximum resolutions
Supporting maximum devices
Background behavior
Interruption handling
Maintaining battery usage
Extended support for multiple visual quality
Introducing social networking and multiplayer
Summary
Chapter 2: Introduction to Different Android Platforms
Exploring Android mobiles
Exploring Android tablets
Exploring Android televisions and STBs
Exploring Android consoles
Exploring Android watches
Development insights on Android mobiles
Development insights on Android tablets
Development insights on Android TV and STBs
UI and game design
Overscan
Development insights on Android consoles
Development insights on Android watches
Creating and setting up a wearable application
Including the correct libraries in the project
Hardware compatibility issues with Android versions
Platform-specific specialties
Android mobiles
Android tablets
Android televisions and STBs
Android consoles
Android watches
Chapter 3: Different Android Development Tools
Android SDK
Android Development Tool
Android Virtual Device
Configuring AVD.
Android Debug Bridge
Using adb on an Android device
Dalvik Debug Monitor Server
Other tools
Eclipse
Hierarchy Viewer
Draw 9-Patch
ProGuard
Asset optimization tools
Full asset optimization
Creating sprites
Tools for testing
Creating a test case
Setting up your test fixture
Adding test preconditions
Adding test methods to verify an activity
Performance profiling tools
Android Studio
Android project view
Memory and CPU monitor
Cross-platform tools
Cocos2d-x
Unity3D
Unreal Engine
PhoneGap
Corona
Titanium
Chapter 4: Android Development Style and Standards in the Industry
The Android programming structure
Class formation
Call hierarchy
Game programming specifications
Gameplay programming
Graphics programming
Technical programming
Sound programming
Network programming
Game tool programming
Research and development programming
Technical design standards
Game analysis
Design pattern and flow diagram
Technical specification
Tools and other requirements
Resource analysis
Testing requirements
Scope analysis
Risk analysis
Change log
Game design standards
Game overview
Gameplay details
Game progression
Storyboard and game elements
Level design
Artificial intelligence
Art style
Technical reference
Other styles and standards
Different styles for different development engines
Different programming languages
Different work principles
Different target platforms
Industry best practices
Design standards
Programming standards
Testing standards
Chapter 5: Understanding the Game Loop and Frame Rate
Introduction to the game loop
User input
Game update
State update
Rendering frames.
Creating a sample game loop using the Android SDK
Game life cycle
Game update and user interface
Interrupt handling
General idea of a game state machine
The FPS system
Hardware dependency
Display or rendering
Memory load/unload operations
Heap memory
Stack memory
Register memory
ROM
Logical operations
Balance between performance and memory
Controlling FPS
Chapter 6: Improving Performance for 2D/3D Games
2D game development constraints
2D art assets
Sets of 2D art assets
Same asset set for multiple resolutions
Number of assets drawn on screen
Use of font files
2D rendering system
2D mapping
2D physics
Box2D
LiquidFun
Performance impact on games
2D collision detection
Rectangle collision
Rectangle and circle collision
Circle and circle collision
Performance comparison
3D game development constraints
Vertices and triangles
3D transformation matrix
3D object and polygon count
3D rendering system
3D mesh
Materials, shaders, and textures
Textures
Shaders
Materials
Collision detection
Primitive colliders
Mesh colliders
Ray casting
Concept of "world
Elements of the game world
Light sources in the game world
Cameras in the game world
The rendering pipeline in Android
The 2D rendering pipeline
The 3D rendering pipeline
Optimizing 2D assets
Size optimization
Data optimization
Process optimization
Optimizing 3D assets
Limiting the polygon count
Model optimization
Common game development mistakes
Use of non-optimized images
Use of full utility third-party libraries
Use of unmanaged networking connections
Using substandard programming
Taking a shortcut
2D/3D performance comparison
Different look and feel.
3D processing is way heavier than 2D processing
Device configuration
Processor
RAM
GPU
Display quality
Battery capacity
Chapter 7: Working with Shaders
Introduction to shaders
What is a shader?
Necessity of shaders
Scope of shaders
How shaders work
Types of shaders
Pixel shaders
Vertex shaders
Geometry shaders
Tessellation shaders
Android library shaders
Writing custom shaders
Shaders through OpenGL
Use of shaders in games
Shaders in a 2D game space
Shaders in a 3D game space
Chapter 8: Performance and Memory Optimization
Fields of optimization in Android games
Resource optimization
Art optimization
Sound optimization
Data file optimization
Design optimization
Game design optimization
Technical design optimization
Memory optimization
Don't create unnecessary objects during runtime
Use primitive data types as far as possible
Don't use unmanaged static objects
Don't create unnecessary classes or interfaces
Use the minimum possible abstraction
Keep a check on services
Optimize bitmaps
Release unnecessary memory blocks
Use external tools such as zipalign and ProGuard
Performance optimization
Using minimum objects possible per task
Using minimum floating points
Using fewer abstraction layers
Using enhanced loops wherever possible
Avoid getter/setters of variables for internal use
Use static final for constants
Using minimum possible inner classes
Relationship between performance and memory management
Memory management in Android
Shared application memory
Memory allocation and deallocation
Application memory distribution
Processing segments in Android
Application priority
Active process
Visible process
Active services
Background process
Void process.
Application services
Service life cycle
Resource processing
Drawable resources
Layout resources
Color resources
Menu resources
Tween animation resources
Other resources
Different memory segments
Importance of memory optimization
Optimizing overall performance
Choosing the base resolution
Defining the portability range
Program structure
Managing the database
Managing the network connection
Increasing the frame rate
Importance of performance optimization
Common optimization mistakes
Programming mistakes
Design mistakes
Wrong game data structure
Using game services incorrectly
Best optimization practices
Development optimization
Data structure model
Asset-using techniques
Art assets
Audio assets
Other assets
Handling cache data
Chapter 9: Testing Code and Debugging
Android AVDs
Name of the AVD
AVD resolution
AVD display size
Android version API level
Android target version
CPU architecture
RAM amount
Hardware input options
Other options
Extended AVD settings
Android DDMS
Connecting an Android device filesystem
Profiling methods
Thread information monitoring
Heap information monitoring
Tracking memory allocation
Monitoring and managing network traffic
Tracking log information using Logcat
Emulating device operations
Android device testing and debugging
Device testing
Prototype testing
Full or complete testing
Regression testing
Release testing or run testing
Device debugging
Use of breakpoints
Monitoring the memory footprint
Checking log messages
Dalvik message log
ART message log
Checking heap updates
Checking overall memory usage
Private RAM.
Proportional set size (PSS).
Notes:
Includes index.
Description based on online resource; title from PDF title page (ebrary, viewed March 7, 2017).
ISBN:
1-78588-666-5
OCLC:
957317970

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account